Skip to main content
Uma versão mais recente deste produto está disponível.
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Comece a gerenciar aplicativos

Colaboradores

Depois de "Adicionar um cluster ao gerenciamento do Astra Control"instalar aplicativos no cluster (fora do Astra Control) e, em seguida, vá para a página aplicações no Astra Control para definir as aplicações e seus recursos.

Requisitos de gerenciamento de aplicativos

O Astra Control tem os seguintes requisitos de gerenciamento de aplicações:

  • Licenciamento: Para gerenciar aplicações usando o Astra Control Center, você precisa de uma licença do Astra Control Center.

  • Namespaces: Os aplicativos podem ser definidos em um ou mais namespaces especificados em um único cluster usando o Astra Control. Um aplicativo pode conter recursos que abrangem vários namespaces dentro do mesmo cluster. O Astra Control não dá suporte à capacidade de definir aplicações em vários clusters.

  • Storage class: Se você instalar um aplicativo com uma classe de armazenamento explicitamente definida e precisar clonar o aplicativo, o cluster de destino para a operação clone deve ter a classe de armazenamento especificada originalmente. Clonar um aplicativo com uma classe de storage definida explicitamente para um cluster que não tenha a mesma classe de storage falhará.

  • Recursos do Kubernetes: As aplicações que usam recursos do Kubernetes não coletados pelo Astra Control podem não ter recursos completos de gerenciamento de dados do aplicativo. O Astra Control coleta os seguintes recursos do Kubernetes:

    ClusterRole

    ClusterRoleBinding

    ConfigMap

    CronJob

    CustomResourceDefinition

    CustomResource

    DaemonSet

    DeploymentConfig

    HorizontalPodAutoscaler

    Ingress

    MutatingWebhook

    NetworkPolicy

    PersistentVolumeClaim

    Pod

    PodDisruptionBudget

    PodTemplate

    ReplicaSet

    Role

    RoleBinding

    Route

    Secret

    Service

    ServiceAccount

    StatefulSet

    ValidatingWebhook

Métodos de instalação de aplicativos suportados

O Astra Control é compatível com os seguintes métodos de instalação de aplicações:

  • Arquivo manifesto: O Astra Control suporta aplicativos instalados a partir de um arquivo manifesto usando kubectl. Por exemplo:

    kubectl apply -f myapp.yaml
  • Helm 3: Se você usar o Helm para instalar aplicativos, o Astra Control requer o Helm versão 3. O gerenciamento e clonagem de aplicativos instalados com o Helm 3 (ou atualizados do Helm 2 para o Helm 3) são totalmente compatíveis. O gerenciamento de aplicativos instalados com o Helm 2 não é suportado.

  • Aplicativos implantados pelo operador: O Astra Control suporta aplicativos instalados com operadores com escopo de namespace que são, em geral, projetados com uma arquitetura "pass-by-value" em vez de "pass-by-reference". Um operador e o aplicativo que ele instala devem usar o mesmo namespace; talvez seja necessário modificar o arquivo .yaml de implantação para que o operador garanta que esse seja o caso.

    A seguir estão alguns aplicativos de operador que seguem estes padrões:

    • "Apache K8ssandra"

      Observação Para K8ssandra, são suportadas as operações de restauração no local. Uma operação de restauração para um novo namespace ou cluster requer que a instância original do aplicativo seja removida. Isto destina-se a garantir que as informações do grupo de pares transportadas não conduzam à comunicação entre instâncias. A clonagem da aplicação não é suportada.
    • "Jenkins CI"

    • "Cluster Percona XtraDB"

    O Astra Control pode não ser capaz de clonar um operador projetado com uma arquitetura "pass-by-reference" (por exemplo, o operador CockroachDB). Durante esses tipos de operações de clonagem, o operador clonado tenta consultar os segredos do Kubernetes do operador de origem, apesar de ter seu próprio novo segredo como parte do processo de clonagem. A operação de clone pode falhar porque o Astra Control não conhece os segredos do Kubernetes no operador de origem.

Instale aplicativos no cluster

Depois de "adicionado o cluster" acessar o Astra Control, você poderá instalar aplicações ou gerenciar aplicações existentes no cluster. Qualquer aplicativo com escopo para um ou mais namespaces pode ser gerenciado.

Definir aplicações

Depois que o Astra Control descobrir namespaces em seus clusters, você pode definir as aplicações que deseja gerenciar. Você pode escolher para gerencie um aplicativo abrangendo um ou mais namespaces ou gerencie um namespace inteiro como uma única aplicação. Tudo se resume ao nível de granularidade de que você precisa para operações de proteção de dados.

Embora o Astra Control permita que você gerencie separadamente ambos os níveis da hierarquia (o namespace e os aplicativos nesse namespace ou spanning Namespaces), a prática recomendada é escolher um ou outro. As ações que você executa no Astra Control podem falhar se as ações ocorrerem ao mesmo tempo no nível do namespace e da aplicação.

Dica Como exemplo, você pode querer definir uma política de backup para "maria" que tenha uma cadência semanal, mas você pode precisar fazer backup do "mariadb" (que está no mesmo namespace) com mais frequência do que isso. Com base nessas necessidades, você precisaria gerenciar os aplicativos separadamente e não como um aplicativo de namespace único.
O que você vai precisar
Sobre esta tarefa

Definir recursos para gerenciar como um aplicativo

Você pode especificar o "Recursos do Kubernetes que compõem uma aplicação" que deseja gerenciar com o Astra Control. A definição de um aplicativo permite agrupar elementos do cluster do Kubernetes em um único aplicativo. Essa coleção de recursos do Kubernetes é organizada por critérios de seleção de namespace e rótulo.

A definição de uma aplicação oferece controle mais granular sobre o que incluir em uma operação do Astra Control, incluindo clone, snapshot e backups.

Aviso Ao definir aplicativos, certifique-se de que você não inclua um recurso Kubernetes em vários aplicativos com políticas de proteção. A sobreposição de políticas de proteção em recursos do Kubernetes pode causar conflitos de dados. Leia mais em um exemplo.
Cuidado

Executar uma operação de restauração no local em um aplicativo que compartilhe recursos com outro aplicativo pode ter resultados não desejados. Todos os recursos compartilhados entre os aplicativos são substituídos quando uma restauração no local é executada em um dos aplicativos. Por exemplo, o cenário a seguir cria uma situação indesejável ao usar a replicação do NetApp SnapMirror:

  1. Você define o aplicativo app1 usando o namespace ns1.

  2. Você configura uma relação de replicação para `app1`o .

  3. Você define o app2 aplicativo (no mesmo cluster) usando os namespaces e ns1 ns2.

  4. Você configura uma relação de replicação para `app2`o .

  5. Inverta a replicação para app2`o . Isso faz com que o `app1 aplicativo no cluster de origem seja desativado.

<strong>Leia </strong> sobre a adição de recursos com escopo de cluster aos namespaces do aplicativo.

É possível importar recursos de cluster associados aos recursos de namespace, além dos recursos do Astra Control incluídos automaticamente. Você pode adicionar uma regra que incluirá recursos de um grupo específico, tipo, versão e, opcionalmente, rótulo. Você pode querer fazer isso se houver recursos que o Astra Control não inclui automaticamente.

Não é possível excluir nenhum dos recursos com escopo de cluster que sejam incluídos automaticamente pelo Astra Control.

Você pode adicionar o seguinte apiVersions (que são os grupos combinados com a versão da API):

Tipo de recurso ApiVersions (versão do grupo)

ClusterRole

rbac.authorization.k8s.io/v1

ClusterRoleBinding

rbac.authorization.k8s.io/v1

CustomResource

apipextensions.k8s.io/v1, apipextensions.k8s.io/v1beta1

CustomResourceDefinition

apipextensions.k8s.io/v1, apipextensions.k8s.io/v1beta1

MutatingWebhookConfiguration

admissionregistration.k8s.io/v1

ValidatingWebhookConfiguration

admissionregistration.k8s.io/v1

Passos
  1. Na página aplicativos, selecione Definir.

  2. Na janela Definir aplicativo, insira o nome do aplicativo.

  3. Escolha o cluster no qual seu aplicativo está sendo executado na lista suspensa Cluster.

  4. Escolha um namespace para sua aplicação na lista suspensa namespace.

    Observação As aplicações podem ser definidas em um ou mais namespaces especificados em um único cluster usando o Astra Control. Um aplicativo pode conter recursos que abrangem vários namespaces dentro do mesmo cluster. O Astra Control não dá suporte à capacidade de definir aplicações em vários clusters.
  5. (Opcional) Insira um rótulo para os recursos do Kubernetes em cada namespace. Você pode especificar um único rótulo ou critério de seleção de rótulo (consulta).

    Dica Para saber mais sobre rótulos do Kubernetes, "Consulte a documentação oficial do Kubernetes".
  6. (Opcional) Adicione namespaces adicionais para o aplicativo selecionando Adicionar namespace e escolhendo o namespace na lista suspensa.

  7. (Opcional) Digite critérios de seleção de rótulo ou rótulo único para quaisquer namespaces adicionais que você adicionar.

  8. (Opcional) para incluir recursos com escopo de cluster além daqueles que o Astra Control inclui automaticamente, marque incluir recursos adicionais com escopo de cluster e conclua o seguinte:

    1. Selecione Adicionar regra de inclusão.

    2. Group: Na lista suspensa, selecione o grupo de recursos da API.

    3. Kind: Na lista suspensa, selecione o nome do esquema do objeto.

    4. Versão: Insira a versão da API.

    5. * Seletor de etiquetas*: Opcionalmente, inclua um rótulo para adicionar à regra. Este rótulo é usado para recuperar apenas os recursos correspondentes a esse rótulo. Se você não fornecer um rótulo, o Astra Control coletará todas as instâncias do tipo de recurso especificado para esse cluster.

    6. Revise a regra criada com base em suas entradas.

    7. Selecione Adicionar.

      Dica Você pode criar quantas regras de recursos com escopo de cluster quiser. As regras aparecem no Resumo da aplicação definida.
  9. Selecione Definir.

  10. Depois de selecionar define, repita o processo para outros aplicativos, conforme necessário.

Depois de concluir a definição de uma aplicação, a aplicação aparece Healthy no estado na lista de aplicações na página aplicações. Agora você pode cloná-lo e criar backups e snapshots.

Observação O aplicativo que você acabou de adicionar pode ter um ícone de aviso na coluna protegido, indicando que ele ainda não foi feito backup e ainda não está programado para backups.
Dica Para ver os detalhes de uma aplicação específica, selecione o nome da aplicação.

Para ver os recursos adicionados a este aplicativo, selecione a guia recursos. Selecione o número após o nome do recurso na coluna recurso ou insira o nome do recurso na Pesquisa para ver os recursos adicionais com escopo de cluster incluídos.

Defina um namespace para gerenciar como um aplicativo

É possível adicionar todos os recursos do Kubernetes em um namespace ao gerenciamento do Astra Control definindo os recursos desse namespace como uma aplicação. Esse método é preferível à definição de aplicativos individualmente se você pretende gerenciar e proteger todos os recursos em um namespace específico de uma maneira semelhante e em intervalos comuns.

Passos
  1. Na página clusters, selecione um cluster.

  2. Selecione a guia namespaces.

  3. Selecione o menu ações para o namespace que contém os recursos do aplicativo que você deseja gerenciar e selecione Definir como aplicativo.

    Dica Se você quiser definir vários aplicativos, selecione na lista namespaces e selecione o botão ações no canto superior esquerdo e selecione Definir como aplicativo. Isso definirá vários aplicativos individuais em seus namespaces individuais. Para aplicações com vários namespace, Definir recursos para gerenciar como um aplicativoconsulte .
    Observação Marque a caixa de seleção Mostrar namespaces do sistema para revelar namespaces do sistema que geralmente não são usados no gerenciamento de aplicativos por padrão. Uma captura de tela que mostra a opção <strong>Mostrar namespaces do sistema</strong> que está disponível na guia namespaces. "Leia mais".

Após a conclusão do processo, os aplicativos associados ao namespace aparecem na Associated applications coluna.

E quanto aos namespaces do sistema?

O Astra Control também descobre namespaces do sistema em um cluster do Kubernetes. Nós não mostramos esses namespaces do sistema por padrão, porque é raro que você precise fazer backup dos recursos do aplicativo do sistema.

Você pode exibir namespaces do sistema na guia namespaces para um cluster selecionado selecionando a caixa de seleção Mostrar namespaces do sistema.

Uma captura de tela que mostra a opção <strong>Mostrar namespaces do sistema</strong> que está disponível na guia namespaces.

Dica O Astra Control em si não é um aplicativo padrão; é um "aplicativo do sistema". Você não deve tentar gerenciar o Astra Control por si só. O próprio Astra Control não é mostrado por padrão para gerenciamento.

Exemplo: Política de proteção separada para versões diferentes

Neste exemplo, a equipe de devops está gerenciando uma implantação de versão "canário". O cluster da equipe tem três pods executando o nginx. Dois dos pods são dedicados à liberação estável. O terceiro pod é para o lançamento canário.

O administrador do Kubernetes da equipe de devops adiciona o rótulo deployment=stable aos pods de versão estáveis. A equipe adiciona o rótulo deployment=canary ao pod de lançamento canário.

A versão estável da equipe inclui um requisito para instantâneos por hora e backups diários. O lançamento canário é mais efêmero, então eles querem criar uma política de proteção menos agressiva e de curto prazo para qualquer coisa rotulada . deployment=canary

Para evitar possíveis conflitos de dados, o administrador criará dois aplicativos: Um para a versão "canary" e outro para a versão "stable". Isso mantém os backups, snapshots e operações de clone separados para os dois grupos de objetos Kubernetes.