Para que o Operador Kubernetes crie ou atualize objetos em seu Projeto do Cloud Manager ou Ops Manager, você precisa armazenar sua Chave de API programática em suaferramenta de armazenamento secreto .
Vários segredos podem existir no mesmo namespace. Cada usuário deve ter seu próprio segredo.
Você pode seguir o Procedimento abaixo para armazenar manualmente a Chave de API programática como um segredo do Kubernetes. Como alternativa, você pode:
Use a MongoDB Cloud Manager interface do usuário do ou a MongoDB Ops Manager interface do usuário do para gerar automaticamente o Kubernetes arquivo YAML secreto do , que você pode aplicar ao seu Kubernetes ambiente do .
Armazene a chave de API programática como um segredo de cofre usando o procedimento para Criar um segredo de cofre. Para usar o Vault, você também deve configurar o armazenamento secreto.
Pré-requisitos
Para criar credenciais para o Operador Kubernetes, você deve:
Ter ou criar uma organização MongoDB Ops Manager .
Ter ou gerar uma chave de API programática.
Conceda esta nova chave de API programática:
A função Organization Owner ou
Global Owner, se você quiser que o Kubernetes Operator crie projetos e os gerencie.A role "Proprietário do projeto" , se você quiser que o operador Kubernetes gerencie apenas projetos.
Observação
Você deve conceder à Chave de API programática o Proprietário da organização ou a função
Global Owner. Se quiser conceder à chave de API programática apenas a role "Proprietário do projeto" , primeiro crie o projeto e, em seguida, a chave de API programática para o projeto com a role "Proprietário do projeto". O Kubernetes Operator não poderá criar projetos se a chave de API programática tiver apenas a role de proprietário do projeto .Adicione o bloco IP ou CIDR de qualquer host que atenda ao Kubernetes Operator à lista de acesso da API.
Procedimento
Para criar seu segredo do Kubernetes:
Criar um novo segredo do Kubernetes
Certifique-se de ter as chaves pública e privada para a chave de API programática do Ops Manager desejada.
Invoque o seguinte comando do Kubernetes para criar seu segredo:
kubectl -n <metadata.namespace> \ create secret generic <mycredentials> \ --from-literal="publicKey=<publicKey>" \ --from-literal="privateKey=<privateKey>" O sinalizador
-nlimita o namespace ao qual esse segredo se aplica. Todos os recursos do MongoDB Kubernetes devem existir no mesmo namespace que os segredos e ConfigMaps. O Kubernetes Operator não usa os segredos nem o ConfigMaps.Observação
A versão obsoleta deste comando especifica um
userepublicApiKeyem vez de umpublicKeyeprivateKey. O Kubernetes Operator aceita qualquer versão para autenticação.
Verifique seu novo segredo do Kubernetes
Invoque o seguinte comando do Kubernetes para verificar seu segredo:
kubectl describe secrets/<mycredentials> -n <metadata.namespace>
Este comando retorna uma descrição secreta na shell:
Name: <mycredentials> Namespace: <metadata.namespace> Labels: <none> Annotations: <none> Type: Opaque Data ==== privateKey: 31 bytes publicKey: 22 bytes