Ingress Controller de Citrix ADC

Actualizar el Citrix Ingress Controller

En este tema se explica cómo actualizar la instancia del Citrix Ingress Controller de Citrix para Citrix ADC CPX con el Citrix Ingress Controller de Citrix como implementaciones independientes del controlador de entrada de Citrix y sidecar.

Actualice Citrix ADC CPX con el Citrix Ingress Controller como sidecar

Para actualizar un Citrix ADC CPX con el Citrix Ingress Controller como sidecar, puede modificar el archivo de definición YAML asociado (por ejemplo, citrix-k8s-cpx-ingress.yml) o usar el gráfico Helm.

Si quiere actualizar modificando el archivo de definición YAML, lleve a cabo lo siguiente:

  1. Cambie la versión del Citrix Ingress Controller y la imagen de Citrix ADC CPX en la sección containers a lo siguiente:
    • Versión de Citrix ADC CPX: 13.0-83.27 (quay.io/citrix/citrix-k8s-cpx-ingress:13.0-83.27)
    • Versión del Citrix Ingress Controller: 1.26.7 (quay.io/citrix/citrix-k8s-ingress-controller:1.26.7)
  2. Actualiza el de la CluterRole siguiente manera:

    kind: ClusterRole
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: cic-k8s-role
    rules:
      - apiGroups: [""]
        resources: ["endpoints", "ingresses", "services", "pods", "secrets", "nodes", "routes", "namespaces"]
        verbs: ["get", "list", "watch"]
      # services/status is needed to update the loadbalancer IP in service status for integrating
      # service of type LoadBalancer with external-dns
      - apiGroups: [""]
        resources: ["services/status"]
        verbs: ["patch"]
      - apiGroups: ["extensions"]
        resources: ["ingresses", "ingresses/status"]
        verbs: ["get", "list", "watch"]
      - apiGroups: ["apiextensions.k8s.io"]
        resources: ["customresourcedefinitions"]
        verbs: ["get", "list", "watch"]
      - apiGroups: ["apps"]
        resources: ["deployments"]
        verbs: ["get", "list", "watch"]
      - apiGroups: ["citrix.com"]
        resources: ["rewritepolicies", "canarycrds", "authpolicies", "ratelimits"]
        verbs: ["get", "list", "watch"]
      - apiGroups: ["citrix.com"]
        resources: ["vips"]
        verb s: ["get", "list", "watch", "create", "delete"]
      - apiGroups: ["route.openshift.io"]
        resources: ["routes"]
        verbs: ["get", "list", "watch"]
    
  3. Guarde el archivo de definición YAML y vuelva a aplicarlo.

Actualizar un controlador de entrada independiente de Citrix a la versión 1.21.9

Para actualizar una instancia de controlador de entrada independiente de Citrix, puede modificar el archivo de definición YAML o usar el gráfico Helm.

Si quiere actualizar el Citrix Ingress Controller a la versión 1.21.9 modificando el archivo de definición YAML, lleve a cabo lo siguiente:

  1. Cambie la versión de la imagen del Citrix Ingress Controller en containers la sección. Por ejemplo, considere que tiene el siguiente archivo YAML.

    apiVersion: v1
    kind: Pod
    metadata:
      name: cic-k8s-ingress-controller
    
      labels:
        app: ...
    spec:
          serviceAccountName: ...
          containers:
          - name: cic-k8s-ingress-controller
            image: "citrix-k8s-ingress-controller:1.21.9"
            env: ...
            args: ...
    

    Debe cambiar la versión de la imagen a la versión 1.21.9. Por ejemplo, quay.io/citrix/citrix-k8s-ingress-controller:1.21.9.

  2. Actualiza el de la ClusterRole siguiente manera:

    kind: ClusterRole
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: cic-k8s-role
    rules:
      - apiGroups: [""]
        resources: ["endpoints", "ingresses", "pods", "secrets", "nodes", "routes", "namespaces"]
        verbs: ["get", "list", "watch"]
      # services/status is needed to update the loadbalancer IP in service status for integrating
      # service of type LoadBalancer with external-dns
      - apiGroups: [""]
        resources: ["services/status"]
        verbs: ["patch"]
      - apiGroups: [""]
        resources: ["services"]
        verbs: ["get", "list", "watch", "patch"]
      - apiGroups: ["extensions"]
        resources: ["ingresses", "ingresses/status"]
        verbs: ["get", "list", "watch"]
      - apiGroups: ["apiextensions.k8s.io"]
        resources: ["customresourcedefinitions"]
        verbs: ["get", "list", "watch"]
      - apiGroups: ["apps"]
        resources: ["deployments"]
        verbs: ["get", "list", "watch"]
      - apiGroups: ["citrix.com"]
        resources: ["rewritepolicies", "canarycrds", "authpolicies", "ratelimits"]
        verbs: ["get", "list", "watch"]
      - apiGroups: ["citrix.com"]
        resources: ["vips"]
        verbs: ["get", "list", "watch", "create", "delete"]
      - apiGroups: ["route.openshift.io"]
        resources: ["routes"]
        verbs: ["get", "list", "watch"]
    
  3. Guarde el archivo de definición YAML y vuelva a aplicarlo.

Actualizar el Citrix Ingress Controller