Configurar um backend do Azure NetApp Files
Você pode configurar o Azure NetApp Files como o backend para Trident. Você pode anexar volumes NFS e SMB usando um backend do Azure NetApp Files. Trident também oferece suporte ao gerenciamento de credenciais usando identidades gerenciadas para clusters do Azure Kubernetes Services (AKS).
Detalhes do driver do Azure NetApp Files
Trident fornece os seguintes drivers de armazenamento Azure NetApp Files para se comunicar com o cluster. Os modos de acesso suportados são: ReadWriteOnce (RWO), ReadOnlyMany (ROX), ReadWriteMany (RWX), ReadWriteOncePod (RWOP).
| Driver | Protocolo | volumeMode | Modos de acesso suportados | Sistemas de arquivos suportados |
|---|---|---|---|---|
|
NFS SMB |
Sistema de arquivos |
RWO, ROX, RWX, RWOP |
|
Considerações
-
O serviço Azure NetApp Files não suporta volumes menores que 50 GiB. Trident cria automaticamente volumes de 50 GiB se um volume menor for solicitado.
-
Trident suporta volumes SMB montados em pods em execução apenas em nós Windows.
Identidades gerenciadas para AKS
Trident oferece suporte "identidades gerenciadas" para clusters do Azure Kubernetes Services. Para aproveitar o gerenciamento simplificado de credenciais oferecido pelas identidades gerenciadas, você deve ter:
-
Um cluster Kubernetes implantado usando AKS
-
Identidades gerenciadas configuradas no cluster kubernetes do AKS
-
Trident instalado que inclui o
cloudProviderpara especificar"Azure".Operador TridentPara instalar Trident usando o Trident operator, edite
tridentorchestrator_cr.yamlpara definircloudProviderpara"Azure". Por exemplo:apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullPolicy: IfNotPresent cloudProvider: "Azure"HelmO exemplo a seguir instala conjuntos Trident
cloudProviderno Azure usando a variável de ambiente$CP:helm install trident trident-operator-100.2506.0.tgz --create-namespace --namespace <trident-namespace> --set cloudProvider=$CP
<code>tridentctl</code>O exemplo a seguir instala Trident e define o
cloudProvidersinalizador paraAzure:tridentctl install --cloud-provider="Azure" -n trident
Identidade na nuvem para AKS
A identidade na nuvem permite que os pods do Kubernetes acessem recursos do Azure autenticando-se como uma workload identity em vez de fornecer credenciais explícitas do Azure.
Para aproveitar as vantagens da identidade na nuvem no Azure, você deve ter:
-
Um cluster Kubernetes implantado usando AKS
-
Identidade de carga de trabalho e oidc-issuer configurados no cluster Kubernetes do AKS
-
Trident instalado que inclui o
cloudProviderpara especificar"Azure"ecloudIdentityespecificando a identidade da carga de trabalhoOperador TridentPara instalar Trident usando o Trident operator, edite
tridentorchestrator_cr.yamlpara definircloudProviderpara"Azure"e definacloudIdentityparaazure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx.Por exemplo:
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullPolicy: IfNotPresent cloudProvider: "Azure" cloudIdentity: 'azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx' # EditHelmDefina os valores para as flags cloud-provider (CP) e cloud-identity (CI) usando as seguintes variáveis de ambiente:
export CP="Azure"
export CI="'azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx'"O exemplo a seguir instala Trident e define
cloudProviderpara Azure usando a variável de ambiente$CPe define ocloudIdentityusando a variável de ambiente$CI:helm install trident trident-operator-100.6.0.tgz --set cloudProvider=$CP --set cloudIdentity="$CI"
<code>tridentctl</code>Defina os valores para os parâmetros provedor de nuvem e identidade de nuvem usando as seguintes variáveis de ambiente:
export CP="Azure"
export CI="azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx"O exemplo a seguir instala Trident e define o
cloud-providersinalizador para$CP, ecloud-identitypara$CI:tridentctl install --cloud-provider=$CP --cloud-identity="$CI" -n trident