Este guia fornece documentação para o Wickr Enterprise. Se você estiver usando o AWS Wickr, consulte o Guia de Administração do AWS Wickr ou o Guia do Usuário do AWS Wickr.
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Autoescalador de cluster Kubernetes (opcional)
O Kubernetes Cluster Autoscaler é um valor de configuração opcional para a instalação do Wickr Enterprise. Isso ajudará a escalar seus grupos de nós do Kubernetes no caso de aumento de tráfego ou outras restrições de recursos que possam levar a um desempenho ruim.
A instalação do Wickr Enterprise oferece suporte a três integrações de provedores de nuvem: AWS Google Cloud e Azure. Cada provedor de nuvem tem requisitos diferentes para essa integração. Siga as instruções abaixo para seu provedor de nuvem específico para ativar esse recurso.
AWS
Se você não usou o WickrEnterprise CDK para instalar seu ambiente Wickr AWS, precisará realizar algumas etapas adicionais para habilitar o autoescalador de cluster.
-
Adicione as seguintes tags aos seus grupos de nós. Isso permite que o autoescalador de cluster descubra automaticamente os nós apropriados.
-
k8s.io/cluster-autoscaler/clusterName = owned
onde clusterName é o nome do seu cluster Kubernetes -
k8s.io/cluster-autoscaler-enabled = true
-
-
Adicione uma conta de serviço do Kubernetes no namespace kube-system e associe-a a uma política do IAM que permite escalonamento automático e ações ec2. Para obter mais informações e instruções detalhadas, consulte Como configurar uma conta de serviço do Kubernetes para assumir uma função do IAM no Guia do usuário do Amazon EKS.
-
Você precisará usar o namespace 'kube-system' ao configurar a conta de serviço
-
A política a seguir pode ser usada para a Conta de Serviço:
-
Na interface replicada, ao configurar o autoescalador de cluster, selecione AWScomo seu provedor de nuvem e forneça o nome da conta de serviço que você criou acima para instruir o autoescalador de cluster a utilizar essa conta de serviço.
Nuvem do Google
É altamente recomendável usar os recursos integrados de escalonamento automático do GKE tanto para o piloto automático quanto para os clusters padrão. No entanto, se você quiser continuar com essa integração, os seguintes requisitos devem ser atendidos antes de continuar.
Requisitos:
-
Os grupos de instâncias gerenciadas (MIG) devem ser criados com o escopo de segurança, incluindo no mínimo “leitura/gravação” nos recursos do Compute Engine. Atualmente, isso não pode ser adicionado ao MIG posteriormente.
-
O cluster deve ter a Federação de Identidade de Carga de Trabalho ativada. Você pode habilitar isso em um cluster existente executando:
gcloud container clusters update ${CLUSTER_NAME} --workload-pool=${PROJECT_ID}.svc.id.goog
-
Uma conta de serviço do Google Cloud Platform (GCP) com acesso à função `roles/compute.instanceAdmin.v1`. Isso pode ser criado usando estas instruções:
# Create GCP Service Account gcloud iam service-accounts create k8s-cluster-autoscaler # Add role to GCP Service Account gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member "serviceAccount:k8s-cluster-autoscaler@${PROJECT_ID}.iam.gserviceaccount.com" \ --role "roles/compute.instanceAdmin.v1" # Link GCP Service Account to Kubernetes Service Account gcloud iam service-accounts add-iam-policy-binding k8s-cluster-autoscaler@${PROJECT_ID}.iam.gserviceaccount.com \ --role roles/iam.workloadIdentityUser \ --member "serviceAccount:${PROJECT_ID}.svc.id.goog[kube-system/cluster-autoscaler-gce-cluster-autoscaler]"
Azure
O Azure Kubernetes Service (AKS) fornece escalonamento automático de cluster integrado para a maioria das implantações e é altamente recomendável utilizar esses métodos para escalonamento automático de clusters. No entanto, se seus requisitos forem tais que esses métodos não funcionem, fornecemos uma integração do Kubernetes Cluster Autoscaler para o Azure Kubernetes Service. Para utilizar essa integração, você precisará reunir as seguintes informações e colocá-las na configuração do painel de administração do KOTS em Cluster Autoscaler depois de selecionar o Azure como seu provedor de nuvem.
Autenticação do
ID da assinatura: A ID da assinatura pode ser obtida por meio do portal do Azure seguindo a documentação oficial. Para obter mais informações, consulte Obter assinatura e inquilino IDs no portal do Azure
Os parâmetros a seguir podem ser obtidos criando um AD Service Principal usando o utilitário de linha de comando az.
az ad sp create-for-rbac —role="Contributor" —scopes="/subscriptions/subscription-id" —output json
ID do aplicativo:
Senha do cliente:
ID do inquilino:
Configuração do escalonador automático de cluster do Azure
Além dos requisitos de autenticação, os campos a seguir são necessários para o funcionamento adequado do autoescalador do cluster. Os comandos para obter essas informações foram fornecidos por conveniência, no entanto, eles podem exigir algumas modificações, dependendo da configuração específica do AKS.
Grupo de Recursos de Nó Gerenciado do Azure: Esse valor é o Grupo de Recursos Gerenciados criado pelo Azure quando você estabeleceu o Cluster AKS e não o Grupo de Recursos que você definiu. Para obter esse valor, você precisa do CLUSTER_NAME e RESOURCE_GROUP de quando você criou o cluster. Depois de ter esses valores, você pode obtê-los executando:
az aks show —resource-group ${RESOURCE_GROUP} —name ${CLUSTER_NAME} —query nodeResourceGroup -o tsv
Nome do VMSS do Application Node Pool: Esse é o nome do Virtual Machine Scaling Set (VMSS) associado ao seu AKS Nodepool para o aplicativo Wickr. Esse é o recurso que será ampliado ou reduzido com base nas necessidades do seu cluster. Para obter esse valor, você pode executar o seguinte comando az:
CLUSTER_NODEPOOL_NAME="(Your-NodePool-Name)" CLUSTER_RESOURCE_GROUP="(Your-Managed-Node-Resource-Group-As-Defined-Above>)" az vmss list -g ${CLUSTER_RESOURCE_GROUP} --query '[?tags."aks-managed-poolName"==`'''${CLUSTER_NODEPOOL_NAME}'''`].{VMSS_name:name}' -o tsv
ACalling Nome do VMSS do Node Pool (opcional): Esse é o nome do VMSS associado à sua chamada Nodepool, se você tiver um. Para obter esse valor, você pode executar uma versão modificada do comando para Application Node Pool VMSS Name trocando o valor CLUSTER_NODEPOOL_NAME pelo nome do nodepool de sua chamada nodepool.