Los usuarios de la cuenta de nube de Google Cloud Platform (GCP) de VMware Aria Automation pueden configurar equilibradores de carga para dar soporte a soluciones personalizadas, incluida la alta disponibilidad.
Los usuarios de la cuenta de nube de GCP de VMware Aria Automation pueden configurar varios aspectos de la configuración del equilibrador de carga para dar soporte a requisitos específicos. Estas funciones pueden admitir infraestructura de aprovisionamiento para SAP NetWeaver y SAP Hana, por ejemplo.
Establecer una configuración de equilibrador de carga de alta disponibilidad con una cuenta de nube de GCP
Los usuarios de VMware Aria Automation con una cuenta de nube de GCP pueden configurar varios aspectos de la configuración del equilibrador de carga para dar soporte a requisitos específicos, como la alta disponibilidad. Estas funciones pueden admitir infraestructura de aprovisionamiento para SAP NetWeaver y SAP Hana.
Esta configuración permite implementar diferentes instancias de equilibrador de carga en diferentes zonas de disponibilidad. Para configurar esto, debe configurar los siguientes componentes en GCP:
- Reservar direcciones IP virtuales
- Aprovisionar comprobaciones de estado
- Crear una regla de firewall para dar soporte a las comprobaciones de estado
Después de configurar el lado de GCP, debe configurar los componentes adecuados en VMware Aria Automation como se describe a continuación:
- Cree una cuenta de nube de GCP si aún no tiene una.
- Configure la asignación de colores e imágenes según corresponda a su entorno.
- Cree un perfil de red predeterminado y etiquételo para poder invocarlo desde una plantilla de nube.
- Cree zonas de disponibilidad de recursos informáticos y etiquételas correctamente. Esto le permite indicar a VMware Aria Automation que aprovisione instancias y grupos de instancias para zonas de disponibilidad específicas en una plantilla de nube.
Cuando haya configurado todos estos componentes, puede desplazarse hasta la pestaña Diseño de Automation Assembler y crear una plantilla de nube. Esta plantilla debe modelar la configuración del equilibrador de carga adecuado con las especificaciones de comprobación de estado y las instancias y los grupos de instancias según corresponda. Para fines de alta disponibilidad, debe configurar varios equilibradores de carga. La plantilla de nube también debe especificar las máquinas virtuales adecuadas y las zonas de disponibilidad en las que se deben implementar.
El siguiente ejemplo de plantilla de nube demuestra cómo se puede establecer una configuración de equilibrador de carga de alta disponibilidad para NetWeaver.
formatVersion: 1
inputs: {}
resources:
Cloud_LoadBalancer_1:
type: Cloud.LoadBalancer
properties:
routes:
- healthCheckConfiguration:
healthyThreshold: 2
unhealthyThreshold: 2
timeoutSeconds: 10
intervalSeconds: 10
port: 65000
protocol: TCP
protocol: TCP
port: 1000
instancePort: 1000
network: ${resource.Cloud_Network_1.id}
instances:
- ${resource.Cloud_GCP_Machine_1.id}
- ${resource.Cloud_GCP_Machine_2.id}
internetFacing: false
fallbackInstanceGroupsByInstanceNames:
- ${resource.Cloud_GCP_Machine_2.resourceName}
Cloud_LoadBalancer_2:
type: Cloud.LoadBalancer
properties:
routes:
- healthCheckConfiguration:
healthyThreshold: 2
unhealthyThreshold: 2
timeoutSeconds: 10
intervalSeconds: 10
port: 65000
protocol: TCP
protocol: TCP
port: 1000
instancePort: 1000
network: ${resource.Cloud_Network_1.id}
instances:
- ${resource.Cloud_GCP_Machine_1.id}
- ${resource.Cloud_GCP_Machine_2.id}
internetFacing: false
useInstanceGroupsFrom: ${resource.Cloud_LoadBalancer_1.resourceName}
fallbackInstanceGroupsByInstanceNames:
- ${resource.Cloud_GCP_Machine_1.resourceName}
Cloud_GCP_Machine_2:
type: Cloud.GCP.Machine
properties:
image: image
flavor: flavor
networks:
- network: ${resource.Cloud_Network_1.id}
constraints:
- tag: zone-b
Cloud_Network_1:
type: Cloud.Network
properties:
networkType: existing
constraints:
- tag: default
Cloud_GCP_Machine_1:
type: Cloud.GCP.Machine
properties:
image: image
flavor: flavor
networks:
- network: ${resource.Cloud_Network_1.id}
constraints:
- tag: zone-a
Opciones de configuración adicionales del equilibrador de carga
Usando las configuraciones de plantilla de nube, los usuarios de VMware Aria Automation pueden configurar los siguientes aspectos adicionales de la configuración del equilibrador de carga.
- Compartir grupos de instancias entre equilibradores de carga
- Configurar grupos de instancias de conmutación por error
- Configurar los equilibradores de carga para que acepten el tráfico en todos los puertos
Compartir grupos de instancias
Para compartir grupos de instancias entre los equilibradores de carga, los usuarios deben declararlo explícitamente en el blueprint. Debido a que no hay acceso directo a los grupos de instancias en la plantilla de nube, los clientes deben utilizar la propiedad useInstanceGroupsFrom. De esta forma, VMware Aria Automation aprovisionará el primer equilibrador de carga y reutilizará los grupos de instancias en los otros equilibradores de carga.
El siguiente ejemplo muestra cómo puede utilizar una plantilla de nube para configurar dos equilibradores de carga en los que el segundo utiliza los grupos de instancias del primero:
Cloud_LoadBalancer_1:
type: Cloud.LoadBalancer
properties:
routes:
- healthCheckConfiguration:
healthyThreshold: 2
unhealthyThreshold: 2
timeoutSeconds: 10
intervalSeconds: 10
port: 65000
protocol: TCP
protocol: TCP
network: ${resource.Cloud_Network_1.id}
instances:
- ${resource.Cloud_GCP_Machine_1.id}
- ${resource.Cloud_GCP_Machine_2.id}
internetFacing: false
Cloud_LoadBalancer_2:
type: Cloud.LoadBalancer
properties:
routes:
- healthCheckConfiguration:
healthyThreshold: 2
unhealthyThreshold: 2
timeoutSeconds: 10
intervalSeconds: 10
port: 65000
protocol: TCP
protocol: TCP
network: ${resource.Cloud_Network_1.id}
instances:
- ${resource.Cloud_GCP_Machine_1.id}
- ${resource.Cloud_GCP_Machine_2.id}
internetFacing: false
useInstanceGroupsFrom: ${resource.Cloud_LoadBalancer_1.resourceName}
Configurar grupos de instancias de conmutación por error
Para configurar grupos de instancias de conmutación por error para cada equilibrador de carga de GCP, debe declararlo explícitamente en la plantilla de nube. Debido a que no hay acceso directo a los grupos de instancias en la plantilla, debe utilizar la propiedad failoverInstanceGroupsByInstanceNames que indica a VMware Aria Automation que busque el grupo de instancias mediante una máquina que se encuentre en ese grupo de instancias.
El siguiente ejemplo muestra la configuración de un equilibrador de carga que tiene un grupo de instancias principal y un grupo de instancias de conmutación por error:
Cloud_LoadBalancer_1:
type: Cloud.LoadBalancer
properties:
routes:
- healthCheckConfiguration:
healthyThreshold: 2
unhealthyThreshold: 2
timeoutSeconds: 10
intervalSeconds: 10
port: 65000
protocol: TCP
protocol: TCP
network: ${resource.Cloud_Network_1.id}
instances:
- ${resource.Cloud_GCP_Machine_1.id}
- ${resource.Cloud_GCP_Machine_2.id}
internetFacing: false
failoverInstanceGroupsByInstanceNames:
- ${resource.Cloud_GCP_Machine_2.resourceName}
Configurar tráfico en todos los puertos
Para configurar un equilibrador de carga de modo que acepte tráfico en todos los puertos, puede omitir la propiedad de puerto de la configuración de la ruta. Puede ver una plantilla de nube de ejemplo que utiliza las tres funciones recién creadas y aprovisiona la infraestructura para esta configuración. Para obtener información relacionada, consulte Configurar el soporte de conmutación por error del equilibrio de carga en la nube.
formatVersion: 1
inputs: {}
resources:
Cloud_LoadBalancer_1:
type: Cloud.LoadBalancer
properties:
routes:
- healthCheckConfiguration:
healthyThreshold: 2
unhealthyThreshold: 2
timeoutSeconds: 10
intervalSeconds: 10
port: 65000
protocol: TCP
protocol: TCP
network: ${resource.Cloud_Network_1.id}
instances:
- ${resource.Cloud_GCP_Machine_1.id}
- ${resource.Cloud_GCP_Machine_2.id}
internetFacing: false
failoverInstanceGroupsByInstanceNames:
- ${resource.Cloud_GCP_Machine_2.resourceName}
address: 10.132.0.72
Cloud_LoadBalancer_2:
type: Cloud.LoadBalancer
properties:
routes:
- healthCheckConfiguration:
healthyThreshold: 2
unhealthyThreshold: 2
timeoutSeconds: 10
intervalSeconds: 10
port: 65000
protocol: TCP
protocol: TCP
network: ${resource.Cloud_Network_1.id}
instances:
- ${resource.Cloud_GCP_Machine_1.id}
- ${resource.Cloud_GCP_Machine_2.id}
internetFacing: false
useInstanceGroupsFrom: ${resource.Cloud_LoadBalancer_1.resourceName}
failoverInstanceGroupsByInstanceNames:
- ${resource.Cloud_GCP_Machine_1.resourceName}
address: 10.132.0.64
Cloud_GCP_Machine_2:
type: Cloud.GCP.Machine
properties:
image: image
flavor: flavor
networks:
- network: ${resource.Cloud_Network_1.id}
constraints:
- tag: zone-c
Cloud_Network_1:
type: Cloud.Network
properties:
networkType: existing
constraints:
- tag: default
Cloud_GCP_Machine_1:
type: Cloud.GCP.Machine
properties:
image: image
flavor: flavor
networks:
- network: ${resource.Cloud_Network_1.id}
constraints:
- tag: zone-b