Containers store metadata and support storage of the metadata for replication services.

About this task

Important:

Containers created using this procedure are suitable for test and development environments. For production environments, you must create Cassandra and RabbitMQ hosts enabled for an SSL communication. For more information about Cassandra hosts for production, see Cassandra Installation and Configuration. For more information about installing and configuring RabbitMQ hosts for production, seeRabbitMQ Installation and Configuration.

Prerequisites

Verify that you have deployed and configured a vCloud Availability Installer Appliance in your environment.

Procedure

  1. If you are using a Docker RabbitMQ or Cassandra nodes, you must first create a Docker host.
    1. Start the Docker service.

      Standard Command

      Command Using Registry

      # systemctl start docker
      
      # systemctl start docker
      
    2. Deploy a Docker Host VM.

      Standard Command

      Command Using Registry

      # vcav docker create \
      --vsphere-address=$MGMT_VSPHERE_ADDRESS \
      --vsphere-user=$MGMT_VSPHERE_USER \
      --vsphere-password-file=~/.ssh/.vsphere.mgmt \
      "--network=$MGMT_VSPHERE_NETWORK" \
      --ntp=pool.ntp.org \
      --root-password-file=~/.ssh/.root \
      "--vsphere-locator=$MGMT_VSPHERE_LOCATOR" \
      --datastore=$MGMT_VSPHERE_DATASTORE \
      --vm-name=vcav-docker01
      
      # vcav docker create \
      --vsphere=mgmt-vsphere-address \
      --ntp=pool.ntp.org \
      --root-password-file=~/.ssh/.root \
      --vm-name=vcav-docker01
        

      The system displays the IP address of the Docker host VM. Write it down as you need it during configuration steps.

    3. Set a variable to the address of the created VM.

      Standard Command

      Command Using Registry

      # DOCKER01_ADDRESS=`vcav vsphere get-ip \
      --vsphere-address=$MGMT_VSPHERE_ADDRESS \
      --vsphere-user=$MGMT_VSPHERE_USER \
      --vsphere-password-file=~/.ssh/.vsphere.mgmt \
      "--network=$MGMT_VSPHERE_NETWORK" \
      --vm-name=vcav-docker01`
      
      # AMQP_ADDRESS=$DOCKER01_ADDRESS
      
      # CASSANDRA_ADDRESS=$DOCKER01_ADDRESS
      
      # DOCKER01_ADDRESS=`vcav vsphere get-ip \
      --vsphere=mgmt-vsphere-name \
      "--network=mgmt-vsphere-network" \
      --vm-name=vcav-docker01`
      
      # AMQP_ADDRESS=$DOCKER01_ADDRESS
      
      # CASSANDRA_ADDRESS=$DOCKER01_ADDRESS
      
  2. Download RabbitMQ and Cassandra images.

    You can skip this step if you already have RabbitMQ 3.4 and Cassandra 2.2 images.

    Standard Command

    Command Using Registry

    # docker pull rabbitmq:3.4
    
    # docker pull cassandra:2.2.9
    # docker pull rabbitmq:3.4
    
    # docker pull cassandra:2.2.9
  3. Create a RabbitMQ Container.

    Standard Command

    Command Using Registry

    # vcav amqp create \
    --docker-address=$DOCKER01_ADDRESS \
    --container-name=vcav-amqp01 \
    --amqp-port=5671 \
    --amqp-user=vcd \
    --amqp-password-file=~/.ssh/.amqp
    # vcav amqp create \
    --docker-address=$DOCKER01_ADDRESS \
    --container-name=vcav-amqp01 \
    --amqp-port=5671 \
    --amqp-user=vcd \
    --amqp-password-file=~/.ssh/.amqp
    Note:

    Passwords that containing a dollar sign ($) are not supported in RabbitMQ versions earlier than 3.5.1.

  4. Create a trusted connection with the RabbitMQ host.

    Standard Command

    Command Using Registry

    # vcav trust add --address=$DOCKER01_ADDRESS --port=5671 --accept-all
    # vcav trust add --address=$DOCKER01_ADDRESS --port=5671 --accept-all
  5. Create a Cassandra Container.

    Standard Command

    Command Using Registry

    # vcav cassandra create \
    --docker-address=$DOCKER01_ADDRESS \
    --docker-image=cassandra:2.2.9 \
    --container-name=vcav-cass01 \
    --cassandra-port=9042
    # vcav cassandra create \
    --docker-address=$DOCKER01_ADDRESS \
    --docker-image=cassandra:2.2.9 \
    --container-name=vcav-cass01 \
    --cassandra-port=9042
  6. Import the vSphere ReplicationCloud Service host certificates to your Cassandra host.
    # vcav cassandra import-hcs-certificate --docker-address=$DOCKER01_ADDRESS \
    --container-name=vcav-cass01 --hcs-address=$HCS01_ADDRESS
  7. Register the Cassandra hosts with the lookup service by running the following command.

    Repeat this step for every Cassandra host in your environment.

    Standard Command

    Command Using Registry

    # vcav cassandra register \
    --hcs-address=$HCS01_ADDRESS \
    --cassandra-address=$DOCKER01_ADDRESS \
    --cassandra-port=9042 \
    --vcd-address=$VCD_ADDRESS \
    --vcd-user=$VCD_USER \
    --vcd-password-file=~/.ssh/.vcd \
    --sso-user=$SSO_USER \
    --sso-password-file=~/.ssh/.sso
    # vcav cassandra register \
    --hcs-address=$HCS01_ADDRESS \
    --cassandra-address=$DOCKER01_ADDRESS \
    --cassandra-port=9042 \
    --vcd=vcd-01-name

    The system displays an OK message upon a successful registration.