Sdílet prostřednictvím


Příprava Linuxu pomocí clusteru s více uzly

Tento článek popisuje, jak připravit Linux pomocí clusteru s více uzly a předpokládá, že splňujete požadavky.

Příprava Linuxu s podporou AKS službou Azure Arc

Pomocí následujících příkazů nainstalujte a nakonfigurujte Open Service Mesh (OSM):

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

Příprava Linuxu pomocí AKS Edge Essentials

Tato část popisuje, jak připravit Linux pomocí AKS Edge Essentials, pokud spouštíte cluster s více uzly.

  1. Na každém uzlu v clusteru nastavte počet obrovských stránek na 512 pomocí následujícího příkazu:

    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. Na každém uzlu v clusteru nainstalujte požadované NVME přes modul TCP pro jádro pomocí:

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

    Poznámka:

    Minimální podporovaná verze je 5.1. V tuto chvíli existují známé problémy s verzemi 6.4 a 6.2.

  3. Na každém uzlu v clusteru zvyšte maximální počet souborů pomocí následujícího příkazu:

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command 'echo -e "LimitNOFILE=1048576" | sudo tee -a /etc/systemd/system/containerd.service.d/override.conf'
    
  4. Pomocí následujících příkazů nainstalujte a nakonfigurujte Open Service Mesh (OSM):

    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. Vytvořte soubor s názvem config.json s následujícím obsahem:

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

    Poznámka:

    Umístění/cesta k tomuto souboru se později při instalaci rozšíření Cache Volumes Arc odkazuje.

Příprava Linuxu s Ubuntu

Tato část popisuje, jak připravit Linux s Ubuntu, pokud spustíte cluster s více uzly.

Pomocí následujícího příkazu nainstalujte a nakonfigurujte Open Service Mesh (OSM):

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

Pak v clusteru Kubernetes proveďte následující kroky:

Důležité

Pro každý uzel v clusteru Kubernetes musíte provést následující kroky.

  1. Spuštěním následujícího příkazu určete, jestli je nastavená hodnota fs.inotify.max_user_instances 1024:

    sysctl fs.inotify.max_user_instances
    

    Po spuštění tohoto příkazu, pokud výstup menší než 1024, spuštěním následujícího příkazu zvyšte maximální počet souborů a znovu načtěte nastavení sysctl :

    echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
    
  2. Nainstalujte požadovaný modul NVME přes protokol TCP pro jádro pomocí:

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

    Poznámka:

    Minimální podporovaná verze je 5.1. V tuto chvíli existují známé problémy s verzemi 6.4 a 6.2.

  3. Pomocí následujícího příkazu nastavte počet HugePages na 512:

    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. Restartujte K3s pomocí následujícího příkazu:

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

Další kroky

Instalace služby Azure Container Storage povolená službou Azure Arc