Qual é a diferença entre Kubectl Criar e Kubectl Aplicar?

Qual é a diferença entre Kubectl Criar e Kubectl Aplicar?
“Kubectl Aplicar” modifica apenas as propriedades especificadas no arquivo na fonte estável existente. É possível que o arquivo usado em "Aplicar" seja um arquivo de especificação incompleto. Apenas algumas características dos recursos são afetadas por "aplicar". Você pode "aplicar" um arquivo que apenas modifica uma anotação sem especificar nenhuma característica de recurso adicional. “Aplicar” fornece mais adaptabilidade e é uma abordagem preferida para atualizar objetos de produção: gera novos objetos a partir de arquivos de configuração se eles ainda não existir por várias fontes. O conjunto de operações "Kubectl Apply" é usado para construir ou alterar os serviços Kubernetes especificados em um arquivo de manifesto do prompt de comando de um terminal. O estado do recurso é definido no arquivo de manifesto e, em seguida, Kubectl se aplica é usado para colocá -lo em ação. Se escolhermos a opção Aplicar, Kubernetes lidará com tudo o que precisamos. Não precisamos ensinar ou lidar com cada fase individualmente. Esta é a técnica declarativa, na qual as modificações feitas em um objeto vivo são "mantidas", mesmo que outras alterações sejam feitas no objeto.

Kubectl Crie

"Kubectl Create" apaga os recursos antes de criá -los a partir do arquivo especificado. "Create" usa um arquivo inteiro. “Criar” trabalhos com base na propriedade de cada recurso. Por causa dos metadados ausentes, se você estiver usando o arquivo com a instrução Substituir, a instrução abortará. A abordagem imperativa inclui a escolha da criação. Isso implica que teremos que aconselhar o cliente Kubernetes para conduzir as tarefas necessárias. Como resultado, é semelhante a uma abordagem guiada pelo usuário. Nós nos referimos a Kubectl Criar como gerenciamento essencial. Você informa a API Kubernetes sobre o que você deseja construir usando este método. Kubectl Crie é a instrução que você está usando para criar um recurso Kubernetes a partir do prompt de comando. Este é um aplicativo necessário. Você receberá, porém, uma exceção se o recurso existir anteriormente. Vamos analisar os detalhes dos dois comandos Kubectl. Vamos começar com Kubectl Aplicar.

Implementação prática de Kubectl Aplicar

Vamos usar o Ubuntu 20.04 Sistema Linux para a implementação prática do comando kubectl Aplicar. Instalamos o Minikube para obter os serviços de Kubernetes no Ubuntu 20.04 Sistema Linux. Então, em primeiro lugar, temos que começar o Minikube em nosso Ubuntu 20.04 Sistema Linux.

$ minikube Iniciar

O processo levará algum tempo. Tão rapidamente quanto começa, você pode prosseguir. Para entender o conceito do comando kubectl, vamos criar a implantação. As implantações são uma coleção de muitas vagens idênticas, sem características distintivas. As implantações ajudam a garantir que uma ou mais cópias do seu aplicativo sejam acessíveis para atender às solicitações do usuário dessa maneira. Para criar um arquivo tendo. Extensão da YAML, execute o comando afixado.

$ Touch implantação.Yaml

O arquivo será criado no diretório inicial; seu nome pode variar conforme a preferência do usuário. Um arquivo de manifesto para uma implantação de Kubernetes com três cópias de uma imagem de contêiner nginx é mostrada. Nós o chamamos de "MyDeployment", como você pode verificar na linha 4 da imagem anexada.

Se você executar o comando abaixo, as informações deste arquivo de manifesto serão usadas para estabelecer uma implantação.

$ KUBECTL APLICAÇÃO -FIMENTAÇÃO.Yaml

A saída mostra que a implantação foi formada de maneira eficaz. Você obterá a seguinte saída se executar as seguintes instruções listadas:

$ KUBECTL Obtenha implantação

Você pode verificar a implantação recém-criada na imagem acima mencionada. Nós rotulamos essa implantação de "MyDeployment" e agora está operando três pods.

Implementação prática de Kubectl Criar

Para a implementação prática do comando Kubectl Create, vamos começar a criar uma implantação com Kubectl Criar. Você receberá o seguinte resultado anexado se executar o comando mostrado na imagem anexada.

A partir da saída acima, entenda que você terá uma exceção se tentar usar o Kubectl Criar em um recurso que já ocorre. Vamos tentar usar o Kubectl Criar para começar a criar um recurso que não ocorra. Nesse cenário, usaremos o nome "YourDeployment" para nomear nossa implantação de Kubernetes. Usaremos o seguinte comando para fazer a implantação:

$ kubectl Crie implantação YourDeployment --image = nginx

Se tudo correr bem, você terá a saída mostrada na imagem em anexo.

Vamos fazer algumas alterações na implantação inicial que fizemos: “Mydeployment”. A imagem mostra como fazer isso modificando o arquivo manifesto, “implantação.Yaml ”. Como visto na imagem anexada (linha nº 8), as réplicas foram aumentadas de 3 a 4.

Para alterar a implantação de 3 para 4 réplicas, execute o comando KUBECTL APLICE da seguinte forma:

$ KUBECTL APLICAÇÃO -FIMENTAÇÃO.Yaml

A implantação foi concluída, de acordo com a saída. Isso indica que uma modificação foi feita para uma implantação existente. Para validar que a implantação está realmente operando quatro pods, use o seguinte conjunto KUBECTL Get Deployment. Você conseguirá algo assim como resultado:

$ KUBECTL Obtenha implantação

Conclusão

Neste artigo, a dissimilaridade entre Kubectl se aplica e Kubectl Crie foi explicado em detalhes, juntamente com exemplos práticos. Kubectl Create só pode ser fundido para fazer um novo recurso declarativamente. Por outro lado, você pode usar o Kubectl para declarar um novo recurso Kubernetes para usar um arquivo de manifesto usando Kubectl Aplicar. Ao atualizar a configuração no arquivo de manifesto fornecido, você pode usar o Kubectl Aplicar para modificar um recurso existente. Espero que você não tenha nenhuma preocupação com relação a este guia.