Requisitos para desplegar el controlador de entrada nativo de OCI como complemento de cluster
Descubra lo que tiene que hacer antes de desplegar el controlador de entrada nativo de OCI como complemento de cluster para equilibrar la carga y enrutar el tráfico entrante a los pods de servicio que se ejecutan en nodos de trabajador en un cluster de Kubernetes.
Antes de desplegar el controlador de entrada nativo de OCI como complemento de cluster:
- Cree un nuevo cluster o identifique un cluster existente que tenga redes de pod nativas de VCN o superposición de franela como tipo de red. El cluster puede ser un cluster mejorado o un cluster básico. El cluster debe ejecutar la versión 1.28 o posterior de Kubernetes. Consulte Creación de un cluster.
- Configure reglas de seguridad del equilibrador de carga para permitir el tráfico entrante y saliente hacia y desde la subred del equilibrador de carga. Consulte Load Balancer Subnet Configuration.
- Configure un principal de instancia, un principal de usuario o un principal de identidad de carga de trabajo para permitir que el controlador de entrada nativo de OCI acceda a otros servicios y recursos de Oracle Cloud Infrastructure. Consulte Configuración de un principal de instancia, principal de usuario o principal de identidad de carga de trabajo para activar el acceso a los servicios y recursos de OCI.
- Otorgue permisos al principal de instancia, principal de usuario o principal de identidad de carga de trabajo para permitir que el controlador de entrada nativo de OCI acceda a los recursos. Consulte Otorgamiento de permisos al complemento de cluster de controlador de entrada nativo de OCI.
- Instale el gestor de certificados para generar y gestionar los certificados TLS requeridos por el servidor de webhook que admite la función de puertas de preparación de pod. Consulte Installing cert-manager.
Configuración de un principal de instancia, un principal de usuario o un principal de identidad de carga de trabajo para permitir el acceso a los servicios y recursos de OCI
Para crear un equilibrador de carga y enrutar el tráfico entrante, el controlador de entrada nativo de OCI, ya sea instalado como programa independiente o como complemento de cluster, realiza acciones en otros recursos del servicio de Oracle Cloud Infrastructure (incluidos el servicio Load Balancer y el servicio Certificates). Para realizar esas acciones en los recursos del servicio OCI, el pod de controlador de entrada nativo de OCI utiliza las credenciales de un actor (o principal) autorizado. Actualmente puede configurar los siguientes tipos de principal para permitir que el controlador de entrada nativo de OCI realice acciones en los recursos del servicio OCI:
- Principal de instancia: el controlador de entrada nativo de OCI utiliza la identidad de la instancia en la que se está ejecutando. Consulte Uso de principales de instancia para activar el acceso a los servicios y recursos de OCI.
- Principal de usuario: el controlador de entrada nativo de OCI utiliza la identidad de un usuario de OCI. Consulte Uso de principales de usuario para activar el acceso a los servicios y recursos de OCI.
- Principal de identidad de carga de trabajo: el controlador de entrada nativo de OCI utiliza la identidad de un recurso de carga de trabajo que se ejecuta en un cluster de Kubernetes. Consulte Uso de principales de identidad de carga de trabajo para permitir el acceso a los servicios y recursos de OCI.
Nota:
- El uso de principales de instancia para permitir que el controlador de entrada nativo de OCI acceda a los servicios y recursos de OCI no está soportado en clusters con nodos virtuales.
- El uso de principales de identidad de carga de trabajo para permitir que el controlador de entrada nativo de OCI acceda a los servicios y recursos de OCI está soportado con clusters mejorados, pero no con clusters básicos.
Uso de principales de instancia para permitir el acceso a los servicios y recursos de OCI
Puede configurar un principal de instancia para permitir que el controlador de entrada nativo de OCI realice acciones en los recursos del servicio OCI. Tenga en cuenta que solo puede utilizar principales de instancia con nodos gestionados.
Para configurar un principal de instancia:
- Cree un nuevo grupo dinámico que contenga las instancias informáticas que alojan los nodos de trabajador del cluster:
- Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Dominios. En Dominio de identidad, seleccione Grupos dinámicos.
-
Seleccione el compartimento al que pertenecen las instancias informáticas.
-
Siga las instrucciones en Para crear un grupo dinámico y asígnele un nombre al grupo dinámico (por ejemplo,
acme-oke-native-ingress-controller-dyn-grp
). - Introduzca una regla que incluya las instancias informáticas en el compartimento, con el formato:
ALL {instance.compartment.id = '<compartment-ocid>'}
donde
<compartment-ocid>
es el OCID del compartimento en el que se crean los pools de nodos de cluster.Por ejemplo:
ALL {instance.compartment.id = 'ocid1.compartment.oc1..aaaaaaaa23______smwa'}
- Haga clic en Crear grupo dinámico.
Antes de desplegar el controlador de entrada nativo de OCI, deberá:
-
Otorgue permisos a la instancia en la que se ejecuta el controlador de entrada nativo de OCI a través del grupo dinámico. Consulte Otorgamiento de permisos al complemento de cluster de controlador de entrada nativo de OCI.
-
Indique que desea utilizar principales de instancia con el complemento de controlador de entrada nativo de OCI definiendo el argumento de configuración
authType
eninstance
. Por ejemplo:{ "key": "authType", "value": "instance" }
Consulte Despliegue del complemento de OCI Native Ingress Controller
Uso de principales de usuario para permitir el acceso a los servicios y recursos de OCI
Puede configurar un principal de usuario para permitir que el controlador de entrada nativo de OCI realice acciones en los recursos del servicio OCI.
Para configurar un principal de usuario:
- Si aún no existe un usuario adecuado, cree un usuario en IAM (consulte Para crear un usuario).
- Si aún no existe un grupo adecuado, cree un grupo en IAM (consulte Para crear un grupo).
- Agregue el usuario al grupo (consulte Para agregar un usuario a un grupo).
-
Obtenga estos elementos:
- Par de claves de RSA en formato PEM (2048 bits como mínimo). Consulte Generación de una clave de firma de API.
- Huella de la clave pública. Consulte Cómo obtener la huella de la clave.
- OCID del arrendamiento y OCID del usuario. Consulte Dónde obtener el OCID del arrendamiento y el OCID del usuario.
- Cargue la clave pública del par de claves en la consola. Consulte Cómo cargar la clave pública.
- Cree un archivo de configuración como un archivo .yaml que contenga información de credenciales, con el siguiente formato:
auth: region: <region-identifier> passphrase: <passphrase> user: <user-ocid> fingerprint: <fingerprint> tenancy: <tenancy-ocid>
donde:region: <region-identifier>
es la región en la que reside el cluster. Por ejemplo,us-ashburn-1
passphrase: <passphrase>
especifica la contraseña utilizada para la clave si está cifrada.user: <user-ocid>
es el OCID del usuario que utilizará el controlador de entrada nativo de OCI.fingerprint: <fingerprint>
es la huella de la clave pública.tenancy: <tenancy-ocid>
es el OCID del arrendamiento que contiene el cluster.
Por ejemplo:
auth: region: us-ashburn-1 passphrase: examplepass user: ocid1.user.oc1..aaaaaaaa_example fingerprint: 67:d9:74:4b:21:example tenancy: ocid1.tenancy.oc1..aaaaaaaa_example
- Cree un recurso secreto de Kubernetes en el cluster introduciendo:
kubectl create secret generic <secret-name> \ --from-file=config=<config-file>.yaml \ --from-file=private-key=<private-key-file-path>.pem \ --namespace <namespace>
donde:<secret-name>
especifica el nombre del secreto que se va a crear. Por ejemplo,oci-config
--from-file=config=<config-file>.yaml
especifica el nombre y la ruta del archivo .yaml que contiene la información de credenciales que ha creado anteriormente. Por ejemplo,user-auth-config.yaml
--from-file=private-key=./oci/oci_api_key.pem
especifica el nombre y la ruta de acceso del archivo de claves privadas descargado. Por ejemplo,./oci/oci_api_key.pem
--namespace <namespace>
especifica el espacio de nombres que contiene el controlador de entrada nativo de OCI
Por ejemplo:
kubectl create secret generic oci-config \ --from-file=config=user-auth-config.yaml \ --from-file=private-key=./oci/oci_api_key.pem \ --namespace acme-namespace
Antes de desplegar el controlador de entrada nativo de OCI, deberá:
- Otorgue permisos al usuario a través del grupo al que pertenece el usuario. Consulte Otorgamiento de permisos al complemento de cluster de controlador de entrada nativo de OCI.
-
Indique que desea utilizar principales de usuario con el complemento del controlador de entrada nativo de OCI definiendo los siguientes argumentos de configuración:
- defina
authType
enuser
- defina
authSecretName
en el nombre del secreto de Kubernetes que ha creado anteriormente
Por ejemplo:
{ "key": "authType", "value": "user" }, { "key": "authSecretName", "value": "oci-config" }
Consulte Despliegue del complemento de OCI Native Ingress Controller
- defina
Uso de entidades de identidad de carga de trabajo para permitir el acceso a los servicios y recursos de OCI
Puede configurar un principal de identidad de carga de trabajo para permitir que el controlador de entrada nativo de OCI realice acciones en los recursos del servicio OCI. Tenga en cuenta que solo puede utilizar principales de identidad de carga de trabajo con clusters mejorados.
Para configurar un principal de identidad de carga de trabajo:
- Obtenga el OCID del cluster (por ejemplo, mediante el separador Detalles de cluster de la consola).
Antes de desplegar el controlador de entrada nativo de OCI, deberá:
- Otorgue permisos a la identidad de carga de trabajo del controlador de entrada nativo de OCI. Consulte Otorgamiento de permisos al complemento de cluster de controlador de entrada nativo de OCI.
- Indique si desea utilizar principales de identidad de carga de trabajo con el complemento del controlador de entrada nativo de OCI definiendo el argumento de configuración
authType
enworkloadIdentity
. Por ejemplo:{ "key": "authType", "value": "workloadIdentity" }
Consulte Despliegue del complemento de OCI Native Ingress Controller
Asignación de permisos al complemento de cluster de controlador de entrada nativo de OCI
El controlador de entrada nativo de OCI necesita permisos para acceder a los recursos creados por otros servicios de Oracle Cloud Infrastructure (como el servicio Load Balancer y el servicio Certificates). Los permisos que otorga son los mismos, independientemente de si instala el controlador de entrada nativo de OCI como un programa independiente o como un complemento de cluster. Y los permisos son los mismos, independientemente de si ha configurado un principal de instancia, un principal de usuario o un principal de identidad de carga de trabajo para el controlador de entrada nativo de OCI. Sin embargo, la forma en que otorga esos permisos depende del tipo de principal que haya configurado:
- Al utilizar principales de instancia, el controlador de entrada nativo de OCI hereda los permisos otorgados a la instancia en la que se ejecuta a través de un grupo dinámico al que pertenece la instancia. Para obtener información sobre la creación del grupo dinámico para principales de instancia, consulte Uso de principales de instancia para permitir el acceso a los servicios y recursos de OCI.
- Al utilizar principales de usuario, el controlador de entrada nativo de OCI hereda los permisos otorgados a un usuario a través de un grupo al que pertenece el usuario. Para obtener información sobre la creación del usuario y el grupo para principales de usuario, consulte Uso de principales de usuario para activar el acceso a los servicios y recursos de OCI.
- Al utilizar principales de identidad de carga de trabajo, el controlador de entrada nativo de OCI hereda los permisos otorgados a una carga de trabajo que se ejecuta en un cluster especificado, en la cuenta de servicio de Kubernetes y el espacio de nombres creados para el controlador de entrada nativo de OCI durante la instalación. Para obtener más información, consulte Uso de principales de identidad de carga de trabajo para permitir el acceso a los servicios y recursos de OCI.
Para configurar permisos para el controlador de entrada nativo de OCI, cree una política para el grupo (en el caso de principales de usuario), para el grupo dinámico (en el caso de principales de instancia) o para la carga de trabajo (en el caso de principales de identidad de carga de trabajo), con sentencias de política para acceder a los servicios y recursos de OCI:
- Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas.
- Siga las instrucciones de Para crear una política y asigne un nombre a la política (por ejemplo,
acme-oke-native-ingress-controller-policy
). -
Si utiliza principales de instancia o principales de usuario, introduzca sentencias de política para permitir el acceso a los servicios y recursos de OCI utilizados por el controlador de entrada nativo de OCI, con el formato:
Allow <group|dynamic-group> <subject-name> to <verb> <resource> in <location>
donde:
<group|dynamic-group>
esgroup
(en el caso de los principales de usuario) odynamic-group
(en el caso de los principales de instancia)<subject-name>
es el nombre del grupo (en el caso de los principales de usuario) o el nombre del grupo dinámico (en el caso de los principales de instancia). Por ejemplo,acme-oke-nat-ing-cont-dyn-grp
. Tenga en cuenta que si un grupo o grupo dinámico no está en el dominio de identidad por defecto, anteponga el nombre de grupo o grupo dinámico al nombre de dominio de identidad con el formato<group|dynamic-group> '<identity-domain-name>'/'<group-name|dynamic-group-name>'
. También puede especificar un grupo o grupo dinámico mediante su OCID, con el formatogroup id <group-ocid>
odynamic-group id <dynamic-group-ocid>
.<verb> <resource>
es uno de los siguientes (todos estos son necesarios en sentencias de política independientes):manage load-balancers
use virtual-network-family
manage cabundles
manage cabundle-associations
manage leaf-certificates
read leaf-certificate-bundles
manage leaf-certificate-versions
manage certificate-associations
read certificate-authorities
manage certificate-authority-associations
read certificate-authority-bundles
read public-ips
manage floating-ips
manage waf-family
read cluster-family
use tag-namespaces
(solo es necesario si desea que el controlador de entrada nativo de OCI aplique etiquetas definidas a los equilibradores de carga, consulte Aplicación de etiquetas definidas al equilibrador de carga)
<location>
es uno de los siguientes:tenancy
, si desea que el controlador de entrada nativo de OCI tenga acceso a los recursos de todo el arrendamiento.compartment <compartment-name>
si solo desea que el controlador de entrada nativo de OCI tenga acceso a los recursos del compartimento con el nombre especificado comocompartment <compartment-name>
.
Por ejemplo:
Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage load-balancers in compartment acme-oke-cluster-compartment
La sintaxis para la lista completa de sentencias de política es la siguiente:
Allow <group|dynamic-group> <subject-name> to manage load-balancers in <location> Allow <group|dynamic-group> <subject-name> to use virtual-network-family in <location> Allow <group|dynamic-group> <subject-name> to manage cabundles in <location> Allow <group|dynamic-group> <subject-name> to manage cabundle-associations in <location> Allow <group|dynamic-group> <subject-name> to manage leaf-certificates in <location> Allow <group|dynamic-group> <subject-name> to read leaf-certificate-bundles in <location> Allow <group|dynamic-group> <subject-name> to manage leaf-certificate-versions in <location> Allow <group|dynamic-group> <subject-name> to manage certificate-associations in <location> Allow <group|dynamic-group> <subject-name> to read certificate-authorities in <location> Allow <group|dynamic-group> <subject-name> to manage certificate-authority-associations in <location> Allow <group|dynamic-group> <subject-name> to read certificate-authority-bundles in <location> Allow <group|dynamic-group> <subject-name> to read public-ips in <location> Allow <group|dynamic-group> <subject-name> to manage floating-ips in <location> Allow <group|dynamic-group> <subject-name> to manage waf-family in <location> Allow <group|dynamic-group> <subject-name> to read cluster-family in <location> Allow <group|dynamic-group> <subject-name> to use tag-namespaces in <location>
Ejemplo de la lista completa de sentencias de política:
Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage load-balancers in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to use virtual-network-family in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage cabundles in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage cabundle-associations in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage leaf-certificates in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to read leaf-certificate-bundles in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage leaf-certificate-versions in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage certificate-associations in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to read certificate-authorities in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage certificate-authority-associations in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to read certificate-authority-bundles in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to read public-ips in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage floating-ips in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to manage waf-family in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to read cluster-family in compartment acme-oke-cluster-compartment Allow dynamic-group acme-oke-nat-ing-cont-dyn-grp to use tag-namespaces in compartment acme-oke-cluster-compartment
- Si utiliza principales de identidad de carga de trabajo, introduzca sentencias de política para permitir el acceso a los servicios y recursos de OCI utilizados por el controlador de entrada nativo de OCI, con el formato:
Allow any-user to <verb> <resource> in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'}
donde:
<verb> <resource>
es uno de los siguientes (todos estos son necesarios en sentencias de política independientes):manage load-balancers
use virtual-network-family
manage cabundles
manage cabundle-associations
manage leaf-certificates
read leaf-certificate-bundles
manage leaf-certificate-versions
manage certificate-associations
read certificate-authorities
manage certificate-authority-associations
read certificate-authority-bundles
read public-ips
manage floating-ips
manage waf-family
read cluster-family
use tag-namespaces
(solo es necesario si desea que el controlador de entrada nativo de OCI aplique etiquetas definidas a los equilibradores de carga, consulte Aplicación de etiquetas definidas al equilibrador de carga)
<location>
es uno de los siguientes:tenancy
, si desea que el controlador de entrada nativo de OCI tenga acceso a los recursos de todo el arrendamiento.compartment <compartment-name>
si solo desea que el controlador de entrada nativo de OCI tenga acceso a los recursos del compartimento con el nombre especificado comocompartment <compartment-name>
.
request.principal.namespace = 'native-ingress-controller-system'
es el nombre del espacio de nombres creado para el controlador de entrada nativo de OCI durante la instalación.request.principal.service_account = 'oci-native-ingress-controller'
es el nombre de la cuenta de servicio creada para el controlador de entrada nativo de OCI durante la instalación.<cluster-ocid>
es el OCID del cluster que ha obtenido anteriormente.
Por ejemplo:
Allow any-user to manage load-balancers in tenancy where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = 'ocid1.cluster.oc1.iad.aaaaaaaa______ska'}
La sintaxis para la lista completa de sentencias de política es:
Allow any-user to manage load-balancers in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to use virtual-network-family in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to manage cabundles in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to manage cabundle-associations in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to manage leaf-certificates in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to read leaf-certificate-bundles in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to manage leaf-certificate-versions in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to manage certificate-associations in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to read certificate-authorities in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to manage certificate-authority-associations in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to read certificate-authority-bundles in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to read public-ips in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to manage floating-ips in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to manage waf-family in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to read cluster-family in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'} Allow any-user to use tag-namespaces in <location> where all {request.principal.type = 'workload', request.principal.namespace = 'native-ingress-controller-system', request.principal.service_account = 'oci-native-ingress-controller', request.principal.cluster_id = '<cluster-ocid>'}
Instalación de cert-manager
El controlador de entrada nativo de OCI, ya sea instalado como un programa independiente o como un complemento de cluster, utiliza webhooks para inyectar puertas de preparación de pod en las especificaciones de pod. Para garantizar la seguridad, el servidor webhook debe ejecutarse en modo HTTPS, que requiere un par de certificados y claves. El controlador de entrada nativo de OCI utiliza Certificate Manager (también conocido como cert-manager) para generar y gestionar los certificados y las claves para el servidor de webhook, por lo que debe instalar cert-manager en el cluster para utilizar las puertas de preparación de pod.
Independientemente de si instala el controlador de entrada nativo de OCI como un programa independiente o como un complemento de cluster, puede instalar y ejecutar cert-manager de dos formas:
-
Puede instalar y ejecutar cert-manager como un producto de código abierto, introduciendo:
kubectl apply -f https://github.com/jetstack/cert-manager/releases/latest/download/cert-manager.yaml
-
Puede instalar y ejecutar cert-manager como un complemento de cluster. Para obtener más información sobre la instalación de cert-manager como complemento de cluster, consulte Installing a Cluster Add-on.
Para obtener más información sobre cert-manager, consulte la documentación de cert-manager.io.
Tenga en cuenta que la instalación del controlador de entrada nativo de OCI como complemento de cluster falla si aún no ha instalado cert-manager, ya sea como producto de código abierto o como complemento de cluster.