IBM Cloud Docs
Caminho de aprendizado para desenvolvedores

Caminho de aprendizado para desenvolvedores

Seguindo uma linha de aprendizagem curada para implementar apps conteinerizados altamente disponíveis em clusters Red Hat OpenShift e usar as ferramentas poderosas do Red Hat OpenShift on IBM Cloud para automatizar, isolar, proteger, gerenciar e monitorar suas cargas de trabalho de app em zonas ou regiões.

Acessar o cluster

Comece a trabalhar com o seu cluster configurando a CLI e acessando o cluster.

  1. Configuração da CLI: configure as CLIs que são necessárias para criar e trabalhar com clusters. Ao trabalhar com seu cluster, consulte a referência de comandos e acompanhe as atualizações da versão da CLI com o registro de alterações da CLI.
  2. Permissões de usuário: assegure-se de que seu administrador de cluster lhe dê a função do IBM Cloud IAM adequada para acessar o cluster.
  3. Acesso ao cluster: Acesse seu cluster por meio do terminal em serviço de nuvem pública ou privada.

Precisa de ajuda? Consulte Resolução de problemas de clusters e de mestres e Resolução de problemas do trabalhador.

Planeje a sua implementação

Antes de implementar um app, decida como deseja configurar seu app para que o seu app possa ser acessado corretamente e seja integrado com outros serviços.

  1. Kubernetes-native: planeje sua estratégia para desenvolver um app nativo do Kubernetes.
  2. Altamente disponível: planeje sua estratégia para uma implementação altamente disponível.

Procurando por serverless? Tente Code Engine.

Desenvolva o seu app

Configure seu app em um arquivo YAML que declare a configuração do objeto do Kubernetes e planeje sua estratégia de versão do app.

  1. Desenvolva o seu app:
    1. Revise o básico das implementações de app nativo do Kubernetes.
    2. Construa contêineres de app por meio de imagens nos registros internos, públicos ou privados.
    3. Especifique seus requisitos de app em um arquivo YAML, que declara a configuração do objeto do Kubernetes.
  2. Versão do seu app:
    1. Para planejar configurações customizadas para mais de um ambiente, como ambientes de desenvolvimento, de teste e de produção, use a ferramenta Kustomize para gerenciar seu arquivo YAML de configuração.
    2. Se você deseja executar seu app em vários clusters, ambientes públicos e privados, ou até mesmo diversos provedores de cloud, pacote seu aplicativo para ajudar a automatizar implementações.

Precisa de ajuda? Consulte Resolução de problemas de apps e integrações.

Implementar seu app

Implemente seu app para o cluster executando seu arquivo de configuração do app.

Precisa de ajuda? Consulte Resolução de problemas de apps e integrações.

Teste, registre e monitore

Enquanto você realiza testes de desempenho em seu app, configure a criação de log e o monitoramento para ajudá-lo a solucionar problemas, obter visibilidade em suas cargas de trabalho e melhorar o funcionamento e o desempenho de seus apps.

Em um ambiente de teste, crie deliberadamente vários cenários não ideais, como a exclusão de todos os nós do trabalhador em uma zona para replicar uma falha zonal. Revise os logs e as métricas para verificar como seu app se recupera.

  1. Testar acesso: teste o acesso ao seu app criando um NodePort público ou privado em seus nós do trabalhador.
  2. Entender as opções de criação de log e de monitoramento: escolha soluções para criação de log de app e de cluster, criação de log de auditoria e monitoramento com base em suas necessidades.
  3. Monitorando por meio do console: abra o console da web do OpenShift para visualizar informações sobre seus recursos de app.
  4. IBM Cloud Logs e Monitoring: para monitorar o funcionamento do cluster, encaminhe logs para o IBM Cloud Logs e métricas para o IBM Cloud Monitoring.

Atualize o app

Execute atualizações contínuas e retrocessos de apps sem tempo de inatividade para os seus usuários.

  1. Estratégia de atualização: planeje sua estratégia para manter o seu app atualizado.
  2. Configurar atualizações:
  3. Ajuste de escala: ative o ajuste automático de escala de pod horizontal para aumentar ou diminuir automaticamente o número de instâncias de seus apps com base na CPU.

Proteja o seu app

Use segredos do Kubernetes para armazenar informações confidenciais, como credenciais ou chaves, e criptografar dados em segredos do Kubernetes para evitar que usuários não autorizados acessem informações de app sensíveis.

  1. Segredos: armazene informações pessoais ou sensíveis em segredos do Kubernetes que o seu app pode acessar.
  2. Criptografia secreta: configure um provedor KMS e Criptografe segredos e verifique a criptografia.

Exponha o app

Exponha publicamente um app em seu cluster para a Internet ou exponha privadamente um app em seu cluster somente para a rede privada.

  1. Planejar a descoberta de serviço:
    1. Entenda o básico da descoberta de serviço do Kubernetes.
    2. Escolha um serviço de exposição de app que se ajuste aos seus requisitos para o tráfego recebido para o app.
  2. Expor o seu app:

Precisa de ajuda? Confira Resolução de problemas do Ingress e Resolução de problemas de balanceadores de carga.

Incluir armazenamento de app

  1. Requisitos: determine seus requisitos para uma solução de armazenamento.
  2. Escolha uma solução: usando seus requisitos de armazenamento, escolha uma solução de armazenamento comparando suas opções.

Precisa de ajuda? Confira a página de resolução de problemas para sua solução de armazenamento persistente.

Incluir integrações

Aprimore os recursos do app integrando vários serviços externos e serviços de catálogo em seu cluster com o seu app.

  1. Revisão das integrações suportadas:

  2. Incluir serviços em seu cluster: peça ao seu administrador de cluster para incluir a integração em seu cluster.

  3. Acessar serviços por meio de seu app: certifique-se de que o seu app possa acessar o serviço. Por exemplo, para acessar uma instância de serviço do IBM Cloud por meio do app, deve-se tornar as credenciais de serviço armazenadas no segredo do Kubernetes disponíveis para o app.

Precisa de ajuda? Consulte Resolução de problemas de apps e integrações. {: tip}f