Base de conhecimento  /  Gerenciador de aplicativos em nuvem  /  Implementação em qualquer lugar
Base de conhecimento  /  Gerenciador de aplicativos em nuvem  /  Implementação em qualquer lugar

Configurar um provedor de Kubernetes

Atualizado por Dénes Pál em jan 2, 2019
Código do artigo: kb/1192

Neste artigo:

Visão geral

Com o provedor do Kubernetes do Cloud Application Manager, você pode criar e gerenciar qualquer recurso do Kubernetes, usando template boxes com modelos YAML declarativos.

Este artigo explica como configurar um provedor do Kubernetes e como criar uma conta de serviço no cluster do Kubernetes a ser usada com o Cloud Application Manager.

Para saber como criar políticas, caixas de modelo e implementações do Kubernetes, consulte a segunda parte deste artigo.

Público

Usuários do Cloud Application Manager que pretendem configurar um provedor do Kubernetes.

Pré-requisitos

  • Uma conta ativa do Cloud Application Manager
  • Acesso com privilégios de cluster-admin a um cluster do Kubernetes

Guia de introdução do Kubernetes no Cloud Application Manager

A implementação do Kubernetes no Cloud Application Manager foi feita de modo a funcionar com qualquer cluster moderno do Kubernetes quando uma versão recente do Kubernetes está instalada. Isso inclui os provedores de nuvem prefeitos, como EKS no Amazon AWS, AKS no Microsoft Azure e GKS no Google nuvem. nuvem O Gerenciador de aplicativos é capaz de descobrir Apis suportadas pelo cluster Kubernetes, suas versões e tipos de recursos suportados.

É recomendável criar uma conta de serviço separada para que o Cloud Application Manager interaja com o cluster do Kubernetes. Esse processo exige um ambiente kubectl instalado e configurado.

Há um guia excelente sobre como instalar o kubectl.

Tamanho mínimo do cluster no GKS do Google

Recomenda-se usar pelo menos dois nós n0-standard-1 (2 vCPU, 3.4 GB de memória) para um cluster GKS. Atribuir poucos recursos de computação fará com que o mecanismo GKS falhe ao programar os componentes vitais do Kubernetes. O Cloud Application Manager só consegue fazer a sincronização com um cluster funcional do Kubernetes.

Configurar o kubectl

Configurar o kubectl para EKS da Amazon

Você deve ter a interface de linha de comando da AWS já instalada. Execute o comando a seguir no shell para configurar o kubectl com as credenciais do cluster EKS:
(substituir $REGION e $CLUSTER_NAME adequadamente)

aws eks --region $REGIION update-kubeconfig --name $CLUSTER_NAME

Configurar o kubectl para AKS do Azure

Abra um Cloud Shell no Portal do Microsoft Azure e execute o seguinte comando:
(substituindo $RESOURCE_GROUP_NAME e $CLUSTER_NAME adequadamente)

az aks get-credentials --resource-group $RESOURCE_GROUP_NAME --name $CLUSTER_NAME

Como alternativa, você pode selecionar Serviço de Kubernetes no Portal do Azure, selecionar o cluster e navegar para a página Visão geral. Em Exibir painel do Kubernetes, clique em Exibir etapas de conexão, copie a etapa 0 e execute-a no Cloud Shell.

Configurar o kubectl para GKS do Google

Abra o Cloud Shell e execute os seguintes comandos:
(substituindo $CLUSTER_NAME e $ZONE adequadamente)

gcloud container clusters list
gcloud container clusters get-credentials $CLUSTER_NAME --zone $ZONE

Criar uma conta de serviço no Kubernetes

As etapas a seguir são as mesmas para qualquer tipo de cluster do Kubernetes e exigem que o kubectl já esteja configurado com as credenciais do cluster.

Execute os trechos de comando a seguir no mesmo shell e em ordem (já que eles dependem de um estado armazenado nas variáveis do shell). É seguro executar os comandos várias vezes. No entanto, kubectl create gera um erro quando o recurso já existe.

Para verificar se o kubectl foi configurado adequadamente, execute:

kubectl config current-context
kubectl cluster-info

Crie uma conta de serviço para o Cloud Application Manager:

namespace="kube-system" account="cam.ctl.io"
kubectl --namespace "$namespace" create serviceaccount "$account"

Conceda as funções cluster-admin em todo o cluster para a conta de serviço recém-criada:

kubectl create clusterrolebinding "$account:cluster-admin" --clusterrole cluster-admin --serviceaccount "$namespace:$account"

Obtenha e exiba as credenciais:

api_url=`kubectl cluster-info | sed -En 's/.*Kubernetes master.*(https?:[[:print:]]+).*/\1/p'`
secret=`kubectl --namespace "$namespace" get serviceaccount "$account" -o jsonpath="{.secrets[0].name}"`
token=`kubectl --namespace "$namespace" get secret "$secret" -o jsonpath="{.data.token}" | base64 --decode`
ca_crt=`kubectl --namespace "$namespace" get secret "$secret" -o jsonpath="{.data['ca\.crt']}"`
printf "\nAPI address:\t$api_url\n\nAuthentication Token:\n$token\n\nCA-Certificate:\n$ca_crt\n\n"

Para testar o token da conta de serviço:

curl --insecure -H "Authorization: Bearer $token" "$api_url/api/v1/namespaces/$namespace" && echo '' || echo 'FAILURE'

Se o token da conta de serviço funcionar adequadamente, o comando acima deverá imprimir um recurso de namespace semelhante a este:

{
  "kind": "Namespace",
  "apiVersion": "v1",
  "metadata": {
    "name": "kube-system",
    "selfLink": "/api/v1/namespaces/kube-system",
    "uid": "3affafce-...",
    "resourceVersion": "52",
    "creationTimestamp": "2019-03-04T17:09:11Z",
    "annotations": { ... }
  },
  "spec": {
    "finalizers": ["kubernetes"]
  },
  "status": {
    "phase": "Active"
  }
}

Criar um provedor

Para a implementação em um cluster do Kubernetes com o Cloud Application Manager, um provedor do Kubernetes precisa ser configurado primeiro.

Vá para a caixa de diálogo Provedores -> Novo provedor e selecione Kubernetes na lista de provedores disponíveis. Se esse tipo de provedor não estiver disponível, entre em contato com o administrador da sua organização.

Criar um provedor de Kubernetes

Especifique o nome e a descrição do provedor e informe as credenciais específicas ao cluster.

Configurar um provedor de Kubernetes

O Endereço do servidor da API pode ser um endereço IP ou um nome de domínio totalmente qualificado. Ele será prefixado com https:// por padrão. Em um cenário improvável no qual o cluster não comporta SSL, você precisará prefixar o endereço com http:// como alternativa. Observe que, no caso de http://o token de autenticação e a senha serão transmitidos sem criptografia.

É recomendável fornecer o certificado CA do cluster. Caso contrário, ele poderá não ser validado junto às autoridades de certificação públicas, o que poderá causar um erro de conexão SSL.

Os usuários precisam fornecer uma ou mais das seguintes credenciais: Token ou Certificado do cliente e Chave do cliente ou Nome de usuário e Senha. (O par de token e nome de usuário/senha é mutuamente exclusivo).

Os certificados e a chave podem ser carregados como arquivos PEM. Basta clicar no botão e selecionar um arquivo local. Como alternativa, use uma cadeia codificada base-0 colada da área de trabalho.

Depois que você salvar o conteúdo da caixa de diálogo, o provedor será criado e o Cloud Application Manager começará a sincronização com o cluster do Kubernetes.

Sincronizar um provedor do Kubernetes

Na sincronização

Durante a sincronização com o provedor do Kubernetes, o Cloud Application Manager inicia uma detecção de API no cluster:

  • Verifica os grupos de API compatíveis, as versões e a versão preferencial
  • Consulta cada API com cada versão compatível para obter uma lista dos tipos de recursos aceitos
  • Obtém uma lista de namespaces disponíveis
  • Cria uma caixa de política de implementação de exemplo vinculada ao namespace padrão ou ao primeiro namespace disponível
  • Consulta todas as API para obter uma lista de recursos do Kubernetes com namespace a fim de exibi-los como instâncias não registradas e oferecê-los para registro

Configuração detectada de um provedor do Kubernetes

Fazer implementações no Kubernetes

As políticas de implementação, os modelos e o processo real de implementação estão detalhados na segunda parte deste artigo.

Como obter suporte geral

Os clientes podem contatar diretamente a central de suporte de operações globais da Lumen (suporte técnico) para obter ajuda com o Cloud Application Manager, bem como para qualquer outro produto compatível no qual eles estejam inscritos. Veja abaixo as três formas de obter ajuda.

Contato:

  1. Telefone: 888-638-6771

  2. E-mail: E-mail: incident@centurylink.com

  3. Criar um ticket no Cloud Application Manager: Diretamente dentro da plataforma, os usuários podem "Criar ticket" clicando no símbolo "?" no canto superior direito, próximo ao ícone do perfil de login do usuário. Isso leva o usuário diretamente ao Portal de serviços gerenciados, onde ele pode abrir, rastrear e revisar o status dos problemas que foram relatados ao suporte técnico. Além disso, essa é também a maneira de envolver um TAM.

Instruções:

  1. Informe seu nome
  2. Nome da conta do Cloud Application Manager
  3. Uma breve descrição da solicitação ou do problema para fins de registro do caso

O suporte técnico transmitirá as informações ao TAM principal e transferirá a chamada, caso necessário.

Powered by Translations.com GlobalLink OneLink SoftwarePowered By OneLink