Índice
Acorn é uma nova estrutura de implantação de software para Kubernetes lançada pelos fundadores do Rancher. É uma estrutura de fornecimento aberto, fácil, leve e transportável para implantar e dimensionar microsserviços no Kubernetes.
Na última e última parte da coleção da Acorn, vamos descobrir como transferir propósitos operando em um ambiente de melhoria de área para um ambiente de fabricação operando na nuvem dos provedores de rede da Amazon .
Etapa 1: Depuração interativa de aplicativos Acorn na configuração do desenvolvedor
Supondo que você tenha adotado o tutorial final, é melhor já ter implantado o software Azure vote Acorn no Minikube.
Vamos alterar o aplicativo enquanto ele ainda está funcionando sem a necessidade de reconstruir as imagens e substituir as tags na implantação do Kubernetes. A Acorn facilita a iteração por meio dos ajustes de código e configuração sem a necessidade de observar o fluxo de trabalho padrão do Docker e do Kubernetes.
Primeiro, implante a aplicação no Minikube operando o arquivo sob Acorn doazure-vote
listing:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
containers: { “azure-vote-back”: { picture: “mcr.microsoft.com/oss/bitnami/redis:6.0.8” ports: { expose: “azure-vote-back:6379/tcp” } env: { “ALLOW_EMPTY_PASSWORD”: “sure” } } “azure-vote-front”: { construct: “.” ports: { publish: “80/http” } env: { “REDIS”: “azure-vote-back” } } } |
A -i
troca executa o Acorn em um modo iterativo útil em melhorias e testes.
Acessando o IP do Minikube, o melhor é ver o software Azure Vote.
Abra outra janela do terminal e modifique o arquivo config_file.cfg
para trocar os gatos e cães com os quadrinhos da DC e da Marvel.
# UI Configurations TITLE = ‘Comedian Voting App’ VOTE1VALUE = ‘DC’ VOTE2VALUE = ‘Marvel’ SHOWHOST = ‘false’ |
Agora, entre em contato com o Acornfile
para pressionar o fluxo de trabalho de construção e implantação.
Se você atualizar o navegador, poderá ver a cédula atualizada. Isso foi alcançado sem reconstruir as imagens do contêiner e atualizar a implantação do Kubernetes.
Etapa 2: organizar a configuração de fabricação na AWS
Para manobrar a aplicação na nuvem, precisamos de um cluster EKS e um registro de imagem na AWS. O registro de imagem é configurado dentro do Amazon Elastic Container Registry.
Execute o comando abaixo para iniciar um cluster EKS de três nós na área de Mumbai (ap-south1).
eksctl create cluster —title acorn–demo–eks —area ap–south–1 —model 1.22 —nodegroup–title ng–staff —node–kind t3.medium —nodes 3 —nodes–min 3 —nodes–max 6 —node–ami–household Ubuntu2004 —set–kubeconfig–context=true |
Configure o controlador do Ingress baseado principalmente no Nginx, que é um pré-requisito para o Acorn.
kubectl apply –f https://uncooked.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.3.0/deploy/static/supplier/aws/deploy.yaml |
Vamos configurar o Acorn no cluster EKS.
acorn set up —acorn–dns enabled —ingress–class–title nginx |
A próxima etapa é criar o repositório para armazenar as imagens do contêiner do software Acorn. Gostaríamos de dois repositórios para as partes de back-end e front-end do aplicativo.
aws ecr create–repository —repository–title comedian–frontend —area ap–south–1 —no–cli–pager —picture–scanning–configuration scanOnPush=true |
aws ecr create–repository —repository–title comedian–backend —area ap–south–1 —no–cli–pager —picture–scanning–configuration scanOnPush=true |
Etapa 3: enviar as imagens e implantar o software
Com a infraestrutura instalada, vamos avançar e enviar as imagens para o ECR.
Vamos criar um Acornfile para o software front-end de internet personalizado.
containers: { “comic-frontend”: { construct: “.” ports: { publish: “80/http” } } } |
Antes de podermos criar, marcar e enviar a imagem, vamos fazer login no ECR da Acorn.
aws ecr get–login–password —area ap–south–1 | acorn login —username AWS —password–stdin ACCOUNTID.dkr.ecr.REGION.amazonaws.com |
Substitua o ID e a área da conta da AWS principalmente com base em sua configuração. Acorn agora pode enviar e extrair fotos do ECR.
É hora de construir, marcar e enviar as imagens para o Amazon ECR.
acorn construct –t ACCOUNTID.dkr.ecr.REGION.amazonaws.com/comedian–frontend:v1 —push —file ./Acornfile.comedian–frontend . |
Como a imagem do contêiner de back-end é pré-construída, basta marcá-la e enviá-la.
acorn pull mcr.microsoft.com/oss/bitnami/redis:6.0.8 |
acorn tag mcr.microsoft.com/oss/bitnami/redis:6.0.8 ACCOUNTID.dkr.ecr.REGION.amazonaws.com/comedian–backend:v1 |
acorn push ACCOUNTID.dkr.ecr.REGION.amazonaws.com/comedian–backend:v1 |
Confirme se cada imagem foi enviada corretamente.
Por fim, crie um novo Acornfile.eks
com o conteúdo abaixo para executar o aplicativo na fabricação:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
containers: { “comic-backend”: { picture: “ACCOUNTID.dkr.ecr.REGION.amazonaws.com/comic-backend:v1” ports: { expose: “comic-backend:6379/tcp” } env: { “ALLOW_EMPTY_PASSWORD”: “sure” } } “comic-frontend”: { picture: “ACCOUNTID.dkr.ecr.REGION.amazonaws.com/comic-frontend:v1” ports: { publish: “80/http” } env: { “REDIS”: “comic-backend” } dependsOn: [ “comic-backend” ] } } |
acorn run –n comedian –f Acornfile.eks . |
$ acorn apps
NAME IMAGE HEALTHY UP-TO-DATE CREATED ENDPOINTS MESSAGE
comedian d79f1a5a0e1b 2 2 25s in the past http://PENDING_INGRESS => comic-frontend:80 OK
Aguarde a entrada para se conectar com a inscrição e acesse o URL. Você precisa ver o software de votação comediante operando na AWS.
Neste tutorial, exploramos o fluxo de trabalho envolvido na transferência dos propósitos da Acorn da atmosfera do evento para a fabricação.