Por padrão, o Google Cloud Managed Lustre criptografa o conteúdo do cliente em repouso. O Managed Lustre processa a criptografia para você sem nenhuma ação adicional da sua parte. Essa opção é chamada de criptografia padrão do Google.
Se você quiser controlar suas chaves de criptografia, use chaves de criptografia gerenciadas pelo cliente (CMEKs) no Cloud KMS com serviços integrados a CMEKs, incluindo o Managed Lustre. Ao usar chaves do Cloud KMS, é possível controlar o nível de proteção, o local, a programação de rotação, as permissões de uso e acesso e os limites criptográficos. Ao usar o Cloud KMS, é possível também monitorar o uso de chaves, ver registros de auditoria e controlar ciclos de vida de chaves. Em vez de o Google ser proprietário e responsável pelo gerenciamento das chaves de criptografia de chaves (KEKs) simétricas que protegem seus dados, você controla e gerencia essas chaves no Cloud KMS.
Depois de configurar seus recursos com CMEKs, a experiência de acesso aos recursos do Managed Lustre é semelhante ao uso da criptografia padrão do Google. Para saber mais sobre suas opções de criptografia, consulte Chaves de criptografia gerenciadas pelo cliente (CMEK).
Os seguintes dados do Managed Lustre são protegidos pela CMEK:
- Dados de arquivo
- Metadados do sistema de arquivos, como nomes de arquivos
Limitações
Considere as seguintes limitações:
O provisionamento dinâmico de instâncias do Managed Lustre protegidas por CMEK não é compatível com o Google Kubernetes Engine, mas o provisionamento estático é.
O Cluster Toolkit não oferece suporte a instâncias do Managed Lustre protegidas por CMEK.
Ao criar uma instância do Managed Lustre protegida por CMEK em um perímetro do VPC Service Controls, a chave do Cloud KMS precisa ser:
- No mesmo perímetro do VPC Service Controls; ou
- Acessível por uma regra de saída. Consulte Usar o VPC Service Controls com chaves de criptografia gerenciadas pelo cliente (CMEK) para mais detalhes.
Criar uma chave do Cloud KMS
Antes de criar uma instância do Lustre ativada para CMEK, você precisa ter um keyring e uma chave do Cloud KMS.
O Managed Lustre oferece suporte a três níveis de proteção:
- Software (
SOFTWARE) - Hardware (
HSM) - Externo pela Internet (
EXTERNAL)
Ao criar a chave, recomendamos que você crie a chave do Cloud KMS em um projeto diferente do projeto que contém a instância do Managed Lustre. Consulte Segregação de funções.
A chave do Cloud KMS precisa ser criada na mesma região da instância do Managed Lustre que você está criando.
Para criar uma chave:
- Se você ainda não tiver um, crie um keyring.
- Criar uma chave do Cloud KMS.
Conceder permissões do IAM ao agente de serviço do Managed Lustre
O Managed Lustre usa um agente de serviço para acessar seus recursos e realizar ações em seu nome. Você concede papéis do IAM ao agente de serviço para gerenciar o acesso dele. O agente de serviço do Managed Lustre é criado automaticamente quando você cria uma instância do Managed Lustre.
A identidade do agente de serviço está no formato
service-PROJECT_NUMBER@gcp-sa-lustre.iam.gserviceaccount.com.
Se você estiver criando o Managed Lustre protegido por CMEK usando o Google Cloud console, pule esta seção. O Google Cloud console concede as permissões necessárias como parte do fluxo de criação da instância.
Acesse Criar uma instância do Managed Lustre ativada para CMEK .
Criar ou recuperar o agente de serviço
Se você ainda não tiver um agente de serviço do Managed Lustre
Se você nunca criou uma instância do Managed Lustre no projeto, execute o comando a seguir para criar o agente de serviço manualmente:
gcloud beta services identity create \
--service=lustre.googleapis.com \
--project=PROJECT_NUMBER_OR_ID
Substitua PROJECT_NUMBER_OR_ID pelo número ou ID do projeto em que você quer criar a instância do Managed Lustre O resultado será o seguinte:
Service identity created: service-1234567890@gcp-sa-lustre.iam.gserviceaccount.com
Copie o valor da identidade do agente de serviço para usar na próxima etapa.
Se você já criou uma instância do Managed Lustre
Para criar a identidade do agente de serviço, receba o número do projeto. Um PROJECT_NUMBER não é o mesmo que um ID do projeto:
- Um ID do projeto é uma string exclusiva que pode ser uma combinação de letras, números e hifens. Você especifica um ID do projeto ao criar o projeto. Por exemplo,
example-project-123. - Um número do projeto é um identificador exclusivo gerado automaticamente para seu projeto que consiste apenas em números. Por exemplo,
1234567890.
Para receber o PROJECT_NUMBER de um determinado ID do projeto, use o
gcloud projects describecomando:gcloud projects describe PROJECT_ID --format="value(projectNumber)"- Um ID do projeto é uma string exclusiva que pode ser uma combinação de letras, números e hifens. Você especifica um ID do projeto ao criar o projeto. Por exemplo,
Copie o número do projeto retornado para a identidade do agente de serviço:
service-PROJECT_NUMBER@gcp-sa-lustre.iam.gserviceaccount.comCopie a identidade do agente de serviço para usar na próxima etapa.
Conceder permissões ao agente de serviço
O Managed Lustre precisa de autorização para realizar operações com a chave.
Você precisa conceder ao agente de serviço do Managed Lustre o papel do IAM roles/cloudkms.cryptoKeyEncrypterDecrypter na chave do Cloud KMS.
Use o comando gcloud kms keys add-iam-policy-binding:
gcloud kms keys add-iam-policy-binding KEY_NAME \
--keyring=KEY_RING \
--location=REGION \
--project=KMS_PROJECT_ID \
--member=serviceAccount:service-SERVICE_AGENT_IDENTITY \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter
Substitua as seguintes variáveis:
- KEY_NAME: o nome da chave do Cloud KMS.
- KEY_RING: o nome do keyring que contém a chave.
- REGION: a região em que o keyring está localizado.
- KMS_PROJECT_ID: o ID do projeto que contém a chave do Cloud KMS.
- SERVICE_AGENT_IDENTITY: a identidade do agente de serviço do Managed Lustre da etapa anterior, no formato:
service-PROJECT_NUMBER@gcp-sa-lustre.iam.gserviceaccount.com.
Criar uma instância do Managed Lustre ativada para CMEK
Para criar uma instância do Managed Lustre protegida por CMEK:
gcloud
Para criar uma instância protegida por CMEK usando gcloud, siga as
etapas em Criar uma instância. Especifique o identificador da chave como o valor de --kms-key-name, conforme mostrado abaixo:
gcloud lustre instance create INSTANCE_ID \
--filesystem=FILESYSTEM_NAME \
--per-unit-storage-throughput=PERF_TIER \
--capacity-gib=CAPACITY_GIB \
--location=ZONE \
--network=NETWORK_NAME \
--project=PROJECT_ID \
--kms-key-name=projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME
A chave do Cloud KMS precisa existir na mesma região da instância do Managed Lustre que você está criando.
REST
Para criar uma instância protegida por CMEK usando a API REST, siga as
etapas em Criar uma instância. Especifique o identificador da chave como o valor de kmsKey, conforme mostrado abaixo:
POST https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances?instanceId=INSTANCE_NAME
Authorization: Bearer AUTH_TOKEN
{
"filesystem": "FILESYSTEM_NAME",
"perUnitStorageThroughput": PERF_TIER,
"capacityGib": CAPACITY_GIB,
"network": "NETWORK_NAME",
"kmsKey": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"
}
A chave do Cloud KMS precisa existir na mesma região da instância do Managed Lustre que você está criando.
Consulte a documentação de referência do recurso
Instance para uma lista completa de
campos e descrições.
Google Cloud Console do
Para criar uma instância protegida por CMEK usando o Google Cloud console, siga as etapas em Criar uma instância. Na página Criar instância do Google Cloud console:
Na seção Criptografia, selecione Chave do Cloud KMS.
Selecione Cloud KMS como o tipo de gerenciamento de chaves e selecione a chave. Se a chave estiver em um projeto diferente (recomendado), clique em Alternar projeto, selecione o projeto da chave e selecione a chave. A chave do Cloud KMS precisa existir na mesma região da instância do Managed Lustre que você está criando.
Se o agente de serviço do Managed Lustre não tiver as permissões necessárias para usar a CMEK, você receberá uma solicitação para conceder o papel
cloudkms.cryptoKeyEncrypterDecrypter. Clique em Conceder para aplicar o papel.
Se a chave do Cloud KMS não estiver disponível ou houver problemas de permissão ao iniciar a operação de criação, a operação falhará e retornará um erro FAILED_PRECONDITION.
Gerenciamento de chaves
As chaves do Cloud Key Management Service podem ser alternadas, desativadas, reativadas ou destruídas. Elas podem ficar indisponíveis por vários motivos.
Fazer rotação de uma chave
É possível alternar a chave do Cloud KMS. Fazer a rotação de uma chave cria uma nova versão de chave.
A rotação de uma chave não criptografa novamente os dados na instância do Managed Lustre. O Managed Lustre não oferece suporte à descriptografia ou à nova criptografia de dados.
A capacidade atual da instância do Managed Lustre continua criptografada pela versão da chave em uso quando a instância foi criada.
Quando você aumenta a capacidade de armazenamento da instância, a nova capacidade é protegida pela versão da chave que é primária quando você faz a solicitação de aumento de capacidade, e todos os dados gravados nessa capacidade são protegidos por essa versão da chave.
Isso significa que você pode ter várias versões de chave criptografando a instância do Managed Lustre, se tiver aumentado a capacidade da instância após a rotação da versão da chave.
Desativar uma chave
É possível desativar uma versão de chave. Durante o período em que qualquer versão de chave usada pela instância do Managed Lustre estiver desativada, a instância será suspensa. Para retomar a instância, retorne todas as versões de chave que protegem a instância para um estado disponível. Consulte Chaves indisponíveis para informações sobre instâncias suspensas.
Consulte Ativar e desativar versões de chave para mais informações.
Reativar uma chave
Se uma versão de chave estiver desativada, você poderá reativá-la pela API Cloud KMS. Consulte Ativar e desativar versões de chave.
Para retomar a instância do Managed Lustre, todas as versões da chave que estão criptografando a capacidade de armazenamento precisam ser ativadas ou restauradas.
Depois que todas as chaves necessárias retornarem ao estado ENABLED, o Managed Lustre detectará automaticamente as mudanças de chave e reiniciará a instância. O estado da instância se torna ACTIVE e o serviço do Managed Lustre retoma a operação normal. É possível realizar E/S e todas as outras operações de longa duração.
Destruir uma chave
As versões de chave do Cloud KMS podem ser destruídas, o que significa que o material da chave é excluído permanentemente.
As chaves do Cloud KMS não podem ser destruídas imediatamente. Em vez disso, é necessário programar uma versão de chave para destruição. Durante a duração programada, é possível restaurar uma versão de chave para cancelar a destruição. Consulte Destruir e restaurar versões de chave para mais detalhes.
Uma versão de chave programada para destruição está indisponível. Todas as instâncias do Managed Lustre protegidas por essa versão de chave são suspensas. Consulte Chaves indisponíveis para informações sobre instâncias suspensas.
Depois que uma versão de chave é destruída, ela não pode ser restaurada. A instância permanece suspensa permanentemente. A única operação disponível na instância do Managed Lustre é a exclusão da instância.
Chaves indisponíveis
Uma chave pode ficar indisponível pelos seguintes motivos:
- A chave está desativada.
- A chave é destruída ou programada para destruição.
- As permissões necessárias são removidas do agente de serviço.
- O faturamento está desativado no projeto da chave do Cloud KMS e permanece desativado por mais de uma hora.
- Uma chave externa permanece inacessível por mais de uma hora.
Nesses casos, em alguns minutos após o evento, a instância do Managed Lustre é desligada e o estado da instância é definido como SUSPENDED.
Uma instância SUSPENDED pode ser recuperada disponibilizando a chave novamente.
Os possíveis motivos de suspensão são os seguintes:
| Ação na chave | Estado da instância | Motivo da suspensão | Pode ser reativado |
|---|---|---|---|
| Desativar | SUSPENDED |
KEY_DISABLE |
Sim |
| Programar para destruição | SUSPENDED |
KEY_DESTROY_SCHEDULED |
Sim |
| Destruir | SUSPENDED |
KEY_DESTROY |
Não |
| Remover permissão | SUSPENDED |
PERMISSION_DENIED |
Sim |
| Desativar o faturamento por 1 hora | SUSPENDED |
BILLING_DISABLED |
Sim |
| Chave EKM inacessível por 1 hora | SUSPENDED |
EKM_KEY_UNREACHABLE |
Sim |
Quando uma instância é suspensa:
- As operações de longa duração, como atualizações de instância e importação/exportação, são bloqueadas e retornam um erro
FAILED_PRECONDITION. - As operações de E/S param de responder até que os nós do servidor sejam desligados. Isso ocorre em até 30 minutos.
- A única operação de longa duração permitida é
DeleteInstance.
As instâncias que foram suspensas por mais de quatro meses podem não ser retomadas.
Faturamento de instâncias suspensas
Se uma instância do Managed Lustre entrar no estado SUSPENDED devido à indisponibilidade da chave, você continuará acumulando cobranças pela instância. O estado de suspensão não pausa o faturamento. Para interromper as cobranças da instância, é necessário excluí-la.
Você também recebe uma cobrança separada do Cloud KMS para todas as versões de chave em uso.
Ver o uso da chave e listar as versões de chave
É possível conferir os Google Cloud recursos na sua organização que são protegidos pelas chaves do Cloud KMS. Consulte Ver o uso da chave para mais detalhes.
Para conferir a lista completa de versões de chave usadas pela instância do Managed Lustre, use o comando gcloud kms inventory search-protected-resources:
gcloud kms inventory search-protected-resources \
--keyname=projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME \
--scope=organizations/ORGANIZATION_ID \
--filter="name:projects/PROJECT_ID/locations/REGION/instances/INSTANCE_ID" \
--flatten="cryptoKeyVersions" \
--format="value(cryptoKeyVersions)"
Em que:
- ORGANIZATION_ID é o ID numérico da sua organização. Consulte Como conseguir o ID do recurso da sua organização.
Também é possível conferir informações da chave na página Inventário de chaves.
Acessar o inventário de chaves