Voordat u het secundaire datacenter instelt, moet u het primaire datacenter voor replicatie van Elasticsearch, RabbitMQ en Ehcache configureren op alle clusters.

Over deze taak

Elasticsearch, RabbitMQ en Ehcache zijn ingebouwd in de VMware Identity Manager virtual appliance. Elasticsearch is een zoek- en analyse-engine die wordt gebruikt voor audits, rapporten en logboeken over directorysynchronisatie. RabbitMQ is een berichtenbroker. Ehcache biedt mogelijkheden voor cache.

Configureer deze wijzigingen in alle knooppunten in de cluster op het primaire datacenter.

Voorwaarden

U hebt een VMware Identity Manager-cluster ingesteld in het primaire datacenter.

Procedure

  1. Configureer Elasticsearch voor replicatie.

    Maak deze wijzigingen op alle knooppunten van de cluster op het primaire datacenter.

    1. Schakel de crontaak voor Elasticsearch uit.
      1. Bewerk het bestand /etc/cron.d/hznelasticsearchsync:

        vi /etc/cron.d/hznelasticsearchsync

      2. Noteer deze regel:

        #*/1 * * * * root /usr/local/horizon/scripts/elasticsearchnodes.hzn

    2. Voeg de IP-adressen toe van alle knooppunten in de cluster op het primaire datacenter.
      1. Bewerk het bestand /etc/sysconfig/elasticsearch.

        vi /etc/sysconfig/elasticsearch

      2. Voeg de IP-adressen toe van alle knooppunten in de cluster:

        ES_UNICAST_HOSTS=IP-adres1,IP-adres2,IP-adres3

    3. Voeg FQDN van de load-balancer van de cluster van het secundaire datacenter toe aan het bestand /usr/local/horizon/conf/runtime-config.properties.
      1. Bewerk het bestand /usr/local/horizon/conf/runtime-config.properties.

        vi /usr/local/horizon/conf/runtime-config.properties

      2. Voeg deze regel aan het bestand toe:

        analytics.replication.peers=LB_FQDN_of_second_cluster

  2. Configureer RabbitMQ voor replicatie.

    Maak deze wijzigingen op alle knooppunten van de cluster op het primaire datacenter.

    1. Schakel de crontaak voor RabbitMQ uit.
      1. vi /etc/cron.d/hznrabbitmqsync

      2. Noteer deze regel:

        #*/1 * * * * root /usr/local/horizon/scripts/rabbitmqnodes.hzn

    2. Maak de volgende wijzigingen in het bestand /usr/local/horizon/scripts/rabbitmqnodes.hzn.
      1. vi /usr/local/horizon/scripts/rabbitmqnodes.hzn

      2. Noteer deze regels.

        #make sure SAAS is up, otherwise we won't have an accurate node list
        #if test $(curl -X GET -k https://localhost/SAAS/API/1.0/REST/system/health/allOk -sL -w "% {http_code}\\n" -o /dev/null) -ne 200 ; then
        #    echo SAAS not running, aborting
        #    exit 0
        #fi

        Noteer ook de volgende regel.

        #nodes=$(uniqList true $(enumeratenodenames))

      3. Voeg de hostnamen toe van alle knooppunten in de cluster op het primaire datacenter. Gebruik alleen de hostnamen, niet de volledig gekwalificeerde domeinnamen. Scheidt de namen met een spatie.

        nodes="knooppunt1 knooppunt2 knooppunt3"

    3. Voeg de toewijzing van het IP-adres en de hostnaam van de andere knooppunten in de cluster toe aan het bestand /etc/hosts. Voeg geen vermelding toe voor het knooppunt dat u aan het bewerken bent. Deze stap is alleen vereist als er geen DNS-vermelding is die naar de volledig gekwalificeerde domeinnaam of gedeeltelijk gekwalificeerde domeinnamen leidt.

      IP-adres FQDNknooppunt2 knooppunt2

      IP-adres FQDNknooppunt3 knooppunt3

    4. Voer het script uit om de RabbitMQ-cluster te bouwen.

      /usr/local/horizon/scripts/rabbitmqnodes.hzn

  3. Configureer Ehcache voor replicatie.

    Maak deze wijzigingen op alle knooppunten van de cluster op het primaire datacenter.

    1. vi /usr/local/horizon/conf/runtime-config.properties

    2. Voeg de FQDN toe van de andere knooppunten in de cluster. Voeg de FQDN niet toe voor het knooppunt dat u aan het bewerken bent. Scheidt de FQDN's met een dubbele punt.

      ehcache.replication.rmi.servers=FQDNknooppunt2:FQDNknooppunt3

      Bijvoorbeeld:

      ehcache.replication.rmi.servers=server2.example.com:server3.example.com

  4. Start de VMware Identity Manager-service opnieuw op alle knooppunten.

    service horizon-workspace restart

  5. Controleer of de cluster goed is ingesteld.

    Voer deze opdrachten uit op alle knooppunten in de eerste cluster.

    1. Controleer de status van Elasticsearch.

      curl 'http://localhost:9200/_cluster/health?pretty'

      De opdracht moet een resultaat teruggeven dat vergelijkbaar is met het volgende.

               {
        "cluster_name" : "horizon",
        "status" : "green",
        "timed_out" : false,
        "number_of_nodes" : 3,
        "number_of_data_nodes" : 3,
        "active_primary_shards" : 20,
        "active_shards" : 40,
        "relocating_shards" : 0,
        "initializing_shards" : 0,
        "unassigned_shards" : 0,
        "delayed_unassigned_shards" : 0,
        "number_of_pending_tasks" : 0,
        "number_of_in_flight_fetch" : 0
      }

      Raadpleeg Problemen met Elasticsearch en RabbitMQ oplossen als er zich problemen voordoen.

    2. Controleer de status van RabbitMQ.

      rabbitmqctl cluster_status

      De opdracht moet een resultaat teruggeven dat vergelijkbaar is met het volgende.

      Cluster status of node 'rabbitmq@node3' ...
      [{nodes,[{disc,['rabbitmq@node2','rabbitmq@node3']}]},
       {running_nodes,['rabbitmq@node3']},
       {cluster_name,<<"rabbitmq@node2.example.com">>},
       {partitions,[]},
       {alarms,[{'rabbitmq@node3',[]}]}]

      Raadpleeg Problemen met Elasticsearch en RabbitMQ oplossen als er zich problemen voordoen.

    3. Controleer of het bestand /opt/vmware/horizon/workspace/logs/ horizon.log deze regel bevat.

      Added ehcache replication peer: //node3.example.com:40002

      De hostnamen moeten de hostnamen van de andere knooppunten in de cluster zijn.

Volgende stappen

Maak een cluster in het secundaire datacenter. Maak de knooppunten door het OVA-bestand van de eerste VMware Identity Manager virtual appliance van de cluster van het primaire datacenter te exporteren en te gebruiken voor de implementatie van de nieuwe virtual appliances in het secundaire datacenter.