Criar e configurar perfis de aplicativo
Nesta página, explicamos como criar e gerenciar os perfis de aplicativo de uma instância do Bigtable, ou perfis de app. Além disso, mostramos como usar um perfil de aplicativo personalizado para se conectar ao Bigtable.
Antes de ler esta página, é preciso entender o que são "perfis de aplicativos" e como eles funcionam. Em particular, entenda a diferença entre um perfil de app padrão, um perfil de app configurado para usar a computação padrão, e um perfil de app do Data Boost, um perfil de app que usa a computação sem servidor do Data Boost para executar jobs de leitura de alto rendimento. Para mais informações sobre o Data Boost e como ele difere da computação usando nós de cluster provisionados, consulte a Visão geral do Data Boost.
Se você estiver usando perfis de app padrão para configurar a replicação, também é preciso conhecer a visão geral da replicação do Bigtable, além de analisar os exemplos de configurações de replicação e decidir quais são as melhores configurações para seu caso de uso.
Funções exigidas
Para receber as permissões necessárias para criar, configurar ou excluir um perfil de app,
peça ao administrador para conceder a você o
Papel do IAM de administrador do Bigtable (roles/bigtable.admin
) na instância.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.
Criar um perfil de app
Crie muitos perfis de app personalizados diferentes para cada instância. Use perfis de app personalizados para controlar como cada aplicativo ou função do aplicativo interage com uma instância. Por exemplo, use um perfil para um aplicativo em lote para isolar o tráfego para um único cluster e usar outro perfil para oferecer alta disponibilidade a outro aplicativo.
Criar um perfil de app padrão
Para criar um perfil de app padrão, siga estas etapas:
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância em que você quer criar um perfil de aplicativo.
No painel esquerdo, clique em Perfis de aplicativo.
Clique em Criar perfil de aplicativo.
Selecione Padrão.
Clique em Próxima.
Informe o código do perfil de aplicativo.
O código do perfil de aplicativo é um identificador permanente do perfil de aplicativo. Seu aplicativo mostra esse código quando se conecta ao Bigtable.
Digite uma descrição do perfil de aplicativo.
Em Roteamento de cluster, selecione o roteamento de cluster único ou de vários clusters. Saiba mais
Se você escolher Cluster único:
Use o menu suspenso para selecionar o cluster para onde as solicitações serão encaminhadas.
Se você precisar ativar transações de linha única, marque a caixa de seleção Permitir transações de linha única.
Se você escolher Vários clusters:
- Para rotear solicitações para qualquer cluster na instância, selecione Qualquer cluster na lista suspensa Grupo de clusters.
- Para limitar o roteamento de solicitações a apenas alguns clusters na instância (roteamento do grupo de clusters), marque a caixa de seleção de cada cluster que você quer incluir no grupo de roteamento e clique em OK.
Clique em Criar para criar o perfil de aplicativo.
Atualize o código do aplicativo para se conectar ao Bigtable para que ele use o novo perfil de aplicativo.
gcloud
Se você não souber o ID da instância, use o comando
bigtable instances list
para ver uma lista das instâncias do projeto:gcloud bigtable instances list
Use o comando
bigtable app-profiles create
para criar um perfil de aplicativo:gcloud bigtable app-profiles create APP_PROFILE_ID \ --instance=INSTANCE_ID \ [--description=DESCRIPTION] \ [--force] \ [--route-any] \ [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...] [--route-to=CLUSTER_ID] \ [--transactional-writes] \ [--priority=PRIORITY]
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instância
O comando aceita as sinalizações opcionais a seguir:
--description=DESCRIPTION
: é uma descrição detalhada do perfil do app.--force
: ignora os avisos sobre possíveis problemas e conflitos com outros perfis de app.--route-any
: ativa o roteamento de vários clusters para encaminhar solicitações a qualquer cluster disponível.Não é possível combinar essa sinalização com as sinalizações
--route-to
ou--transactional-writes
--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...
: uma lista de clusters para os quais as solicitações precisam ser roteadas. Use essa opção se quiser rotear solicitações para apenas alguns dos clusters na instância.Não é possível combinar essa sinalização com as sinalizações
--route-to
ou--transactional-writes
--route-to=CLUSTER_ID
: código do cluster ao qual todas as solicitações serão roteadas. Essa sinalização ativa o encaminhamento de cluster único.Não é possível combinar essa sinalização com a sinalização
--route-any
.--transactional-writes
: ativa transações de linha única no perfil de app.Não é possível combinar essa sinalização com as sinalizações
--route-any
ou--restrict-to
.--priority=PRIORITY
: o nível de prioridade que o perfil do app precisa usar. Os valores aceitos sãoPRIORITY_HIGH
,PRIORITY_MEDIUM
ouPRIORITY_LOW
.
Atualize o código do aplicativo quando se conectar ao Bigtable para que ele use o novo perfil de aplicativo.
Criar um perfil do app Data Boost
Para criar um perfil de app do Data Boost, que usa a computação sem servidor do Data Boost, siga estas etapas. Para garantir que sua carga de trabalho seja compatível com o Data Boost, analise as limitações.
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância em que você quer criar um perfil de aplicativo.
No painel esquerdo, clique em Perfis de aplicativo.
Clique em Criar perfil de aplicativo.
Selecione Data Boost.
Clique em Próxima.
Informe o código do perfil de aplicativo.
O código do perfil de aplicativo é um identificador permanente do perfil de aplicativo. Seu aplicativo mostra esse código quando se conecta ao Bigtable.
Digite uma descrição do perfil de aplicativo.
Em Roteamento do cluster, selecione o cluster para onde as solicitações serão encaminhadas.
Clique em Criar perfil de app para criar o perfil de app.
Atualize o código do aplicativo quando se conectar ao Bigtable para que ele use o novo perfil de aplicativo.
gcloud
Se você não souber o ID da instância, use o comando
bigtable instances list
para ver uma lista das instâncias do projeto:gcloud bigtable instances list
Use o comando
gcloud beta bigtable app-profiles create
para criar um perfil de aplicativo:gcloud bigtable app-profiles create APP_PROFILE_ID \ --instance=INSTANCE_ID \ --data-boost \ --data-boost-compute-billing-owner=HOST_PAYS \ --route-to=CLUSTER_ID
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instânciaCLUSTER_ID
: código do cluster ao qual todas as solicitações serão roteadas. Essa sinalização ativa o encaminhamento de cluster único.
Conectar-se a um perfil de app personalizado
Depois de criar um perfil de aplicativo personalizado, atualize seu código para que o aplicativo use o perfil de aplicativo quando se conectar ao Bigtable.
Os exemplos a seguir mostram como especificar um perfil de aplicativo quando o aplicativo cria
um cliente do Bigtable e se conecta a uma instância. Substitua [APP_PROFILE_ID]
pelo valor adequado.
C#
var client = BigtableClient.Create(appProfileId: "[APP_PROFILE_ID]");
Go
clientConf := bigtable.ClientConfig{AppProfile:"[APP_PROFILE_ID]"}
client, err = bigtable.NewClientWithConfig(ctx, project, instance, clientConf)
HBase Java
// If using BigtableOptions directly:
optionsBuilder.setAppProfileId("[APP_PROFILE_ID]");
// If using BigtableOptionsFactory:
configuration.set(BigtableOptionsFactory.APP_PROFILE_ID_KEY, "[APP_PROFILE_ID]");
// If using system properties, set "google.bigtable.app_profile.id" to
// "[APP_PROFILE_ID]"
// If using CloudBigtableIO for Cloud Dataflow:
config.withConfiguration(BigtableOptionsFactory.APP_PROFILE_ID_KEY,
"[APP_PROFILE_ID]");
Node.js
const bigtable = new Bigtable({appProfileId: '[APP_PROFILE_ID]'});
Python
from google.cloud import bigtable
client = bigtable.Client(project=project_id)
instance = client.instance(instance_id)
table = bigtable.table.Table(table_id, instance, '[APP_PROFILE_ID]')
Atualizar um perfil de app
Você pode ver os perfis de aplicativo de uma instância e atualizar as configurações a qualquer momento. O Cloud Bigtable avisa sobre atualizações que possam causar mudanças de comportamento inesperadas.
Para saber como atualizar um perfil de app do padrão para o Data Boost ou do Data Boost para o padrão, consulte Converter um perfil de app.
Atualizar um perfil de app padrão
Para atualizar um perfil de app padrão, siga estas etapas:
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Na coluna Perfis de aplicativo, clique no perfil de aplicativo que você quer visualizar ou atualizar.
Caso não encontre o perfil de aplicativo que quer editar, você poderá ver uma lista completa clicando no nome da instância e em Perfis de aplicativo no painel esquerdo.
Atualize as configurações conforme necessário e clique em Salvar ou em Cancelar para sair sem salvar.
gcloud
Se você não souber o ID da instância, use o comando
bigtable instances list
para ver uma lista das instâncias do projeto:gcloud bigtable instances list
Caso você não saiba o ID do perfil de aplicativo, use o comando
bigtable app-profiles list
para ver uma lista de perfis de aplicativo da instância:gcloud bigtable app-profiles list --instance=INSTANCE_ID
Substitua
INSTANCE_ID
pelo identificador permanente da instância.(Opcional) Use o comando
bigtable app-profiles describe
para ver as configurações do perfil de aplicativo:gcloud bigtable app-profiles describe APP_PROFILE_ID \ --instance=INSTANCE_ID
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instância
Use o comando
bigtable app-profiles update
para atualizar as configurações do perfil de aplicativo:gcloud bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ [--description=DESCRIPTION] \ [--force] \ [--route-any] \ [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...] [--route-to=CLUSTER_ID] \ [--transactional-writes]
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instância
O comando aceita as sinalizações opcionais a seguir:
--description=DESCRIPTION
: é uma descrição detalhada do perfil do app.--force
: ignora os avisos sobre possíveis problemas e conflitos com outros perfis de app.--route-any
: ativa o roteamento de vários clusters para encaminhar solicitações a qualquer cluster disponível.Não é possível combinar essa sinalização com as sinalizações
--route-to
ou--transactional-writes
--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...
: uma lista de clusters para os quais as solicitações precisam ser roteadas. Use essa opção se quiser rotear solicitações para apenas alguns dos clusters na instância.Não é possível combinar essa sinalização com as sinalizações
--route-to
ou--transactional-writes
--route-to=CLUSTER_ID
: código do cluster ao qual todas as solicitações serão roteadas. Essa sinalização ativa o encaminhamento de cluster único.Não é possível combinar essa sinalização com a sinalização
--route-any
.--transactional-writes
: ativa transações de linha única no perfil de app.Não é possível combinar essa sinalização com a sinalização
--route-any
.--priority=PRIORITY
: o nível de prioridade usado pelo perfil de app. Os valores aceitos sãoPRIORITY_HIGH
,PRIORITY_MEDIUM
ouPRIORITY_LOW
.
Atualizar um perfil de app do Data Boost
Para atualizar o cluster que um perfil de app do Data Boost lê, siga estas etapas:
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Na coluna Perfis de aplicativo, clique no perfil de aplicativo que você quer visualizar ou atualizar.
Caso não encontre o perfil de app que quer editar, você poderá conferir uma lista completa clicando no nome da instância e em Perfis de aplicativo no painel esquerdo.
Selecione o novo cluster para onde o tráfego será roteado e clique em Salvar.
gcloud
Se você não souber o ID da instância, use o comando
bigtable instances list
para ver uma lista das instâncias do projeto:gcloud bigtable instances list
Caso você não saiba o ID do perfil de aplicativo, use o comando
bigtable app-profiles list
para ver uma lista de perfis de aplicativo da instância:gcloud bigtable app-profiles list --instance=INSTANCE_ID
Substitua
INSTANCE_ID
pelo identificador permanente da instância.(Opcional) Use o comando
bigtable app-profiles describe
para ver as configurações do perfil de aplicativo:gcloud bigtable app-profiles describe APP_PROFILE_ID \ --instance=INSTANCE_ID
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instância
Use o comando
gcloud beta bigtable app-profiles update
para atualizar as configurações do perfil de aplicativo:gcloud beta bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ --route-to=CLUSTER_ID
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instânciaCLUSTER_ID
: o ID do novo cluster a ser lido
Converter um perfil de app
É possível converter um perfil de app padrão em um perfil do Data Boost ou converter um perfil do Data Boost em um perfil de app padrão. Antes de converter um perfil de app, consulte as orientações em Alterações no perfil de app.
Converter do padrão para o Data Boost
Antes de atualizar um perfil de app do padrão (nós provisionados para computação) para a computação sem servidor do Data Boost, verifique as métricas de qualificação do Data Boost. Também é importante conhecer as limitações do Data Boost.
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Na coluna Perfis de aplicativo, clique no perfil que você quer atualizar.
Caso não encontre o perfil de aplicativo que quer editar, você poderá ver uma lista completa clicando no nome da instância e em Perfis de aplicativo no painel esquerdo.
Selecione Data Boost.
Selecione o cluster para onde as solicitações serão encaminhadas.
Clique em Salvar.
gcloud
Se você não souber o ID da instância, use o comando
bigtable instances list
para ver uma lista das instâncias do projeto:gcloud bigtable instances list
Caso você não saiba o ID do perfil de aplicativo, use o comando
bigtable app-profiles list
para ver uma lista de perfis de aplicativo da instância:gcloud bigtable app-profiles list --instance=INSTANCE_ID
Substitua
INSTANCE_ID
pelo identificador permanente da instância.(Opcional) Use o comando
bigtable app-profiles describe
para ver as configurações do perfil de aplicativo:gcloud bigtable app-profiles describe APP_PROFILE_ID \ --instance=INSTANCE_ID
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instância
Use o comando
gcloud beta bigtable app-profiles update
para converter um perfil de app do padrão para o Data Boost:gcloud bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ --data-boost \ --data-boost-compute-billing-owner=HOST_PAYS \ --route-to=CLUSTER_ID
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instânciaCLUSTER_ID
: código do cluster ao qual todas as solicitações serão roteadas. Essa sinalização ativa o encaminhamento de cluster único.
Converter do Data Boost para o padrão
Para mudar um perfil de app do Data Boost (computação sem servidor) para o padrão (nós provisionados para computação), siga estas etapas:
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Na coluna Perfis de aplicativo, clique no perfil que você quer atualizar.
Caso não encontre o perfil de aplicativo que quer editar, você poderá ver uma lista completa clicando no nome da instância e em Perfis de aplicativo no painel esquerdo.
Selecione Padrão.
Clique em Próxima.
Opcional: edite a descrição do perfil do app.
Em Roteamento de cluster, selecione o roteamento de cluster único ou de vários clusters. Saiba mais
Se você escolher Cluster único:
Use o menu suspenso para selecionar o cluster para onde as solicitações serão encaminhadas.
Se você precisar ativar transações de linha única, marque a caixa de seleção Permitir transações de linha única.
Se você escolher Vários clusters:
- Para rotear solicitações para qualquer cluster na instância, selecione Qualquer cluster na lista suspensa Grupo de clusters.
- Para limitar o roteamento de solicitações a apenas alguns clusters na instância (roteamento do grupo de clusters), marque a caixa de seleção de cada cluster que você quer incluir no grupo de roteamento e clique em OK.
Clique em Salvar.
gcloud
Se você não souber o ID da instância, use o comando
bigtable instances list
para ver uma lista das instâncias do projeto:gcloud bigtable instances list
Caso você não saiba o ID do perfil de aplicativo, use o comando
bigtable app-profiles list
para ver uma lista de perfis de aplicativo da instância:gcloud bigtable app-profiles list --instance=INSTANCE_ID
Substitua
INSTANCE_ID
pelo identificador permanente da instância.(Opcional) Use o comando
bigtable app-profiles describe
para ver as configurações do perfil de aplicativo:gcloud bigtable app-profiles describe APP_PROFILE_ID \ --instance=INSTANCE_ID
Use o comando
gcloud beta bigtable app-profiles update
para converter o perfil do app:gcloud bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ --standard \ [--route-any] \ [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...] [--route-to=CLUSTER_ID] \ [--transactional-writes]
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instância
O comando aceita as sinalizações opcionais a seguir:
--route-any
: ativa o roteamento de vários clusters para encaminhar solicitações a qualquer cluster disponível.Não é possível combinar essa sinalização com as sinalizações
--route-to
ou--transactional-writes
--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...
: uma lista de clusters para os quais as solicitações precisam ser roteadas. Use essa opção se quiser rotear solicitações para apenas alguns dos clusters na instância.Não é possível combinar essa sinalização com as sinalizações
--route-to
ou--transactional-writes
--route-to=CLUSTER_ID
: código do cluster ao qual todas as solicitações serão roteadas. Essa sinalização ativa o encaminhamento de cluster único.Não é possível combinar essa sinalização com a sinalização
--route-any
.--transactional-writes
: ativa transações de linha única no perfil de app.Não é possível combinar essa flag com as flags
--route-any
ou--restrict-to
.
Excluir um perfil de app
É possível excluir os perfis de aplicativo personalizados de uma instância, mas não o perfil de aplicativo padrão.
Para excluir um perfil de aplicativo personalizado:
Console
Abra a lista de instâncias do Bigtable no Console do Google Cloud.
Clique na instância em que está o perfil de aplicativo que você quer excluir.
No painel esquerdo, clique em Perfis de aplicativo.
Abra o menu mais ações
e clique em Excluir perfil de aplicativo. Uma caixa de diálogo de confirmação é exibida.Siga as instruções na caixa de diálogo de confirmação e clique em Excluir.
gcloud
Se você não souber o ID da instância, use o comando
bigtable instances list
para ver uma lista das instâncias do projeto:gcloud bigtable instances list
Caso você não saiba o ID do perfil de aplicativo, use o comando
bigtable app-profiles list
para ver uma lista de perfis de aplicativo da instância:gcloud bigtable app-profiles list --instance=INSTANCE_ID
Substitua
INSTANCE_ID
pelo identificador permanente da instância.Use o comando
bigtable app-profiles delete
para excluir o perfil do aplicativo:gcloud bigtable app-profiles delete APP_PROFILE_ID \ --instance=INSTANCE_ID \ [--force]
Preencha o seguinte:
APP_PROFILE_ID
: identificador permanente do perfil de aplicativo.INSTANCE_ID
: identificador permanente da instância
O comando aceita a seguinte sinalização opcional:
--force
: ignora os avisos sobre possíveis problemas e conflitos com outros perfis de app.