Gebruikers van het vRealize Automation Google Cloud Platform-cloudaccount (GCP) kunnen load balancers configureren om aangepaste oplossingen te bieden, waaronder hoge beschikbaarheid.

Gebruikers van vRealize Automation GCP-cloudaccounts kunnen verschillende aspecten van de configuratie van de load balancer configureren om specifieke vereisten te ondersteunen. Deze functies kunnen bijvoorbeeld inrichtingsinfrastructuur voor SAP NetWeaver en SAP Syshare ondersteunen.

Een configuratie van een load balancer voor hoge beschikbaarheid instellen met een GCP-cloudaccount

vRealize Automation-gebruikers met een GCP-cloudaccount kunnen verschillende aspecten van de configuratie van de load balancer configureren om specifieke vereisten, zoals hoge beschikbaarheid, te ondersteunen. Deze functies kunnen bijvoorbeeld inrichtingsinfrastructuur voor SAP NetWeaver en SAP Syshare ondersteunen.

Met deze configuratie kunt u verschillende instanties van de load balancer in verschillende beschikbaarheidszones implementeren. Om dit in te stellen, moet u de volgende onderdelen in GCP configureren:

  • Virtuele IP-adressen reserveren
  • Gezondheidscontroles inrichten
  • Een firewallregel maken om de gezondheidscontroles te ondersteunen
Op de volgende pagina wordt beschreven hoe u deze onderdelen in GCP instelt en configureert: https://cloud.google.com/solutions/sap/docs/netweaver-ha-config-rhel#configure_the_failover_support Bekijk daarnaast de volgende pagina's voor informatie over NetWeaver- en Hana-configuraties:

Nadat u de GCP-zijde heeft ingesteld, moet u de betreffende onderdelen instellen in vRealize Automation, zoals hieronder is beschreven:

  • Maak een GCP-cloudaccount als u er nog geen heeft.
  • Stel de soort- en imagetoewijzing in zoals geschikt is voor uw omgeving.
  • Maak een standaardnetwerkprofiel en tag dit zodat u het vanuit een cloudsjabloon kunt aanroepen.
  • Maak beschikbaarheidszones voor computing en tag ze op de juiste manier. Hiermee kunt u vRealize Automation instellingen en instantiegroepen in specifieke beschikbaarheidszones in een cloudsjabloon laten inrichten.

Wanneer u al deze onderdelen heeft geconfigureerd, kunt u naar het tabblad Ontwerp in Cloud Assembly gaan en een cloudsjabloon maken. Deze sjabloon moet de juiste configuratie van de load balancer modelleren met specificaties voor gezondheidscontrole en instanties en instantiegroepen, waar toepasselijk. Voor hoge beschikbaarheid moet u meerdere load balancers configureren. De cloudsjabloon moet ook de juiste virtuele machines en de beschikbaarheidszones specificeren waarin ze moeten worden geïmplementeerd.

In het volgende voorbeeld van een cloudsjabloon ziet u hoe u een configuratie voor een load balancer met hoge beschikbaarheid kunt instellen voor 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

Aanvullende configuratieopties voor load balancers

Met behulp van cloudsjabloonconfiguraties kunnen vRealize Automation-gebruikers de volgende extra onderdelen van de configuratie van de load balancer configureren.

  • Instantiegroepen delen tussen load balancers
  • Instantiegroepen voor failover configureren
  • Uw load balancers configureren om verkeer op alle poorten te accepteren

Instantiegroepen delen

Als u instantiegroepen tussen de load balancers wilt delen, moeten gebruikers deze expliciet declareren in de blueprint. Alle er geen directe toegang is tot de instantiegroepen in de blueprint, moeten de klanten de eigenschap useInstanceGroupsFrom gebruiken. Op deze manier richt vRealize Automation de eerste load balancer in en worden de instantiegroepen in de andere load balancers hergebruikt.

In het volgende voorbeeld ziet u hoe u een cloudsjabloon kunt gebruiken om twee load balancers te configureren waarbij de tweede de instantiegroepen van de eerste gebruikt:

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}

Instantiegroepen voor failover configureren

Als u instantiegroepen voor failover wilt configureren voor elke GCP load balancer, moet u dit expliciet declareren in de cloudsjabloon. Omdat er geen directe toegang is tot de instantiegroepen in de sjabloon, moet u de eigenschap failoverInstanceGroupsByInstanceNames gebruiken, die vRealize Automation vertelt om de instantiegroep te vinden op basis van een machine die deel uitmaakt van die instantiegroep.

In het volgende voorbeeld ziet u de configuratie van een load balancer die één primaire instantiegroep en één failoverinstantiegroep heeft:

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}

Configureren voor verkeer op alle poorten

Als u een load balancer wilt configureren om verkeer op alle poorten te accepteren, kunt u de poorteigenschap van de routeconfiguratie weglaten. U kunt een voorbeeld van een cloudsjabloon bekijken die gebruikmaakt van de drie nieuw gemaakte functies en de infrastructuur voor deze setup inricht https://cloud.google.com/solutions/sap/docs/netweaver-ha-config-rhel#configure_the_failover_support

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