Déploiement d’une seule machine
Vous pouvez déployer AKS Edge Essentials sur une seule machine ou sur plusieurs ordinateurs. Dans un déploiement Kubernetes sur une seule machine, le nœud de contrôle Kubernetes et le nœud Worker s’exécutent sur la même machine. Cet article explique comment créer le nœud de contrôle Kubernetes sur votre machine sur un réseau privé.
Prérequis
Configurez votre ordinateur principal comme décrit dans Configurer l’ordinateur.
Étape 1 : paramètres de configuration d’un ordinateur unique
Vous pouvez générer les paramètres dont vous avez besoin pour créer un seul cluster d’ordinateurs à l’aide de la commande suivante :
New-AksEdgeConfig -DeploymentType SingleMachineCluster -outFile .\aksedge-config.json | Out-Null
Cette commande crée un fichier de configuration appelé aksedge-config.json qui inclut la configuration nécessaire pour créer un cluster à ordinateur unique avec un nœud Linux. Le fichier est créé dans votre répertoire de travail actuel. Pour plus d’options pour créer le fichier de configuration, consultez les exemples suivants.
Consultez la configuration JSON de déploiement pour obtenir une description détaillée des paramètres de configuration.
Les paramètres clés pour le déploiement d’une seule machine sont les suivants :
DeploymentType
: ce paramètre définit le type de déploiement et est spécifié en tant queSingleMachineCluster
.- La
Network.NetworkPlugin
valeur par défaut estflannel
. Il s’agit de la valeur par défaut d’un cluster K3S. Si vous utilisez un cluster K8S, remplacez le CNIcalico
par . - Vous pouvez définir les paramètres suivants en fonction de votre configuration de déploiement comme décrit ici :
LinuxNode.CpuCount
, ,LinuxNode.MemoryInMB
,LinuxNode.DataSizeInGB
,WindowsNode.CpuCount
,WindowsNode.MemoryInMB
,Init.ServiceIPRangeSize
, etNetwork.InternetDisabled
.
Étape 2 : créer un seul cluster d’ordinateurs
- Vous pouvez maintenant exécuter l’applet
New-AksEdgeDeployment
de commande pour déployer un cluster AKS Edge à machine unique avec un seul nœud de plan de contrôle Linux :
New-AksEdgeDeployment -JsonConfigFilePath .\aksedge-config.json
Important
Kubernetes pod cidr
est 10.42.0.0/16
destiné aux K3s et 10.244.0.0/24
aux K8s. Kubernetes service cidr
est 10.43.0.0/16
destiné aux K3s et 10.96.0.0/12
aux K8s.
Étape 3 : valider votre cluster
Vérifiez que le déploiement a réussi en exécutant :
kubectl get nodes -o wide
kubectl get pods -A -o wide
L’image suivante montre les pods sur un cluster K3S :
Étape 4 : Ajouter un nœud Worker Windows (facultatif)
Attention
Les nœuds Worker Windows sont une fonctionnalité expérimentale de cette version. Nous travaillons activement sur cette fonctionnalité.
Si vous souhaitez ajouter un nœud Windows à un seul cluster d’ordinateurs Linux existant, commencez par créer le fichier de configuration à l’aide de la commande suivante :
New-AksEdgeScaleConfig -ScaleType AddNode -NodeType Windows -outFile .\ScaleConfig.json | Out-Null
Cela crée le fichier de configuration ScaleConfig.json dans le répertoire de travail actuel. Vous pouvez également modifier les paramètres de nœud Windows dans le fichier de configuration pour spécifier les ressources qui doivent être allouées au nœud Windows. Avec le fichier de configuration, vous pouvez exécuter la commande suivante pour ajouter le nœud au cluster d’ordinateur unique :
Add-AksEdgeNode -JsonConfigFilePath .\ScaleConfig.json
Exemples d’options de déploiement
Créer un objet JSON avec les paramètres de configuration
Vous pouvez modifier par programmation l’objet JSON et le transmettre en tant que chaîne :
$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)
Conseil
Consultez la configuration JSON de déploiement pour toutes les options disponibles, notamment les paramètres réseau, tels que les paramètres de proxy.
Créer un cluster simple avec le service NodePort
Vous pouvez créer un cluster simple sans adresses IP de service (ServiceIPRangeSize
définie sur 0) :
New-AksEdgeDeployment -JsonConfigString (New-AksEdgeConfig | ConvertTo-Json -Depth 4)
Allouer des ressources à vos nœuds
Pour vous connecter à Arc et déployer vos applications avec GitOps, allouez quatre processeurs ou plus pour la (puissance de LinuxNode.CpuCount
traitement), 4 Go ou plus pour LinuxNode.MemoryinMB
(RAM) et attribuez un nombre supérieur à 0 au ServiceIpRangeSize
. Ici, nous allouons 10 adresses IP pour vos services Kubernetes :
{
"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
}
}
]
}
Remarque
AKS Edge Essentials alloue des adresses IP à partir de votre commutateur interne pour exécuter vos services Kubernetes si vous avez spécifié un ServiceIPRangeSize
.
Vous pouvez également choisir de passer les paramètres en tant que chaîne JSON, comme décrit précédemment :
$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)
Créer un cluster de charge de travail mixte
Vous pouvez créer un cluster avec des nœuds Linux et Windows. Vous pouvez créer le fichier de configuration à l’aide de la commande :
New-AksEdgeConfig -DeploymentType SingleMachineCluster -NodeType LinuxAndWindows -outFile .\aksedge-config.json | Out-Null
Une fois le fichier de configuration créé, vous pouvez déployer votre cluster à l’aide de la commande suivante :
New-AksEdgeDeployment -JsonConfigFilePath .\aksedge-config.json