Key Concepts and Best Practices for OpenShift Virtualization

Red Hat OpenStack FAQ

  • Which T4O version am I running?
    sudo docker ps -a | grep -Ei 'trilio|tvault|workloadmgr|s3|dmapi|dm_api|datamover|data_mover|contego' # both controllers and computes # if RHOSP 16 or higher, use 'podman'
    

    Then, compare the versions with the official documentation [1]. Navigate through the different hotfixes to find the one that matches all the versions of your WLM elements.

    [1] https://docs.trilio.io/openstack/v/tvo-4.2/triliovault-4.2-release-notes

  • A restore failed. How do I know which compute host failed to spin up my VM?

    1. Grab the restore ID:

    workloadmgr snapshot-list --workload_id a0e61dc0-14eb-4e43-8c4f-ae25ac4fa8c0
    workloadmgr restore-list --snapshot_id 546b542a-9fba-4484-848d-da730b4e46c6

    2. In the TVM logs, get the ID of the instance that was trying to spin up:

    sudo cat /var/log/workloadmgr/workloadmgr-workloads.log* | grep CopyBackupImageToVolume.execute.*ENTER | grep <restore_id> | awk '{print $9}' | cut -f1 -d"," | sort | uniq
    

    3. Grab the host from the OpenStack DB (inside the OpenStack controller):

    # Ansible
    sudo lxc-attach `sudo lxc-ls -f | grep galera | awk '{print $1}'` -- mysql -u root -p`sudo cat /etc/openstack_deploy/user_secrets.yml | grep ^galera_root_password | awk '{print $NF}'` -e "select uuid,display_name,node,launched_on,created_at,deleted_at from nova.instances where uuid='a2454040-d4ed-4711-8d5e-6b3637f69aa9'\G"
    
    # Kolla
    sudo docker exec -itu root `sudo docker ps | grep mariadb | awk '{print $NF}'` mysql -u root -p`sudo cat /etc/kolla/passwords.yml | grep ^database_password | awk '{print $NF}'` -e "select uuid,display_name,node,launched_on,created_at,deleted_at from nova.instances where uuid='a2454040-d4ed-4711-8d5e-6b3637f69aa9'\G"
    
    # RHOSP13
    sudo docker exec -itu root `sudo docker ps -q -f name=galera` mysql -u root -p`sudo hiera -c /etc/puppet/hiera.yaml "mysql::server::root_password"` -e "select uuid,display_name,node,launched_on,created_at,deleted_at from nova.instances where uuid='a2454040-d4ed-4711-8d5e-6b3637f69aa9'\G"
    
    # RHOSP16
    sudo podman exec -itu root `sudo podman ps -q -f name=galera` mysql -u root -p`sudo hiera -c /etc/puppet/hiera.yaml "mysql::server::root_password"` -e "select uuid,display_name,node,launched_on,created_at,deleted_at from nova.instances where uuid='a2454040-d4ed-4711-8d5e-6b3637f69aa9'\G"
    
    # Canonical
    MYSQLPWD=$(juju exec --unit mysql-innodb-cluster/leader leader-get mysql.passwd)
    juju exec --unit mysql-innodb-cluster/leader "mysql -uroot -p${MYSQLPWD} -e \"select uuid,display_name,node,launched_on,created_at,deleted_at from nova.instances where uuid='a2454040-d4ed-4711-8d5e-6b3637f69aa9'\"\\\G"
    
  • Where are logs located in T4O?

    RHOSP:

    # Pre-5.x
    /var/log/containers/trilio-datamover-api/dmapi.log # controllers
    /var/log/containers/trilio-datamover/tvault-contego.log # computes
    /var/log/tvault-object-store/tvault-object-store.log # inside the trilio-datamover container
    
    # v5.x
    /var/log/containers/triliovault-wlm-api/triliovault-wlm-api.log # controllers
    /var/log/containers/triliovault-wlm-api/triliovault-object-store.log # controllers
    /var/log/containers/triliovault-wlm-cron/triliovault-wlm-cron.log # controllers
    /var/log/containers/triliovault-wlm-cron/triliovault-object-store.log # controllers
    /var/log/containers/triliovault-wlm-scheduler/triliovault-wlm-scheduler.log # controllers
    /var/log/containers/triliovault-wlm-scheduler/triliovault-object-store.log # controllers
    /var/log/containers/triliovault-wlm-workloads/triliovault-wlm-workloads.log # controllers
    /var/log/containers/triliovault-wlm-workloads/triliovault-object-store.log # controllers
    /var/log/containers/triliovault-datamover-api/triliovault-datamover-api.log # controllers
    /var/log/containers/triliovault-datamover/triliovault-datamover.log # computes
    /var/log/containers/triliovault-datamover/triliovault-object-store.log # computes
    
  • How to check on RHOSP 16 what volumes are mounted on Trilio DataMover container?

    Run the following command on compute node

    sudo podman ps --all --format "{{.Names}} {{.Ports}} {{.Mounts}} {{.Status}}"
    
  • How to check if an Undercloud host is used as a registry to save Trilio Images, which version of Trilio images are available/uploaded?

    On undercloud host run the following command

            openstack tripleo container image list | grep trilio