Sdílet prostřednictvím


Příprava Linuxu pro svazky Edge pomocí clusteru s jedním uzlem nebo clusterem se dvěma uzly

Tento článek popisuje, jak připravit Linux pomocí clusteru s jedním uzlem nebo dvěma uzly a předpokládá, že jste splnili požadavky.

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

Tato část popisuje, jak připravit Linux s AKS povolenou službou Azure Arc, pokud spouštíte cluster s jedním uzlem nebo clusterem se dvěma uzly.

  1. Pomocí následujícího příkazu nainstalujte 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"
    

Příprava Linuxu pomocí AKS Edge Essentials

Tato část popisuje, jak připravit Linux pomocí AKS Edge Essentials, pokud spouštíte cluster s jedním uzlem nebo clusterem se dvěma uzly.

  1. Aby služba Edge Essentials podporovala operace Azure IoT a Službu Azure Container Storage povolenou službou Azure Arc, musí být hostitelé Kubernetes upraveni tak, aby podporovali více paměti. Pokud očekáváte, že pro vaše použití Kubernetes budete potřebovat další prostředky, můžete v tuto chvíli zvýšit přidělení virtuálních procesorů a disků.

    Začněte tím, že se tady seznámíte s návody. Rychlý start používá výchozí konfiguraci a měl by se vyhnout.

    Následující krok 1: Parametry konfigurace jednoho počítače, máte v pracovním adresáři soubor s názvem aksedge-config.json. Otevřete tento soubor v Poznámkovém bloku nebo jiném textovém editoru:

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

    Zvýšení MemoryInMB na alespoň 16384 a DataSizeInGB na 40G. Nastavte ServiceIPRangeSize na hodnotu 15. Pokud máte v úmyslu CpuCount spustit mnoho identifikátorů POD, můžete také zvýšit hodnotu. Příklad:

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

    Pokračujte zbývajícími kroky, počínaje vytvořením jednoho clusteru počítačů. Dále připojte cluster AKS Edge Essentials ke službě Arc.

  2. Zkontrolujte a nainstalujte úložiště zřizovacího modulu místní cesty, pokud ještě není nainstalované. Spuštěním následující rutiny zkontrolujte, jestli je na uzlu již dostupná třída úložiště místní cesty:

    kubectl get StorageClass
    

    Pokud třída úložiště local-path není k dispozici, spusťte následující příkaz:

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

    Poznámka:

    Image Local-Path-Provisioner a Busybox nejsou spravovány společností Microsoft a jsou staženy z úložiště Rancher Labs. Local-Path-Provisioner a BusyBox jsou k dispozici pouze jako image kontejneru Linuxu.

    Pokud je všechno správně nakonfigurované, měl by se zobrazit následující výstup:

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

    Pokud máte více disků a chcete cestu přesměrovat, použijte:

    kubectl edit configmap -n kube-system local-path-config
    
  3. Spuštěním následujícího příkazu určete, jestli je nastavená hodnota fs.inotify.max_user_instances 1024:

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "sysctl fs.inotify.max_user_instances
    

    Pokud tento příkaz spustíte, spustíte-li výstup menší než 1024, spuštěním následujícího příkazu zvyšte maximální počet souborů:

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf && sudo sysctl -p"
    
  4. Pomocí následujícího příkazu nainstalujte 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"
    

Příprava Linuxu s Ubuntu

Tato část popisuje, jak připravit Linux s Ubuntu, pokud spouštíte cluster s jedním uzlem nebo dvěma uzly.

  1. Pomocí následujícího příkazu nainstalujte 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"
    
  2. 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
    

Příprava Linuxu s jinými platformami

Dostupné možnosti platformy jsou produkční prostředí, která Společnost Microsoft ověřila. Tyto platformy nemusí být nutně jedinými prostředími, na kterých může azure Container Storage povolené službou Azure Arc běžet. Služba Azure Container Storage povolená službou Azure Arc může běžet na libovolném clusteru Kubernetes s podporou Arc, který splňuje požadavky na systém Kubernetes s podporou Azure Arc. Pokud používáte prostředí, které tu není uvedené, tady je několik návrhů, jak zvýšit pravděpodobnost úspěšné instalace:

  1. Spuštěním následujících příkazů zvyšte limity sledování uživatelů a instancí:

    echo fs.inotify.max_user_instances=8192 | sudo tee -a /etc/sysctl.conf
    echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
    
  2. Spuštěním následujících příkazů zvyšte limit popisovače souborů, aby se zlepšil výkon:

    echo fs.file-max = 100000 | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
    
  3. Spuštěním následujícího příkazu nainstalujte zřizovací nástroj místní cesty:

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

Další kroky

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