As frotas permitem-lhe gerir funcionalidades empresariais e outras funcionalidades ativadas para frotas em vários clusters ao mesmo tempo. Isto permite-lhe, por exemplo, aplicar um conjunto comum de políticas ou criar uma única malha de serviços na sua frota de clusters. Esta página oferece uma vista geral de como pode gerir as funcionalidades da sua frota. Para mais informações sobre a configuração e a utilização de funcionalidades individuais, consulte a respetiva documentação.
Se ativou o Google Kubernetes Engine, pode gerir as funcionalidades na Google Cloud consola. Todos os utilizadores da frota podem gerir funcionalidades através da linha de comandos.
Algumas funcionalidades permitem-lhe criar uma configuração de funcionalidades predefinida ao nível da frota para os seus clusters de frotas. Por exemplo, pode garantir que todos os clusters que criar na sua frota têm o Policy Controller instalado e configurado.
Pode saber mais sobre como a gestão de funcionalidades ao nível da frota nos seus clusters funciona "nos bastidores" na secção Autorização de funcionalidades.
Funcionalidades ao nível da frota
Pode gerir as seguintes funcionalidades ao nível da frota:
- Cloud Service Mesh gerido
- Postura de segurança
- Config Sync
- Controlador de políticas
- Serviço de identidade do GKE
- Entrada em vários clusters
- Serviços em vários clusters (apenas clusters do GKE)
- Validação contínua para a autorização binária
Esta lista não inclui todas as funcionalidades que usam ou requerem frotas. Por exemplo, a federação de identidades de cargas de trabalho da frota depende de os clusters serem membros de uma frota, mas não requer configuração ao nível da frota, e o Cloud Service Mesh requer a associação à frota para todas as opções de configuração e plano de controlo.
Pode saber mais sobre as funcionalidades disponíveis em que ambientes na página Opções de implementação.
Configure funcionalidades ao nível da frota
As secções seguintes descrevem como pode ativar e configurar funcionalidades ao nível da frota.
Para usar uma funcionalidade ao nível da frota, na maioria dos casos, ativa a funcionalidade para a sua frota e configura-a para os membros da frota. Geralmente, é necessária alguma configuração (ou outra configuração adicional) para usar efetivamente a funcionalidade com os seus clusters e cargas de trabalho.
Pode criar configurações de cluster predefinidas da frota para algumas funcionalidades, o que significa que todos os novos clusters que criar na sua frota vão ser criados com as definições especificadas para essa funcionalidade já configuradas.
Ative funcionalidades com predefinições ao nível da frota
Pode criar predefinições ao nível da frota para os seus clusters do GKE para algumas funcionalidades. Depois de criar estas definições, qualquer cluster do GKE que registar durante a criação do cluster é configurado automaticamente com as configurações ao nível da frota. Por exemplo, se configurar predefinições para o Policy Controller, cada novo cluster que criar na sua frota terá a versão especificada do Policy Controller instalada, com os pacotes de políticas e outras definições especificados. As definições predefinidas da frota não são aplicadas automaticamente aos clusters de membros da frota existentes, embora possa sincronizar os clusters existentes com as definições predefinidas através da Google Cloud consola.
O processo geral para ativar funcionalidades com predefinições ao nível da frota é o seguinte:
Consola
No projeto de anfitrião da frota, aceda à página Gestor de funcionalidades:
Aceda ao Gestor de funcionalidades
As funcionalidades que suportam a configuração de predefinições ao nível da frota através da Google Cloud consola estão listadas em Gestão de funcionalidades ao nível da frota.
Para a funcionalidade escolhida, clique em Configurar e siga as instruções para ativar e configurar as predefinições da funcionalidade.
Opcional: selecione e sincronize clusters existentes na sua frota com as novas definições.
gcloud
- Crie um ficheiro YAML que especifique as predefinições da frota escolhidas para a funcionalidade.
Execute o comando
enable
para a funcionalidade, transmitindo-lhe o ficheiro de configuração. Cada funcionalidade ao nível da frota tem o seu próprio comandoenable
. Por exemplo, para ativar o Cloud Service Mesh para a sua frota com a configuração predefinida especificada emmesh.yaml
, execute o seguinte comando no projeto de anfitrião da frota:gcloud container fleet mesh enable --fleet-default-member-config mesh.yaml
Em alternativa, para algumas funcionalidades, pode especificar predefinições da frota através de parâmetros para o comando fleet create
ou fleet update
. Consulte o guia da funcionalidade escolhida para ver mais detalhes.
Terraform
Defina um recurso google_gke_hub_feature
com um bloco fleet_default_member_config
que especifique as predefinições da frota escolhidas. Para ver detalhes e funcionalidades da frota suportadas, consulte a documentação do Terraform.
Nem todas as funcionalidades suportam a configuração predefinida da frota com todas estas opções. Para instruções detalhadas sobre como configurar as predefinições da frota para cada funcionalidade suportada, consulte a seguinte documentação:
- Cloud Service Mesh
- Config Sync
- Controlador de políticas
- Postura de segurança
- GKE Identity Service (apenas linha de comandos)
- Validação contínua para a autorização binária (pré-visualização, apenas linha de comandos)
Ative e configure funcionalidades da frota em clusters individuais
Em alternativa à configuração predefinida da frota, pode optar por configurar as funcionalidades da frota separadamente em clusters individuais. Esta pode ser uma boa opção se:
- Quiser configurar um cluster existente para usar uma funcionalidade.
- Quiser usar serviços em que a configuração predefinida da frota não está disponível ou não está disponível através da ferramenta escolhida.
Ative funcionalidades
Tenha em atenção que este passo não é necessário para todas as funcionalidades. Consulte o guia da funcionalidade escolhida para ver mais detalhes.
Consola
Pode ativar funcionalidades na página Gestor de funcionalidades na Google Cloud consola.
Para ativar uma funcionalidade para a sua frota:
No projeto de anfitrião da frota, aceda à página Gestor de funcionalidades:
Aceda ao Gestor de funcionalidades
As funcionalidades que podem ser ativadas, mas não configuradas a partir desta página, estão listadas em Faça a gestão de outras funcionalidades prontas para a empresa.
Clique em Ativar no painel da funcionalidade que quer ativar.
Clique no botão Ativar… no painel de detalhes apresentado.
gcloud
Cada funcionalidade ao nível da frota tem o seu próprio comando enable
. Por exemplo, para ativar o serviço de identidade do GKE para a sua frota, execute o seguinte comando no projeto anfitrião da frota:
gcloud container fleet identity-service enable
Consulte a documentação de referência do Google Cloud SDK (e os respetivos equivalentes beta e alfa) para ver uma lista completa de comandos ou os conjuntos de documentação de funcionalidades individuais para ver mais detalhes.
Para saber como verificar se uma funcionalidade já foi ativada e ver o estado de outras funcionalidades, consulte o artigo Veja o estado das funcionalidades da frota.
Configure clusters individuais
Os passos de configuração que segue dependem da funcionalidade. Consulte os seguintes guias para mais informações:
- Cloud Service Mesh
- Postura de segurança:
- Config Sync
- Controlador de políticas
- Serviço de identidade do GKE
- Entrada em vários clusters
Veja o estado das funcionalidades da frota
A forma mais fácil de ver o estado das funcionalidades da frota é usar o painel de controlo do Gestor de funcionalidades na Google Cloud consola.
Aceda ao Gestor de funcionalidades
Para as funcionalidades suportadas, esta página apresenta quantos dos seus clusters de frota têm o seguinte estado:
- Ter esta funcionalidade ativada
- Ter esta funcionalidade ativada com êxito
- Ter um aviso para esta funcionalidade
- Ter um erro para esta funcionalidade
Também pode ver se as definições predefinidas da frota foram configuradas para a funcionalidade e quantos clusters de membros da frota têm estas definições. Para as funcionalidades ativadas, pode clicar para aceder a uma página de detalhes que apresenta os clusters que usam a funcionalidade e, se configurado, permite-lhe selecionar e sincronizar clusters com as definições predefinidas da sua frota.
Para funcionalidades que não podem ser configuradas através desta página (indicadas em Gerir outras funcionalidades prontas para a empresa), pode ver se a funcionalidade foi ativada para a sua frota e ver um painel de detalhes que mostra quantos clusters têm a funcionalidade instalada e outras informações relevantes.
Veja o estado das funcionalidades através do gcloud
gcloud
Execute o seguinte comando para apresentar uma lista de todas as funcionalidades ativadas:
gcloud container fleet features list
Desative uma funcionalidade ao nível da frota
Para desativar uma funcionalidade ao nível da frota, faça o seguinte no projeto anfitrião da frota.
Consola
Apenas as funcionalidades de frota listadas em Faça a gestão de outras funcionalidades prontas para a empresa podem ser desativadas a partir da Google Cloud consola.
No projeto de anfitrião da frota, aceda à página Gestor de funcionalidades:
Clique em Detalhes no painel da funcionalidade que quer desativar.
Clique no botão Desativar… no painel de detalhes apresentado.
gcloud
Cada funcionalidade ao nível da frota tem o seu próprio comando disable
. Por exemplo, para desativar o Cloud Service Mesh para a sua frota, execute o seguinte comando no projeto anfitrião da frota:
gcloud container fleet mesh disable
Consulte a documentação de referência do Google Cloud SDK (e os respetivos equivalentes beta e alfa) para ver uma lista completa de comandos ou os conjuntos de documentação de funcionalidades individuais para ver mais detalhes.
Para ver o comportamento esperado depois de desativar uma funcionalidade para a sua frota, consulte a documentação da funcionalidade relevante. Em muitos casos, a configuração relevante continua a existir no cluster, mas já não pode gerir centralmente a funcionalidade através de comandos de frota ou da consola Google Cloud .
Autorização de funcionalidades
Para gerir funcionalidades ao nível da frota, estas têm de ser autorizadas através do controlo de acesso baseado em funções para desempenharem as respetivas funções nos clusters. Google Cloud usa um serviço denominado Feature Authorizer que define e atualiza automaticamente as autorizações para funcionalidades ativadas para a frota, o que evita ter de definir autorizações de funcionalidades manualmente em todos os clusters, especialmente quando a Google lança atualizações de funcionalidades.
Quando regista um cluster,
o manifesto aplicado ao cluster contém um
ClusterRoleBinding
que atribui ao Feature Authorizer uma função cluster-admin
no cluster,
e a função está anexada a uma conta de serviço denominada
service-project-number@gcp-sa-gkehub.iam.gserviceaccount.com
.
Quando desativa uma funcionalidade ativada para a frota no seu projeto, o Feature
Authorizer elimina os objetos
ClusterRole
e ClusterRoleBinding
correspondentes à funcionalidade, o que remove
a capacidade da funcionalidade de operar no cluster.
Veja o autorizador de funcionalidades nos registos de auditoria
Para ver a atividade do Feature Authorizer nos registos de auditoria do GKE:
Abra o Explorador de registos na Google Cloud consola.
Execute a seguinte consulta avançada:
resource.type="k8s_cluster" resource.labels.cluster_name="CLUSTER_NAME" resource.labels.location="CLUSTER_LOCATION" protoPayload.authenticationInfo.principalEmail="system:serviceaccount:gke-connect:connect-agent-sa" protoPayload.authenticationInfo.authoritySelector="service-PROJECT_NUMBER@gcp-sa-gkehub.iam.gserviceaccount.com"
Substitua o seguinte:
CLUSTER_NAME
: o nome do cluster para o qual quer ver os registos.CLUSTER_LOCATION
: a Google Cloud localização em que o cluster foi criado.PROJECT_NUMBER
: o Google Cloud número do projeto do projeto proprietário do cluster.
Para clusters não GKE, descubra onde os registos de auditoria do Kubernetes estão armazenados e execute uma consulta semelhante.