Deploy Tenant Telemetry on a new cluster

Deploy Tenant Telemetry on a new cluster

Caution

The deployment of Tenant Telemetry based on Ceilometer, Aodh, Panko, and Gnocchi is supported starting from the Pike OpenStack release and does not support integration with StackLight LMA. However, you can add the Gnocchi data source to Grafana to view the Tenant Telemetry data.

Follow the procedure below to deploy Tenant Telemetry that uses its own back ends, such as Gnocchi and Panko.

To deploy Tenant Telemetry on a new cluster:

  1. Log in to the Salt Master node.

  2. Set up the aggregation metrics storage for Gnocchi:

    • For Ceph, verify that you have deployed Ceph as described in Deploy a Ceph cluster and run the following commands:

      salt -C "I@ceph:osd or I@ceph:osd or I@ceph:radosgw" saltutil.refresh_pillar
      salt -C "I@ceph:mon:keyring:mon or I@ceph:common:keyring:admin" state.sls ceph.mon
      salt -C "I@ceph:mon:keyring:mon or I@ceph:common:keyring:admin" mine.update
      salt -C "I@ceph:mon" state.sls 'ceph.mon'
      salt -C "I@ceph:setup" state.sls ceph.setup
      salt -C "I@ceph:osd or I@ceph:osd or I@ceph:radosgw" state.sls ceph.setup.keyring
      
    • For the file back end based on GlusterFS, run the following commands:

      salt -C "I@glusterfs:server" saltutil.refresh_pillar
      salt -C "I@glusterfs:server" state.sls glusterfs.server.service
      salt -C "I@glusterfs:server:role:primary" state.sls glusterfs.server.setup
      salt -C "I@glusterfs:server" state.sls glusterfs
      salt -C "I@glusterfs:client" saltutil.refresh_pillar
      salt -C "I@glusterfs:client" state.sls glusterfs.client
      
  3. Create users and databases for Panko and Gnocchi:

    salt-call state.sls reclass.storage
    salt -C 'I@salt:control' state.sls salt.control
    salt -C 'I@keystone:client' state.sls keystone.client
    salt -C 'I@keystone:server state.sls linux.system.package
    salt -C 'I@galera:master' state.sls galera
    salt -C 'I@galera:slave' state.sls galera
    salt prx\* state.sls nginx
    
  4. Provision the mdb nodes:

    1. Apply basic states:

      salt mdb\* saltutil.refresh_pillar
      salt mdb\* saltutil.sync_all
      salt mdb\* state.sls linux.system
      salt mdb\* state.sls linux,ntp,openssh,salt.minion
      salt mdb\* system.reboot --async
      
    2. Deploy basic services on mdb nodes:

      salt mdb01\* state.sls keepalived
      salt mdb\* state.sls keepalived
      salt mdb\* state.sls haproxy
      salt mdb\* state.sls memcached
      salt mdb\* state.sls nginx
      salt mdb\* state.sls apache
      
    3. Install packages:

      • For Ceph:

        salt mdb\* state.sls ceph.common,ceph.setup.keyring
        
      • For GlusterFS:

        salt mdb\* state.sls glusterfs
        
  5. Update the cluster nodes:

    salt '*' saltutil.refresh_pillar
    salt '*' state.sls linux.network.host
    
  6. To use the Redis cluster as coordination back end and storage for Gnocchi, deploy Redis master:

    salt -C 'I@redis:cluster:role:master' state.sls redis
    
  7. Deploy Redis on all servers:

    salt -C 'I@redis:server' state.sls redis
    
  8. Deploy Gnocchi:

    salt -C 'I@gnocchi:server and *01*' state.sls gnocchi.server
    salt -C 'I@gnocchi:server' state.sls gnocchi.server
    
  9. Deploy Panko:

    salt -C 'I@panko:server and *01*' state.sls panko
    salt -C 'I@panko:server' state.sls panko
    
  10. Deploy Ceilometer:

    salt -C 'I@ceilometer:server and *01*' state.sls ceilometer
    salt -C 'I@ceilometer:server' state.sls ceilometer
    salt -C 'I@ceilometer:agent' state.sls ceilometer -b 1
    
  11. Deploy Aodh:

    salt -C 'I@aodh:server and *01*' state.sls aodh
    salt -C 'I@aodh:server' state.sls aodh