En este tema se describe cómo habilitar y deshabilitar puertas de enlace multiclúster en una instancia de ACK One Fleet. También se explica cómo agregar clústeres asociados a una puerta de enlace multiclúster.
Facturación
El uso de puertas de enlace multiclúster genera cargos. Para obtener más información sobre la facturación de las puertas de enlace multiclúster, consulte Billing for general-purpose instances.
Requisitos previos
-
La política AliyunAdcpManagedMseRolePolicy está adjunta al rol de Resource Access Management (RAM) AliyunAdcpManagedMseRole. A continuación se muestra el documento de política de AliyunAdcpManagedMseRolePolicy.
The Fleet management feature is enabled. Además, se obtuvo el archivo kubeconfig de la instancia de Fleet desde la consola de ACK One y se conectó un cliente kubectl a dicha instancia.
Associated clusters are added. Los clústeres asociados y la instancia de ACK One Fleet deben estar desplegados en la misma VPC.
(Opcional) Se instaló la versión más reciente de Cloud Assistant CLI y se configuró.
Habilitar la función de puerta de enlace multiclúster
Console
Inicie sesión en la consola de ACK One. En el panel de navegación izquierdo, seleccione .
En la página Multi-cluster Gateway, haga clic en la lista desplegable Create a multi-cluster gateway y luego en Enable MSE multi-cluster gateway. En el cuadro de diálogo que aparece, haga clic en OK.
Command line
-
Compruebe que Cloud Assistant CLI esté actualizado y ejecute el siguiente comando para habilitar la función de puerta de enlace multiclúster.
Reemplace
<YOUR_FLEET_CLUSTERID>por el ID de su instancia de Fleet.aliyun adcp UpdateHubClusterFeature --ClusterId <YOUR_FLEET_CLUSTERID> --GatewayEnabled true -
Ejecute el siguiente comando para comprobar si la función de puerta de enlace multiclúster está habilitada:
aliyun adcp DescribeHubClusterDetails --ClusterId <YOUR_FLEET_CLUSTERID> |grep -B4 -A1 EnabledMSE`Resultado esperado: si el valor del parámetro
StatusesTrue, la función de puerta de enlace multiclúster está habilitada.{ "Message": "", "Reason": "", "Status": "True", "Type": "EnabledMSE" },
Crear una puerta de enlace multiclúster
Console
Inicie sesión en la consola de ACK One. En el panel de navegación izquierdo, seleccione .
En la esquina superior derecha de la página Multi-cluster Gateway, haga clic en la lista desplegable Create a multi-cluster gateway y luego en MSE multi-cluster gateway.
En el panel que aparece, modifique el archivo YAML que se usa para crear la puerta de enlace multiclúster según sus necesidades y haga clic en Create.
Command line
-
Obtenga y registre el ID del switch virtual de la instancia de ACK One Fleet.
Ejecute el siguiente comando para consultar el ID del vSwitch:
aliyun adcp DescribeHubClusterDetails --ClusterId <YOUR_FLEET_CLUSTERID>Registre el ID del vSwitch que aparece en el campo
VSwitchesdel resultado.
-
Cree un archivo llamado mseingressconfig.yaml y agregue el siguiente contenido.
Reemplace
${vsw-id1}por el ID del vSwitch que registró. Puede agregar una anotación al archivo de configuración de la puerta de enlace para especificar los clústeres asociados que desea incluir.apiVersion: mse.alibabacloud.com/v1alpha1 kind: MseIngressConfig metadata: name: ackone-gateway # Connect associated clusters to the MSE gateway. #annotations: # mse.alibabacloud.com/remote-clusters: ${cluster1},${cluster2} spec: common: instance: replicas: 3 spec: 2c4g network: # You can configure both an Internet-facing SLB and an internal-facing SLB. If no SLB instance is specified, an Internet-facing SLB is used by default. #publicSLBSpec: slb.s2.small #privateSLBSpec: slb.s2.small vSwitches: - ${vsw-id1} ingress: local: ingressClass: mse name: mse-ingress -
Ejecute el siguiente comando para crear una puerta de enlace llamada mse-ingress en la instancia de ACK One Fleet:
kubectl apply -f mseingressconfig.yaml -
Ejecute el siguiente comando para comprobar si se creó la puerta de enlace:
kubectl get mseingressconfig ackone-gatewayResultado esperado:
NAME STATUS AGE ackone-gateway Listening 3m15sEl resultado indica que la puerta de enlace se encuentra en estado Listening. Esto significa que la puerta de enlace nativa de la nube se creó correctamente y se está ejecutando. Dicha puerta de enlace escucha los Ingresses cuyas IngressClasses son
mse.El estado de una puerta de enlace creada a partir de un MseIngressConfig cambia en el siguiente orden: Pending, Running y Listening. Descripción de los estados:
Pending: se está creando la puerta de enlace nativa de la nube. Este proceso puede tardar unos 3 minutos.
Running: la puerta de enlace nativa de la nube se creó y se está ejecutando.
Listening: la puerta de enlace nativa de la nube se está ejecutando y escucha los Ingresses.
Failed: la puerta de enlace nativa de la nube presenta un estado anómalo. Revise el mensaje del campo Status para identificar la causa.
Agregar o quitar clústeres asociados
Console
Inicie sesión en la consola de ACK One. En el panel de navegación izquierdo, seleccione .
En la parte superior de la página Multi-cluster Gateway, seleccione la puerta de enlace multiclúster que desea gestionar en la lista desplegable y luego haga clic en Modify en la esquina superior derecha.
-
En el panel que aparece, edite el contenido YAML. Modifique los ID de clúster en el parámetro
annotationsy haga clic en Update.Código de ejemplo:
annotations: mse.alibabacloud.com/remote-clusters: ${cluster1-id},${cluster2-id}${cluster1-id}y${cluster2-id}son los ID de los clústeres asociados. Separe varios ID de clúster con comas (,). Modifique estos ID para agregar o quitar clústeres asociados.Si no asoció ningún clúster al crear la puerta de enlace multiclúster, el contenido YAML no incluye el parámetro
annotations. Por lo tanto, para agregar clústeres asociados, debe añadir el ejemplo anterior al objetometadatadel contenido YAML y después agregar o modificar los ID de clúster.
Command line
-
Modifique la anotación correspondiente en el objeto mseingressconfig de la instancia de ACK One Fleet para agregar o quitar clústeres asociados. Reemplace
${cluster1-id}y${cluster2-id}por los ID de los clústeres asociados. Separe varios ID de clúster con comas (,).annotations: mse.alibabacloud.com/remote-clusters: ${cluster1-id},${cluster2-id}Si no asoció ningún clúster al crear la puerta de enlace multiclúster, el contenido YAML no incluye el parámetro
annotations. Por lo tanto, para agregar clústeres asociados, debe añadir el ejemplo anterior al objetometadatadel contenido YAML y después agregar o modificar los ID de clúster. -
Ejecute el siguiente comando para comprobar si los clústeres asociados se agregaron a la puerta de enlace multiclúster:
kubectl get mseingressconfig ackone-gateway -ojsonpath="{.status.remoteClusters}"Resultado esperado:
[{"clusterId":"c7fb82****"},{"clusterId":"cd3007****"}]El resultado muestra los ID de los clústeres asociados y confirma que no se devolvió ningún mensaje de error. Esto significa que dichos clústeres se agregaron correctamente a la puerta de enlace multiclúster.
-
Ejecute el siguiente comando para consultar los clústeres asociados que se agregaron a la puerta de enlace multiclúster:
kubectl get mseingressconfig ackone-gateway -
Ejecute el siguiente comando para agregar más clústeres asociados o quitar los existentes.
mse.alibabacloud.com/remote-clusters=${cluster1},${cluster2}indica los clústeres asociados que desea agregar a la puerta de enlace multiclúster.kubectl annotate mseingressconfig ackone-gateway mse.alibabacloud.com/remote-clusters=${cluster1},${cluster2} --overwrite=true
Deshabilitar la función de puerta de enlace multiclúster
Eliminar puertas de enlace multiclúster puede afectar negativamente sus servicios. Proceda con precaución.
Si ya no necesita las puertas de enlace multiclúster, elimínelas primero y luego deshabilite esta función para evitar el desperdicio de recursos.
Console
Inicie sesión en la consola de ACK One. En el panel de navegación izquierdo, seleccione .
En la página Multi-cluster Gateway, seleccione MSE en la lista desplegable Gateway Type. Luego, elija la puerta de enlace multiclúster que desea eliminar en la lista desplegable Select a gateway y haga clic en Delete en la esquina superior derecha.
En el cuadro de diálogo que aparece, introduzca el nombre de la puerta de enlace multiclúster que desea eliminar y haga clic en Delete.
Confirme que se eliminaron todas las puertas de enlace multiclúster de la instancia de ACK One Fleet. Después, haga clic en Disable MSE Ingresses en la esquina superior derecha de la página. En el mensaje que aparece, haga clic en OK.
Command line
-
Ejecute el siguiente comando para eliminar una puerta de enlace multiclúster:
kubectl delete mseingressconfig ackone-gateway -
Ejecute el siguiente comando para deshabilitar la función de puerta de enlace multiclúster:
aliyun adcp UpdateHubClusterFeature --ClusterId <YOUR_FLEET_CLUSTERID> --GatewayEnabled false