Teilen über


Vorbereiten von Linux für Cachevolumes mit einem Einzelknoten- oder 2-Knoten-Cluster (Vorschau)

In diesem Artikel wird beschrieben, wie Sie Linux mithilfe eines Einzelknoten- oder 2-Knoten-Clusters vorbereiten. Es wird davon ausgehen, dass Sie die Voraussetzungen dafür erfüllt haben.

Vorbereiten von Linux mit AKS, aktiviert durch Azure Arc

In diesem Abschnitt wird beschrieben, wie Sie Linux mit AKS aktiviert durch Azure Arc vorbereiten, wenn Sie ein Einzelknoten- oder 2-Knoten-Cluster ausführen.

  1. Installieren Sie Open Service Mesh (OSM) mit dem folgenden Befehl:

    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
    
  2. Deaktivieren Sie ACStor, indem Sie eine Datei namens config.json mit folgendem Inhalt erstellen:

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

Vorbereiten von Linux mit AKS Edge Essentials

In diesem Abschnitt wird beschrieben, wie Sie Linux mit AKS Edge Essentials vorbereiten, wenn Sie ein Einzelknoten- oder 2-Knoten-Cluster ausführen.

  1. Damit Edge Essentials Azure IoT Einsatz und Azure Container Storage, aktiviert durch Azure Arc, unterstützt müssen die Kubernetes-Hosts geändert werden, um mehr Arbeitsspeicher zu unterstützen. Sie können auch die vCPU- und Datenträgerbelegung zu diesem Zeitpunkt erhöhen, wenn Sie davon ausgehen, dass zusätzliche Ressourcen für Ihre Kubernetes-Verwendung erforderlich sind.

    Folgen Sie zunächst der Schrittanleitung hier. Der Schnellstart verwendet die Standardkonfiguration und sollte vermieden werden.

    Nach dem Schritt 1: Konfigurationsparameter für einzelne Computer finden Sie die Datei aksedge-config.json in Ihrem Arbeitsverzeichnis. Öffnen Sie diese Datei in Notepad oder einem anderen Text-Editor:

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

    Erhöhen Sie MemoryInMB auf mindestens 16384 und DataSizeInGB auf 40G. Legen Sie ServiceIPRangeSize auf 15 fest. Wenn Sie viele PODs ausführen möchten, können Sie auch CpuCount erhöhen. Zum Beispiel:

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

    Fahren Sie mit den verbleibenden Schritten fort, beginnend mit Erstellen eines einzelnen Computerclusters. Verbinden Sie anschließend Ihr AKS Edge Essentials-Clusters mit Arc.

  2. Überprüfen und installieren Sie den lokalen Pfad für den Speicher, wenn er noch nicht installiert ist. Überprüfen Sie, ob die Speicherklasse des lokalen Pfads bereits auf Ihrem Knoten verfügbar ist, indem Sie das folgende Cmdlet ausführen:

    kubectl get StorageClass
    

    Wenn die Speicherklasse des lokalen Pfads nicht verfügbar ist, führen Sie den folgenden Befehl aus:

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

    Hinweis

    Local-Path-Provisioner- und Busybox-Images werden von Microsoft nicht verwaltet und aus dem Rancher Labs-Repository abgerufen. Local-Path-Provisioner und BusyBox sind nur als Linux-Containerimage verfügbar.

    Wenn alles korrekt konfiguriert wurde, sollte Folgendes angezeigt werden:

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

    Wenn Sie über mehrere Datenträger verfügen und den Pfad umleiten möchten, gehen Sie wie folgt vor:

    kubectl edit configmap -n kube-system local-path-config
    
  3. Führen Sie den folgenden Befehl aus, um zu ermitteln, ob Sie fs.inotify.max_user_instances auf 1024 festlegen:

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

    Wenn nach der Ausführung des Befehls weniger als 1024 angezeigt wird, führen Sie den folgenden Befehl aus, um die maximale Anzahl von Dateien zu erhöhen:

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -Command "echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf && sudo sysctl -p"
    
  4. Installieren Sie Open Service Mesh (OSM) mit dem folgenden Befehl:

    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
    
  1. Deaktivieren Sie ACStor, indem Sie eine Datei namens config.json mit folgendem Inhalt erstellen:

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

Vorbereiten von Linux mit Ubuntu

In diesem Abschnitt wird beschrieben, wie Sie Linux mit Ubuntu vorbereiten, wenn Sie ein Einzelknoten- oder 2-Knoten-Cluster ausführen.

  1. Installieren Sie Open Service Mesh (OSM) mit dem folgenden Befehl:

    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
    
  2. Führen Sie den folgenden Befehl aus, um zu ermitteln, ob Sie fs.inotify.max_user_instances auf 1024 festlegen:

    sysctl fs.inotify.max_user_instances
    

    Wenn nach der Ausführung des Befehls weniger als 1024 angezeigt wird, führen Sie den folgenden Befehl aus, um die maximale Anzahl von Dateien zu erhöhen und die sysctl-Einstellungen erneut zu laden:

    echo 'fs.inotify.max_user_instances = 1024' | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
    
  1. Deaktivieren Sie ACStor, indem Sie eine Datei namens config.json mit folgendem Inhalt erstellen:

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

Nächste Schritte

Installieren von Azure Container Storage, aktiviert durch Azure Arc