Partager via


Préparer Linux à l’aide d’un cluster à plusieurs nœuds

Cet article explique comment préparer Linux à l’aide d’un cluster à plusieurs nœuds et suppose que vous avez rempli les conditions préalables.

Préparer Linux avec AKS activé par Azure Arc

Installez et configurez Open Service Mesh (OSM) à l’aide des commandes suivantes :

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"

kubectl patch meshconfig osm-mesh-config -n "arc-osm-system" -p '{"spec":{"featureFlags":{"enableWASMStats": false }, "traffic":{"outboundPortExclusionList":[443,2379,2380], "inboundPortExclusionList":[443,2379,2380]}}}' --type=merge

Préparer Linux avec AKS Edge Essentials

Cette section explique comment préparer Linux avec AKS Edge Essentials si vous exécutez un cluster à plusieurs nœuds.

  1. Sur chaque nœud de votre cluster, définissez le nombre de HugePages sur 512 à l’aide de la commande suivante :

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command 'echo 512 | sudo tee /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages'
    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command 'echo "vm.nr_hugepages=512" | sudo tee /etc/sysctl.d/99-hugepages.conf'
    
  2. Sur chaque nœud de votre cluster, installez le module NVME sur TCP requis pour votre noyau en tirant parti de :

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command 'sudo apt install linux-modules-extra-`uname -r`'
    

    Remarque

    La version minimale de prise en charge est 5.1. À ce stade, il existe des problèmes connus avec la version 6.4 et la version 6.2.

  3. Sur chaque nœud de votre cluster, augmentez le nombre maximal de fichiers à l’aide de la commande suivante :

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command 'echo -e "LimitNOFILE=1048576" | sudo tee -a /etc/systemd/system/containerd.service.d/override.conf'
    
  4. Installez et configurez Open Service Mesh (OSM) à l’aide des commandes suivantes :

    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"
    
    kubectl patch meshconfig osm-mesh-config -n "arc-osm-system" -p '{"spec":{"featureFlags":{"enableWASMStats": false }, "traffic":{"outboundPortExclusionList":[443,2379,2380], "inboundPortExclusionList":[443,2379,2380]}}}' --type=merge
    
  1. Créez un fichier nommé config.json à l’aide du contenu suivant :

    {
        "acstor.capacityProvisioner.tempDiskMountPoint": /var
    }
    

    Remarque

    L’emplacement ou chemin d’accès de ce fichier est référencé ultérieurement lors de votre installation de l’extension Cache Volumes Arc.

Préparer Linux avec Ubuntu

Cette section explique comment préparer Linux avec Ubuntu si vous exécutez un cluster à plusieurs nœuds.

Installez et configurez Open Service Mesh (OSM) à l’aide de la commande suivante :

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
kubectl patch meshconfig osm-mesh-config -n "arc-osm-system" -p '{"spec":{"featureFlags":{"enableWASMStats": false }, "traffic":{"outboundPortExclusionList":[443,2379,2380], "inboundPortExclusionList":[443,2379,2380]}}}' --type=merge

Effectuez ensuite les étapes suivantes dans votre cluster Kubernetes :

Important

Vous devez effectuer les étapes suivantes pour chaque nœud de votre cluster Kubernetes.

  1. Exécutez la commande suivante pour déterminer si vous définissez fs.inotify.max_user_instances sur 1024 :

    sysctl fs.inotify.max_user_instances
    

    Après avoir exécuté cette commande, si elle génère moins de 1024, exécutez la commande suivante pour augmenter le nombre maximal de fichiers et recharger les paramètres sysctl :

    echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
    
  2. Installez le module NVME sur TCP requis pour votre noyau en utilisant :

    sudo apt install linux-modules-extra-`uname -r`
    

    Remarque

    La version minimale de prise en charge est 5.1. À ce stade, il existe des problèmes connus avec la version 6.4 et la version 6.2.

  3. Définissez le nombre de HugePages sur 512 en tirant parti de la commande suivante :

    HUGEPAGES_NR=512
    echo $HUGEPAGES_NR | sudo tee /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages
    echo "vm.nr_hugepages=$HUGEPAGES_NR" | sudo tee /etc/sysctl.d/99-hugepages.conf
    
  4. Redémarrez K3s en tirant parti de la commande suivante :

    sudo systemctl restart k3s || sudo systemctl restart k3s-agent
    

Étapes suivantes

Installer Stockage de conteneurs Azure activé par Azure Arc