Preparar o Linux para volumes de cache usando um cluster de nó único ou de dois nós
Este artigo descreve como preparar o Linux usando um cluster de nó único ou de dois nós e pressupõe que você tenha atendido os pré-requisitos.
Preparar o Linux com o AKS habilitado pelo Azure Arc
Esta seção descreve como preparar o Linux com o AKS habilitado pelo Azure Arc se você executar um cluster de nó único ou de dois nós.
Instale a OSM (Open Service Mesh) usando os seguintes comandos:
az k8s-extension create --resource-group "YOUR_RESOURCE_GROUP_NAME" --cluster-name "YOUR_CLUSTER_NAME" --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm \ --config "osm.osm.featureFlags.enableWASMStats=false" \ --config "osm.osm.enablePermissiveTrafficPolicy=false" \ --config "osm.osm.configResyncInterval=10s" \ --config "osm.osm.osmController.resource.requests.cpu=100m" \ --config "osm.osm.osmBootstrap.resource.requests.cpu=100m" \ --config "osm.osm.injector.resource.requests.cpu=100m"
Desabilite o ACStor criando um arquivo chamado config.json com o seguinte conteúdo:
{ "feature.diskStorageClass": "default", "acstorController.enabled": false }
Preparar o Linux com o AKS Edge Essentials
Esta seção descreve como preparar o Linux com AKS Edge Essentials se você operar um cluster de nó único ou de dois nós.
Para que o Edge Essentials dê suporte às Operações do Azure IoT e ao Armazenamento de contêineres do Azure habilitado pelo Azure Arc, os hosts do Kubernetes devem ser modificados para dar suporte a mais memória. Você também pode aumentar as alocações de vCPU e disco neste momento se prever a necessidade de recursos adicionais para usos do Kubernetes.
Comece seguindo o guia de instruções aqui. O início rápido usa a configuração padrão e deve ser evitado.
Seguindo a Etapa 1: parâmetros de configuração de computador único, você tem um arquivo em seu diretório de trabalho chamado aksedge-config.json. Abra este arquivo no Bloco de Notas ou em outro editor de texto:
"SchemaVersion": "1.11", "Version": "1.0", "DeploymentType": "SingleMachineCluster", "Init": { "ServiceIPRangeSize": 0 }, "Machines": [ { "LinuxNode": { "CpuCount": 4, "MemoryInMB": 4096, "DataSizeInGB": 10, } } ]
Aumente
MemoryInMB
para pelo menos 16384 eDataSizeInGB
para 40G. DefiniriaServiceIPRangeSize
para 15. Se você pretende executar muitos PODs, também pode aumentar oCpuCount
. Por exemplo:"Init": { "ServiceIPRangeSize": 15 }, "Machines": [ { "LinuxNode": { "CpuCount": 4, "MemoryInMB": 16384, "DataSizeInGB": 40, } } ]
Continue com as etapas restantes começando com criar um cluster de computador único. Em seguida, conecte seu cluster do AKS Edge Essentials ao Arc.
Verifique e instale o armazenamento do Provisionador de Caminho Local se ele ainda não estiver instalado. Verifique se a classe de armazenamento de caminho local já está disponível em seu nó executando o seguinte cmdlet:
kubectl get StorageClass
Se a classe de armazenamento de caminho local não estiver disponível, execute o seguinte comando:
kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/storage/local-path-provisioner/local-path-storage.yaml
Observação
As imagens de Provisionador de Caminho Local e Busybox não são mantidas pela Microsoft e são extraídas do repositório Rancher Labs. O Provisionador de Caminho Local e o BusyBox só estão disponíveis como uma imagem de contêiner do Linux.
Se tudo for configurado corretamente, você deverá vera saída a seguir:
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE local-path (default) rancher.io/local-path Delete WaitForFirstConsumer false 21h
Se você tiver vários discos e quiser redirecionar o caminho, use:
kubectl edit configmap -n kube-system local-path-config
Execute o seguinte comando para determinar se você definiu
fs.inotify.max_user_instances
como 1024:Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "sysctl fs.inotify.max_user_instances
Depois de executar esse comando, se a saída for menor que 1024, execute o seguinte comando para aumentar o número máximo de arquivos:
Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf && sudo sysctl -p"
Instale a OSM (Open Service Mesh) usando o seguinte comando:
az k8s-extension create --resource-group "YOUR_RESOURCE_GROUP_NAME" --cluster-name "YOUR_CLUSTER_NAME" --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm \ --config "osm.osm.featureFlags.enableWASMStats=false" \ --config "osm.osm.enablePermissiveTrafficPolicy=false" \ --config "osm.osm.configResyncInterval=10s" \ --config "osm.osm.osmController.resource.requests.cpu=100m" \ --config "osm.osm.osmBootstrap.resource.requests.cpu=100m" \ --config "osm.osm.injector.resource.requests.cpu=100m"
Desabilite o ACStor criando um arquivo chamado config.json com o seguinte conteúdo:
{ "acstorController.enabled": false, "feature.diskStorageClass": "local-path" }
Preparar o Linux com o Ubuntu
Esta seção descreve como preparar o Linux com Ubuntu se você operar um cluster de nó único ou de dois nós.
Instale a OSM (Open Service Mesh) usando o seguinte comando:
az k8s-extension create --resource-group "YOUR_RESOURCE_GROUP_NAME" --cluster-name "YOUR_CLUSTER_NAME" --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm \ --config "osm.osm.featureFlags.enableWASMStats=false" \ --config "osm.osm.enablePermissiveTrafficPolicy=false" \ --config "osm.osm.configResyncInterval=10s" \ --config "osm.osm.osmController.resource.requests.cpu=100m" \ --config "osm.osm.osmBootstrap.resource.requests.cpu=100m" \ --config "osm.osm.injector.resource.requests.cpu=100m"
Execute o seguinte comando para determinar se você definiu
fs.inotify.max_user_instances
como 1024:sysctl fs.inotify.max_user_instances
Depois de executar esse comando, se ele gerar menos de 1024, execute o seguinte comando para aumentar o número máximo de arquivos e recarregar as configurações de sysctl:
echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf sudo sysctl -p
Desabilite o ACStor criando um arquivo chamado config.json com o seguinte conteúdo:
{ "acstorController.enabled": false, "feature.diskStorageClass": "local-path" }
Próximas etapas
Instalar o Armazenamento de Contêineres do Azure habilitado pelo Azure Arc