Delen via


Implementatie met één machine

U kunt AKS Edge Essentials implementeren op één computer of op meerdere computers. In een Kubernetes-implementatie met één machine worden zowel het Kubernetes-besturingsknooppunt als het werkknooppunt op dezelfde computer uitgevoerd. In dit artikel wordt beschreven hoe u het Kubernetes-besturingsknooppunt maakt op uw computer in een particulier netwerk.

Vereisten

Stel uw primaire machine in zoals beschreven in het artikel Machine instellen .

Stap 1: configuratieparameters voor één machine

U kunt de parameters genereren die u nodig hebt om een cluster met één machine te maken met behulp van de volgende opdracht:

New-AksEdgeConfig -DeploymentType SingleMachineCluster -outFile .\aksedge-config.json | Out-Null

Met deze opdracht maakt u een configuratiebestand met de naam aksedge-config.json dat de configuratie bevat die nodig is voor het maken van een cluster met één machine met een Linux-knooppunt. Het bestand wordt gemaakt in de huidige werkmap. Raadpleeg de volgende voorbeelden voor meer opties voor het maken van het configuratiebestand. Hier vindt u een gedetailleerde beschrijving van de configuratieparameters.

De belangrijkste parameters voor implementatie van één machine zijn:

  • DeploymentType: deze parameter definieert het implementatietype en wordt opgegeven als SingleMachineCluster.
  • De Network.NetworkPlugin standaardwaarde is flannel. Dit is de standaardinstelling voor een K3S-cluster. Als u een K8S-cluster gebruikt, wijzigt u de CNI in calico.
  • U kunt de volgende parameters instellen op basis van uw implementatieconfiguratie , zoals hier wordt beschreven: LinuxNode.CpuCount, LinuxNode.MemoryInMB, LinuxNode.DataSizeInGB, WindowsNode.CpuCount, WindowsNode.MemoryInMB, Init.ServiceIPRangeSizeen Network.InternetDisabled.

Stap 2: een cluster met één machine maken

  1. U kunt nu de New-AksEdgeDeployment cmdlet uitvoeren om een AKS Edge-cluster met één machine te implementeren met één Linux-besturingsvlakknooppunt:
New-AksEdgeDeployment -JsonConfigFilePath .\aksedge-config.json

Stap 3: uw cluster valideren

Controleer of de implementatie is geslaagd door het volgende uit te voeren:

kubectl get nodes -o wide
kubectl get pods -A -o wide

In de volgende afbeelding ziet u pods in een K3S-cluster:

Schermopname van alle pods die worden uitgevoerd.

Stap 4: Een Windows-werkknooppunt toevoegen (optioneel)

Waarschuwing

Windows-werkknooppunten is een experimentele functie in deze release. We werken actief aan deze functie.

Als u een Windows-knooppunt wilt toevoegen aan een bestaand Linux-cluster met één machine, maakt u eerst het configuratiebestand met behulp van de volgende opdracht:

New-AksEdgeScaleConfig -ScaleType AddNode -NodeType Windows -outFile .\ScaleConfig.json | Out-Null

Hiermee maakt u het configuratiebestand ScaleConfig.json in de huidige werkmap. U kunt ook de Windows-knooppuntparameters in het configuratiebestand wijzigen om de resources op te geven die moeten worden toegewezen aan het Windows-knooppunt. Met het configuratiebestand kunt u de volgende opdracht uitvoeren om het knooppunt het cluster met één machine toe te voegen:

Add-AksEdgeNode -JsonConfigFilePath .\ScaleConfig.json

Voorbeeld van implementatieopties

Een JSON-object maken met de configuratieparameters

U kunt het JSON-object programmatisch bewerken en doorgeven als een tekenreeks:

$jsonObj = New-AksEdgeConfig -DeploymentType SingleMachineCluster
$jsonObj.User.AcceptEula = $true
$jsonObj.User.AcceptOptionalTelemetry = $true
$jsonObj.Init.ServiceIpRangeSize = 10
$machine = $jsonObj.Machines[0]
$machine.LinuxNode.CpuCount = 4
$machine.LinuxNode.MemoryInMB = 4096

New-AksEdgeDeployment -JsonConfigString ($jsonObj | ConvertTo-Json -Depth 4)

Een eenvoudig cluster maken met de NodePort-service

U kunt een eenvoudig cluster maken zonder service-IP's (ServiceIPRangeSize ingesteld op 0):

New-AksEdgeDeployment -JsonConfigString (New-AksEdgeConfig | ConvertTo-Json -Depth 4)

Resources toewijzen aan uw knooppunten

Als u verbinding wilt maken met Arc en uw apps wilt implementeren met GitOps, wijst u vier CPU's of meer toe voor de LinuxNode.CpuCount (verwerkingskracht), 4 GB of meer voor LinuxNode.MemoryinMB (RAM) en wijst u een getal groter dan 0 toe aan de ServiceIpRangeSize. Hier wijzen we 10 IP-adressen toe voor uw Kubernetes-services:

{
  "SchemaVersion": "1.5",
  "Version": "1.0",
  "DeploymentType": "SingleMachineCluster",
  "Init": {
    "ServiceIPRangeSize": 10
  },
  "Network": {
      "NetworkPlugin": "flannel"
  },
  "User": {
      "AcceptEula": true,
      "AcceptOptionalTelemetry": true
  },
  "Machines": [
       {
         "LinuxNode": {
              "CpuCount": 4,
              "MemoryInMB": 4096
          }
       }
   ]
}

Notitie

AKS Edge Essentials wijst IP-adressen van uw interne switch toe om uw Kubernetes-services uit te voeren als u een ServiceIPRangeSizehebt opgegeven.

U kunt er ook voor kiezen om de parameters door te geven als een JSON-tekenreeks, zoals eerder is beschreven:

$jsonObj = New-AksEdgeConfig -DeploymentType SingleMachineCluster
$jsonObj.User.AcceptEula = $true
$jsonObj.User.AcceptOptionalTelemetry = $true
$jsonObj.Init.ServiceIpRangeSize = 10
$machine = $jsonObj.Machines[0]
$machine.LinuxNode.CpuCount = 4
$machine.LinuxNode.MemoryInMB = 4096

New-AksEdgeDeployment -JsonConfigString ($jsonObj | ConvertTo-Json -Depth 4)

Een cluster met gemengde workloads maken

U kunt een cluster maken met zowel Linux- als Windows-knooppunten. U kunt het configuratiebestand maken met de opdracht :

New-AksEdgeConfig -DeploymentType SingleMachineCluster -NodeType LinuxAndWindows -outFile .\aksedge-config.json | Out-Null

Zodra het configuratiebestand is gemaakt, kunt u het cluster implementeren met behulp van de volgende opdracht:

New-AksEdgeDeployment -JsonConfigFilePath .\aksedge-config.json

Volgende stappen