Implementação de máquina única
Pode implementar o AKS Edge Essentials num único computador ou em vários computadores. Numa implementação do Kubernetes num único computador, o nó de controlo do Kubernetes e o nó de trabalho são executados no mesmo computador. Este artigo descreve como criar o nó de controlo do Kubernetes no seu computador numa rede privada.
Pré-requisitos
Configure o computador principal conforme descrito no artigo Configurar computador .
Passo 1: parâmetros de configuração de máquina única
Pode gerar os parâmetros necessários para criar um cluster de máquina única com o seguinte comando:
New-AksEdgeConfig -DeploymentType SingleMachineCluster -outFile .\aksedge-config.json | Out-Null
Este comando cria um ficheiro de configuração chamado aksedge-config.json que inclui a configuração necessária para criar um cluster de máquina única com um nó do Linux. O ficheiro é criado no seu diretório de trabalho atual. Veja os exemplos seguintes para obter mais opções para criar o ficheiro de configuração. Está disponível aqui uma descrição detalhada dos parâmetros de configuração.
Os parâmetros principais para a implementação de uma única máquina são:
DeploymentType
: este parâmetro define o tipo de implementação e é especificado comoSingleMachineCluster
.- A
Network.NetworkPlugin
predefinição éflannel
. Esta é a predefinição para um cluster K3S. Se estiver a utilizar um cluster K8S, altere o CNI paracalico
. - Pode definir os seguintes parâmetros de acordo com a configuração de implementação , conforme descrito aqui:
LinuxNode.CpuCount
,LinuxNode.MemoryInMB
,LinuxNode.DataSizeInGB
,WindowsNode.CpuCount
,WindowsNode.MemoryInMB
,Init.ServiceIPRangeSize
eNetwork.InternetDisabled
.
Passo 2: criar um cluster de máquina única
- Agora, pode executar o
New-AksEdgeDeployment
cmdlet para implementar um cluster do AKS Edge de máquina única com um único nó de plano de controlo do Linux:
New-AksEdgeDeployment -JsonConfigFilePath .\aksedge-config.json
Passo 3: validar o cluster
Confirme que a implementação foi bem-sucedida ao executar:
kubectl get nodes -o wide
kubectl get pods -A -o wide
A imagem seguinte mostra pods num cluster K3S:
Passo 4: Adicionar um nó de trabalho do Windows (opcional)
Atenção
Os nós de trabalho do Windows são uma funcionalidade experimental nesta versão. Estamos a trabalhar ativamente nesta funcionalidade.
Se quiser adicionar um nó do Windows a um cluster de máquina única do Linux existente, primeiro crie o ficheiro de configuração com o seguinte comando:
New-AksEdgeScaleConfig -ScaleType AddNode -NodeType Windows -outFile .\ScaleConfig.json | Out-Null
Isto cria o ficheiro de configuração ScaleConfig.json no diretório de trabalho atual. Também pode modificar os parâmetros do nó do Windows no ficheiro de configuração para especificar os recursos que têm de ser alocados ao nó do Windows. Com o ficheiro de configuração, pode executar o seguinte comando para adicionar o nó ao cluster de máquina única:
Add-AksEdgeNode -JsonConfigFilePath .\ScaleConfig.json
Opções de implementação de exemplo
Criar um objeto JSON com os parâmetros de configuração
Pode editar programaticamente o objeto JSON e transmiti-lo como uma cadeia:
$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)
Criar um cluster simples com o serviço NodePort
Pode criar um cluster simples sem IPs de serviço (ServiceIPRangeSize
definido como 0):
New-AksEdgeDeployment -JsonConfigString (New-AksEdgeConfig | ConvertTo-Json -Depth 4)
Alocar recursos aos nós
Para ligar ao Arc e implementar as suas aplicações com o GitOps, aloque quatro CPUs ou mais para o LinuxNode.CpuCount
(poder de processamento), 4 GB ou mais para LinuxNode.MemoryinMB
(RAM) e para atribuir um número superior a 0 ao ServiceIpRangeSize
. Aqui, alocamos 10 endereços IP para os seus serviços do 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
}
}
]
}
Nota
O AKS Edge Essentials aloca endereços IP do comutador interno para executar os seus serviços do Kubernetes, se tiver especificado um ServiceIPRangeSize
.
Também pode optar por transmitir os parâmetros como uma cadeia JSON, conforme descrito anteriormente:
$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)
Criar um cluster de cargas de trabalho mistas
Pode criar um cluster com nós do Linux e do Windows. Pode criar o ficheiro de configuração com o comando :
New-AksEdgeConfig -DeploymentType SingleMachineCluster -NodeType LinuxAndWindows -outFile .\aksedge-config.json | Out-Null
Assim que o ficheiro de configuração for criado, pode implementar o cluster com o seguinte comando:
New-AksEdgeDeployment -JsonConfigFilePath .\aksedge-config.json
Passos seguintes
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários