Implementatie van één machine
U kunt AKS Edge Essentials implementeren op één computer of op meerdere computers. In één kubernetes-implementatie 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 De computer instellen.
Stap 1: configuratieparameters voor één machine
U kunt de parameters genereren die u nodig hebt om één computercluster 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 computer met een Linux-knooppunt. Het bestand wordt gemaakt in uw huidige werkmap. Zie de volgende voorbeelden voor meer opties voor het maken van het configuratiebestand.
Zie JSON-implementatieconfiguratie voor een gedetailleerde beschrijving van de configuratieparameters.
De belangrijkste parameters voor implementatie van één machine zijn:
DeploymentType
: Deze parameter definieert het implementatietype en wordt opgegeven alsSingleMachineCluster
.- De
Network.NetworkPlugin
standaardwaarde isflannel
. Dit is de standaardwaarde voor een K3S-cluster. Als u een K8S-cluster gebruikt, wijzigt u de CNI incalico
. - U kunt de volgende parameters instellen op basis van uw implementatieconfiguratie, zoals hier wordt beschreven:
LinuxNode.CpuCount
, ,LinuxNode.DataSizeInGB
LinuxNode.MemoryInMB
,WindowsNode.CpuCount
,WindowsNode.MemoryInMB
, enInit.ServiceIPRangeSize
Network.InternetDisabled
.
Stap 2: één machinecluster maken
- 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
Belangrijk
De Kubernetes pod cidr
is 10.42.0.0/16
voor K3's en 10.244.0.0/24
voor K8s. De Kubernetes service cidr
is 10.43.0.0/16
voor K3's en 10.96.0.0/12
voor K8s.
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:
Stap 4: Een Windows-werkknooppunt toevoegen (optioneel)
Let op
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 slechts één computer, 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 toe te voegen aan het cluster met één computer:
Add-AksEdgeNode -JsonConfigFilePath .\ScaleConfig.json
Voorbeeldimplementatieopties
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)
Tip
Zie JSON-implementatieconfiguratie voor alle beschikbare opties, inclusief netwerkinstellingen zoals proxyinstellingen.
Een eenvoudig cluster maken met NodePort-service
U kunt een eenvoudig cluster maken zonder service-IP-adressen (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 ServiceIPRangeSize
.
U kunt er ook voor kiezen om de parameters als een JSON-tekenreeks door te geven, 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 werkbelasting maken
U kunt een cluster maken met linux- en Windows-knooppunten. U kunt het configuratiebestand maken met behulp van de opdracht:
New-AksEdgeConfig -DeploymentType SingleMachineCluster -NodeType LinuxAndWindows -outFile .\aksedge-config.json | Out-Null
Zodra het configuratiebestand is gemaakt, kunt u uw cluster implementeren met behulp van de volgende opdracht:
New-AksEdgeDeployment -JsonConfigFilePath .\aksedge-config.json