Preparare Linux per i volumi della cache usando un cluster a nodo singolo o a 2 nodi
Questo articolo descrive come preparare Linux usando un cluster a nodo singolo o a 2 nodi e presuppone che siano stati soddisfatti i prerequisiti.
Preparare Linux con il servizio Azure Kubernetes abilitato da Azure Arc
Questa sezione descrive come preparare Linux con il servizio Azure Kubernetes abilitato da Azure Arc se si esegue un cluster a nodo singolo o a 2 nodi.
Installare Open Service Mesh (OSM) usando i comandi seguenti:
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"
Disabilitare ACStor creando un file denominato config.json con il contenuto seguente:
{ "feature.diskStorageClass": "default", "acstorController.enabled": false }
Preparare Linux con Azure Kubernetes Edge Essentials
Questa sezione descrive come preparare Linux con AKS Edge Essentials se si esegue un cluster a nodo singolo o a due nodi.
Perché Edge Essentials possa supportare le operazioni IoT di Azure e l’Archiviazione contenitori di Azure abilitata da Azure Arc, gli host Kubernetes devono essere modificati in modo da supportare una quantità maggiore di memoria. A questo stadio è anche possibile aumentare le allocazioni di vCPU e disco se si prevede di richiedere risorse aggiuntive per i propri utilizzi di Kubernetes.
Per iniziare, seguire la guida pratica fornita qui. La guida di avvio rapido usa la configurazione predefinita, che è consigliabile evitare.
Seguendo il Passaggio 1: parametri di configurazione di un singolo computer, si dispone di un file nella directory di lavoro denominata aksedge-config.json. Aprire il file nel Blocco note o in un altro editor di testo:
"SchemaVersion": "1.11", "Version": "1.0", "DeploymentType": "SingleMachineCluster", "Init": { "ServiceIPRangeSize": 0 }, "Machines": [ { "LinuxNode": { "CpuCount": 4, "MemoryInMB": 4096, "DataSizeInGB": 10, } } ]
Aumentare
MemoryInMB
ad almeno 16384 eDataSizeInGB
a 40G. ImpostareServiceIPRangeSize
su 15. Se si prevede di eseguire molti POD, è possibile aumentare anche ilCpuCount
. Ad esempio:"Init": { "ServiceIPRangeSize": 15 }, "Machines": [ { "LinuxNode": { "CpuCount": 4, "MemoryInMB": 16384, "DataSizeInGB": 40, } } ]
Continuare con i passaggi rimanenti, a partire dalla creazione di un singolo cluster di computer. Quindi, connettere il cluster Edge Essentials del servizio Azure Kubernetes ad Arc.
Verificare la presenza dell'archiviazione del provisioner di percorso locale e installarla se non è già presente. Controllare se la classe di archiviazione local-path è già disponibile nel nodo eseguendo il cmdlet seguente:
kubectl get StorageClass
Se la classe di archiviazione local-path non è disponibile, eseguire il comando seguente:
kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/storage/local-path-provisioner/local-path-storage.yaml
Nota
Le immagini Local-Path-Provisioner e Busybox non sono gestite da Microsoft e vengono estratte dal repository Rancher Labs. Local-Path-Provisioner e BusyBox sono disponibili solo come immagine del contenitore Linux.
Se tutto è configurato correttamente, verrà visualizzato l'output seguente:
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE local-path (default) rancher.io/local-path Delete WaitForFirstConsumer false 21h
Se si dispone di più dischi e si desidera reindirizzare il percorso, usare:
kubectl edit configmap -n kube-system local-path-config
Eseguire il comando seguente per determinare se
fs.inotify.max_user_instances
sia impostato su 1024:Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "sysctl fs.inotify.max_user_instances
Se dopo aver eseguito questo comando viene restituito meno di 1024, eseguire il comando seguente per aumentare il numero massimo di file:
Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf && sudo sysctl -p"
Installare Open Service Mesh (OSM) usando il comando seguente:
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"
Disabilitare ACStor creando un file denominato config.json con il contenuto seguente:
{ "acstorController.enabled": false, "feature.diskStorageClass": "local-path" }
Preparare Linux con Ubuntu
Questa sezione descrive come preparare Linux con Ubuntu se si esegue un cluster a nodo singolo o a due nodi.
Installare Open Service Mesh (OSM) usando il comando seguente:
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"
Eseguire il comando seguente per determinare se
fs.inotify.max_user_instances
sia impostato su 1024:sysctl fs.inotify.max_user_instances
Se dopo aver eseguito questo comando viene restituito meno di 1024, eseguire il comando seguente per aumentare il numero massimo di file e ricaricare le impostazioni sysctl:
echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf sudo sysctl -p
Disabilitare ACStor creando un file denominato config.json con il contenuto seguente:
{ "acstorController.enabled": false, "feature.diskStorageClass": "local-path" }
Passaggi successivi
Installare Archiviazione di Container Azure abilitata da Azure Arc