# Uninstalling from Kolla OpenStack

## Clean triliovault\_datamover\_api container

The container needs to be cleaned on all nodes where the `triliovault_datamover_api` container is running.\
The Kolla Openstack inventory file helps to identify the nodes with the service.

Following steps need to be done to clean the `triliovault_datamover_api` container:

Stop the `triliovault_datamover_api` container.

```
docker stop triliovault_datamover_api
```

Remove the `triliovault_datamover_api` container.

```
docker rm triliovault_datamover_api
```

Clean `/etc/kolla/triliovault-datamover-api` directory.

```
rm -rf /etc/kolla/triliovault-datamover-api
```

Clean log directory of `triliovault_datamover_api` container.

```
rm -rf /var/log/kolla/triliovault-datamover-api/
```

## Clean triliovault\_datamover container

The container needs to be cleaned on all nodes where the `triliovault_datamover` container is running.\
The Kolla Openstack inventory file helps to identify the nodes with the service.

Following steps need to be done to clean the `triliovault_datamover` container:

Stop the `triliovault_datamover` container.

```
docker stop triliovault_datamover
```

Remove the `triliovault_datamover` container.

```
docker rm triliovault_datamover
```

Clean `/etc/kolla/triliovault-datamover` directory.

```
rm -rf /etc/kolla/triliovault-datamover
```

Clean log directory of `triliovault_datamover` container.

```
rm -rf /var/log/kolla/triliovault-datamover/
```

## Clean haproxy of Trilio Datamover API

The Trilio Datamover API entries need to be cleaned on all `haproxy` nodes.\
The Kolla Openstack inventory file helps to identify the nodes with the service.

Following steps need to be done to clean the `haproxy` container:

```
rm /etc/kolla/haproxy/services.d/triliovault-datamover-api.cfg
docker restart haproxy
```

## Clean Kolla Ansible deployment procedure

Delete all Trilio related entries from:

{% hint style="info" %}
To cross-verify the uninstallation undo all steps done in [append Kolla Ansible yml files](/openstack/tvo-4.2/deployment/configuring-and-installing-triliovault/installing-on-kolla.md#append-to-kolla-ansible-yaml-files) and [clone Trilio Ansible role](/openstack/tvo-4.2/deployment/configuring-and-installing-triliovault/installing-on-kolla.md#clone-triliovault-ansible-role).
{% endhint %}

Trilio entries can be found in:

* `/usr/local/share/kolla-ansible/ansible/roles/` :arrow\_right: There is a role triliovault
* `/etc/kolla/globals.yml`:arrow\_right: Trilio entries had been appended at the end of the file
* `/etc/kolla/passwords.yml`:arrow\_right: Trilio entries had been appended at the end of the file
* `/usr/local/share/kolla-ansible/ansible/site.yml` :arrow\_right: Trilio entries had been appended at the end of the file
* `/root/multinode` :arrow\_right: Trilio entries had been appended at the end of this example inventory file

## Revert to original Horizon container

Run deploy command to replace the Trilio Horizon container with original Kolla Ansible Horizon container.

```
kolla-ansible -i multinode deploy
```

## Clean Keystone resources

Trilio created a dmapi service with dmapi user.

```
openstack service delete dmapi
openstack user delete dmapi
```

## Clean Trilio database resources

Trilio Datamover API service has its own database in the Openstack database.

Login to Openstack database as root user or user with similar priviliges.

```
mysql -u root -p
```

Delete dmapi database and user.

```
DROP DATABASE dmapi;
DROP USER dmapi;
```

## Destroy the Trilio VM Cluster

List all VMs running on the KVM node

```
virsh list
```

Destroy the Trilio VMs

```
virsh destroy <Trilio VM Name or ID>
```

Undefine the Trilio VMs

```
virsh undefine <Trilio VM name>
```

Delete the TrlioVault VM disk from KVM Host storage


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.trilio.io/openstack/tvo-4.2/deployment/uninstall-triliovault/uninstalling-from-kolla-openstack.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
