Preparando para Implementação de Agente
O agente Schematics estende a capacidade de trabalhar diretamente em sua rede privada ou em quaisquer zonas de rede isoladas. Os agentes colocam os usuários no controle da configuração de rede e acesso que eles dão a um agente para executar tarefas de área de trabalho e de ação. Os agentes são projetados sem acesso de entrada do Schematics e a abertura de portas de firewall de entrada ou de acesso à rede. Toda a comunicação entre o agente e Schematics é de saída do agente e está sob controle do usuário.
Schematics O Agent é um conjunto de microsserviços que é executado nos clusters Kubernetes de sua conta. Além disso, eles usam um bucket Object Storage como um armazenamento de dados intermediário ou temporário para os arquivos de registro e os arquivos de estado gerados por trabalhos de ação ou espaço de trabalho.
Revise e conclua as tarefas listadas para preparar seu ambiente IBM Cloud® para implementar um novo agente.
- Conta e redes
- Um agente fornece Schematics a capacidade de executar trabalhos de espaço de trabalho e de ação em uma conta de destino e na rede privada da conta. As políticas de rede devem ser configuradas para permitir que o cluster no qual o agente está
implantado se comunique com o Schematics, também com as APIs, os serviços e, por exemplo, com as instâncias privadas do Git ou do Vault. Para obter mais informações, consulte a seção Planejamento do acesso e da configuração da rede do agente.
- Registre informações sobre as zonas de rede e a infraestrutura permitidas acessíveis ao agente.
- Agrupamento
- Um agente Schematics pode ser implantado em clusters públicos ou privados IBM Cloud Kubernetes Service e Red Hat OpenShift Kubernetes Service existentes. É possível usar um cluster existente ou provisionar um novo cluster com a configuração mínima a seguir:
- Para o IBM Cloud Kubernetes Service v1.28 e versões posteriores do cluster. Você precisa atualizar o caminho de rede para que as imagens sejam puxadas por meio de um gateway VPE em vez de um endpoint de serviço privado ou aprimorar o modelo de agente Schematics.
- Configuração mínima: três nós do trabalhador com o tipo
b4x16. Essa configuração pode ser usada para executar quatro tarefas de área de trabalho ou de ação em paralelo - Registre informações sobre o cluster, como
cluster ID,cluster resource grouperegionpara uso posterior.
Ao fazer upgrade de um agente no cluster ca-mon, certifique-se de que os pontos de extremidade de serviço private e public estejam ativados. Esses endpoints são necessários apenas durante a instalação ou
upgrade. Após a instalação ou atualização bem-sucedida, você pode desativar o ponto de extremidade do serviço public. No entanto, você deve reativar o ponto de extremidade do serviço public para futuros upgrades do
Agente.
Para oferecer suporte a agentes no site Red Hat OpenShift Kubernetes Service com base nos requisitos, é possível controlar o tráfego de saída por meio de grupos de segurança e listas de controle de acesso à rede (ACLs).
Você precisa definir quaisquer regras de grupo de segurança e ACLs no nível da VPC antes de implantar um agente no cluster. Para obter mais informações, consulte o Script do Terraform para definir grupos de segurança e ACLs em uma VPC.
Se estiver instalando um agente em um cluster em que o ponto de extremidade público está desativado e o tipo de acesso OAuth para o cluster é vpegw, você deverá criar uma política de autorização serviço a serviço ( S2S ) entre Schematics
e Kubernetes com a função Viewer. A versão do agente deve ser a 1.7.0 ou posterior. Para obter mais informações sobre a criação de políticas S2S, consulte Uso de autorizações para conceder acesso entre serviços.
- IBM Cloud Object Storage
- O Schematics Agent usa um Object Storage bucket para armazenar dados temporários. A instância IBM Cloud Object Storage deve estar no mesmo grupo de recursos que o cluster. Além disso, o novo depósito deve estar na mesma região que o cluster
- Para implementar um agente, deve-se ter os privilégios necessários para criar o
HMAC credentialspara o depósito do Object Storage e armazenar a credencial como um segredo do Kubernetes. - A instância IBM Cloud Object Storage e o bucket devem ser criados para que a implementação seja bem-sucedida.
- Registre informações sobre os recursos do IBM Cloud Object Storage como
COS instance name,COS bucket nameebucket regionpara uso posterior.
- Para implementar um agente, deve-se ter os privilégios necessários para criar o
- Permissão de acesso ao IAM
- No mínimo, você deve ter permissões de acesso para o serviço Kubernetes, o Resource Group, o Object Storage e o serviço Schematics para implantar um agente.
- Para implantar um agente em outra conta usando um
ServiceIDouAPIKey, você deve verificar se o administrador da conta concede permissão para todos os serviços listados em permissão para implantar um agente.
- Para implantar um agente em outra conta usando um
- CLI da IBM Cloud
- Use a versão recente da IBM Cloud CLI e o Schematics CLI v1.12.12 ou plug-in superior para instalar um agente. Para obter mais informações sobre a instalação do plug-in, consulte instalação do Schematics plug-in CLI.
- Suporte à versão do Terraform
- O agente oferece suporte ao espaço de trabalho por meio do Terraform
v1.13ev1.14. Áreas de trabalho com versões mais antigas do Terraform devem ser atualizadas para uma das versões suportadas para suporte por um agente. Para obter mais informações, consulte o cronograma de descontinuação e as ações que o usuário deve realizar para atualizar.
É possível implementar apenas uma instância de agente em um cluster Kubernetes. Para implementar vários agentes em uma única conta IBM Cloud, eles devem ser implementados em diferentes clusters Kubernetes. Cada agente e cluster pode atender diferentes zonas de isolamento de rede em seu ambiente de nuvem.
Um agente pode ser associado e executar tarefas para uma conta e região geográfica do IBM Cloud. Agentes não podem ser compartilhados com outras contas ou executar tarefas para várias contas. O diagrama representa a associação de agentes com uma região geográfica do Schematics. Aqui, vários agentes com acesso a recursos privados locais em locais remotos são associados a diferentes instâncias geográficas do Schematics
Esta imagem é uma representação artística e não reflete as fronteiras políticas ou geográficas reais.
Planejando acesso e configuração de rede do agente
Schematics O agente permite que os trabalhos de espaço de trabalho e de ação sejam executados em sua rede privada com acesso direto para trabalhar com recursos em sua rede privada e em seus data centers. O diagrama a seguir ilustra um possível modelo de implementação de agente em um ambiente de cluster com vários VPCs conectados por meio de um gateway de trânsito.
Para trabalhar com recursos privados, seu ambiente de nuvem privada deve ser configurado para permitir que o cluster seja executado no agente. E tem acesso às APIs, serviços e recursos para permitir que as tarefas de área de trabalho e ações sejam executadas. Normalmente, o Terraform usa HTTPS para configurar o serviço na porta 443. Já Ansible usa SSH pela porta 22 para realizar a configuração do VSI pós-provisionamento. Esses caminhos de rede HTTPS e SSH estão ilustrados no diagrama.
As políticas do Grupo de Segurança VPC ou da Lista de Controle de Acesso devem ser configuradas para permitir que o cluster de agentes acesse IBM Cloud APIs usando HTTPS e qualquer VSI de destino usando SSH.
O acesso aos recursos do data center pode ser configurado usando o Direct Link ou uma conexão VPN
Com os agentes, é necessário executar as políticas de segurança de rede para o cluster Kubernetes e quaisquer políticas do Grupo de Segurança do VPC ou da Lista de Controle de Acesso para o agente em execução Portanto, determinar a capacidade de tarefas de área de trabalho e de ação para acessar recursos de nuvem privada e as APIs do IBM Cloud para o fornecimento e a configuração de serviço.
Planejamento de capacidade do agente..
Você precisa monitorar o uso de recursos para os pods do agente Schematics para dimensionar os nós de trabalho no cluster Kubernetes com base no número de trabalhos simultâneos. Para fazer as alterações a seguir, você pode usar o painel Kubernetes ou os comandos kubectl.
- The number of concurrent Terraform, and Ansible jobs.
- The number of Terraform and Ansible pods.
- The resource limits for the agent deployment.
Próximas etapas
A próxima etapa é implementar um agente..