Partager via


Préparer Linux pour les volumes de cache à l’aide d’un cluster à nœud unique ou à 2 nœuds

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

Préparer Linux avec AKS activé par Azure Arc

Cette section explique comment préparer Linux avec AKS activé par Azure Arc si vous exécutez un cluster à nœud unique ou à 2 nœuds.

  1. Installez 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"
    
  2. Désactivez ACStor en créant un fichier nommé config.json avec le contenu suivant :

    {
      "feature.diskStorageClass": "default",
      "acstorController.enabled": false
    }
    

Préparer Linux avec AKS Edge Essentials

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

  1. Pour qu’Edge Essentials prenne en charge Opérations Azure IoT et Stockage de conteneurs Azure activé par Azure Arc, les hôtes Kubernetes doivent être modifiés afin de prendre en charge davantage de mémoire. Vous pouvez également augmenter les allocations de processeurs virtuels et de disques pour l’instant si vous prévoyez d’exiger des ressources supplémentaires pour vos utilisations Kubernetes.

    Commencez par suivre le guide pratique ici. Le démarrage rapide utilise la configuration par défaut et doit être évité.

    Après Étape 1 : paramètres de configuration d’ordinateur unique, vous disposez d’un fichier dans votre répertoire de travail appelé aksedge-config.json. Ouvrez ce fichier dans Bloc-notes ou dans un autre éditeur de texte :

    "SchemaVersion": "1.11",
    "Version": "1.0",
    "DeploymentType": "SingleMachineCluster",
    "Init": {
        "ServiceIPRangeSize": 0
    },
    "Machines": [
    {
        "LinuxNode": {
            "CpuCount": 4,
            "MemoryInMB": 4096,
            "DataSizeInGB": 10,
        }
    }
    ]
    

    Augmentez MemoryInMB à au moins 16384 et DataSizeInGB à 40G. Définissez ServiceIPRangeSize sur 15. Si vous envisagez d’exécuter de nombreux POD, vous pouvez également augmenter CpuCount. Par exemple :

    "Init": {
        "ServiceIPRangeSize": 15
       },
    "Machines": [
    {
        "LinuxNode": {
            "CpuCount": 4,
            "MemoryInMB": 16384,
            "DataSizeInGB": 40,
        }
    }
    ]
    

    Continuez avec les étapes restantes en commençant par créer un seul cluster d’ordinateur. Ensuite, connectez votre cluster AKS Edge Essentials à Arc.

  2. Recherchez et installez le stockage Approvisionneur de chemins d’accès local s’il n’est pas déjà installé. Vérifiez si la classe de stockage de chemin d’accès local est déjà disponible sur votre nœud en exécutant la cmdlet suivante :

    kubectl get StorageClass
    

    Si la classe de stockage de chemin d’accès local n’est pas disponible, exécutez la commande suivante :

    kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/storage/local-path-provisioner/local-path-storage.yaml
    

    Remarque

    Les images Local-Path-Provisioner et Busybox ne sont pas conservées par Microsoft et sont extraites du référentiel Rancher Labs. Local-Path-Provisioner et BusyBox sont disponibles uniquement en tant qu’image conteneur Linux.

    Si tout est bien configuré, la sortie suivante doit apparaître :

    NAME                   PROVISIONER             RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    local-path (default)   rancher.io/local-path   Delete          WaitForFirstConsumer   false                  21h
    

    Si vous avez plusieurs disques et que vous souhaitez rediriger le chemin d’accès, utilisez :

    kubectl edit configmap -n kube-system local-path-config
    
  3. Exécutez la commande suivante pour déterminer si vous définissez fs.inotify.max_user_instances sur 1024 :

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "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 :

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf && sudo sysctl -p"
    
  4. Installez 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 \
    --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"
    
  1. Désactivez ACStor en créant un fichier nommé config.json avec le contenu suivant :

    {
      "acstorController.enabled": false,
      "feature.diskStorageClass": "local-path"
    }
    

Préparer Linux avec Ubuntu

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

  1. Installez 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 \
    --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"
    
  2. 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
    
  1. Désactivez ACStor en créant un fichier nommé config.json avec le contenu suivant :

    {
      "acstorController.enabled": false,
      "feature.diskStorageClass": "local-path"
    }
    

Étapes suivantes

Installer Stockage de conteneurs Azure activé par Azure Arc