Skip to main content
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Defina una aplicación para administrar con Trident Protect

Colaboradores netapp-aruldeepa

Puede definir una aplicación que desee administrar con Trident Protect creando un CR de aplicación y un CR de AppVault asociado.

Cree un CR de AppVault

Debe crear un CR de AppVault que se utilizará al realizar operaciones de protección de datos en la aplicación, y el CR de AppVault debe residir en el clúster donde está instalado Trident Protect. AppVault CR es específico de su entorno; para ver ejemplos de AppVault CRS, consulte "Recursos personalizados de AppVault."

Defina una aplicación

Debe definir cada aplicación que desee gestionar con Trident Protect. Puede definir una aplicación para la gestión creando manualmente una CR de aplicación o mediante el uso de la CLI de Trident Protect.

Agregar una aplicación mediante un CR
Pasos
  1. Cree el archivo CR de la aplicación de destino:

    1. Cree el archivo de recursos personalizados (CR) y asígnele un nombre (por ejemplo, maria-app.yaml).

    2. Configure los siguientes atributos:

      • metadata.name: (required) El nombre del recurso personalizado de la aplicación. Tenga en cuenta el nombre que elija porque otros archivos CR necesarios para las operaciones de protección hacen referencia a este valor.

      • spec.includedNamespaces: (required) Utilice el espacio de nombres y el selector de etiquetas para especificar los espacios de nombres y recursos que utiliza la aplicación. El espacio de nombres de la aplicación debe formar parte de esta lista. El selector de etiquetas es opcional y se puede utilizar para filtrar recursos dentro de cada espacio de nombres especificado.

      • spec.includedClusterScopedResources: (Optional) Utilice este atributo para especificar los recursos de ámbito de cluster que se incluirán en la definición de la aplicación. Este atributo le permite seleccionar estos recursos en función de su grupo, versión, tipo y etiquetas.

        • GroupVersionKind: (required) Especifica el grupo API, la versión y el tipo del recurso de ámbito de cluster.

        • LabelSelector: (Optional) Filtra los recursos de ámbito de cluster en función de sus etiquetas.

      • metadata.annotations.protect.trident.netapp.io/skip-vm-freeze: (Opcional) Esta anotación solo es aplicable a aplicaciones definidas desde máquinas virtuales, como en entornos KubeVirt, donde los sistemas de archivos se congelan antes que las instantáneas. Especifique si esta aplicación puede escribir en el sistema de archivos durante una instantánea. Si se define en true, la aplicación ignora la configuración global y puede escribir en el sistema de archivos durante una instantánea. Si se define en false, la aplicación ignora la configuración global y el sistema de archivos se congela durante una instantánea. Si se especifica pero la aplicación no tiene máquinas virtuales en la definición de la aplicación, la anotación se ignora. Si no se especifica, la aplicación sigue la "Valor de congelación de Global Trident Protect".

Si necesita aplicar esta anotación después de crear una aplicación, puede utilizar el siguiente comando:

kubectl annotate application -n <application CR namespace> <application CR name> protect.trident.netapp.io/skip-vm-freeze="true"

+
Ejemplo YAML:

+

apiVersion: protect.trident.netapp.io/v1
kind: Application
metadata:
  annotations:
    protect.trident.netapp.io/skip-vm-freeze: "false"
  name: my-app-name
  namespace: my-app-namespace
spec:
  includedNamespaces:
    - namespace: namespace-1
      labelSelector:
        matchLabels:
          app: example-app
    - namespace: namespace-2
      labelSelector:
        matchLabels:
          app: another-example-app
  includedClusterScopedResources:
    - groupVersionKind:
        group: rbac.authorization.k8s.io
        kind: ClusterRole
        version: v1
      labelSelector:
        matchLabels:
          mylabel: test
  1. Después de crear la CR de la aplicación para que coincida con su entorno, aplique la CR. Por ejemplo:

    kubectl apply -f maria-app.yaml
Pasos
  1. Cree y aplique la definición de la aplicación utilizando uno de los siguientes ejemplos, sustituyendo valores entre paréntesis por información de su entorno. Puede incluir espacios de nombres y recursos en la definición de la aplicación mediante listas separadas por comas con los argumentos que se muestran en los ejemplos.

    Opcionalmente, puede usar una anotación cuando cree una aplicación para especificar si la aplicación puede escribir en el sistema de archivos durante una instantánea. Esto solo es aplicable a las aplicaciones definidas desde máquinas virtuales, como en entornos KubeVirt, donde los sistemas de archivos se congelan antes que las instantáneas. Si establece la anotación en true, la aplicación ignora la configuración global y puede escribir en el sistema de archivos durante una instantánea. Si se establece en false, la aplicación ignora la configuración global y el sistema de archivos se bloquea durante una instantánea. Si utiliza la anotación pero la aplicación no tiene máquinas virtuales en la definición de la aplicación, la anotación se ignora. Si no utiliza la anotación, la aplicación sigue la "Valor de congelación de Global Trident Protect".

    Para especificar la anotación al utilizar la CLI para crear una aplicación, puede utilizar el --annotation indicador.

    • Cree la aplicación y utilice la configuración global para el comportamiento de congelación del sistema de archivos:

      tridentctl-protect create application <my_new_app_cr_name> --namespaces <namespaces_to_include> --csr <cluster_scoped_resources_to_include> --namespace <my-app-namespace>
    • Cree la aplicación y configure la configuración de la aplicación local para el comportamiento de congelación del sistema de archivos:

      tridentctl-protect create application <my_new_app_cr_name> --namespaces <namespaces_to_include> --csr <cluster_scoped_resources_to_include> --namespace <my-app-namespace> --annotation protect.trident.netapp.io/skip-vm-freeze=<"true"|"false">