> For the complete documentation index, see [llms.txt](https://docs.linuxcontrolcenter.com.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.linuxcontrolcenter.com.br/en/configs-integrations/integrations/vmware.md).

# VMWare

## Version

* Linux Control Center = 2.10.X or Higher
* VMWare ESXi = 7.0 U2 or Higher

## Requirements

* Access credentials with VMware snapshot permission.
* Hosts in the LCC database previously configured

## Overview

The native integration with VMWare Vcenter is classified as a Rollback Item within the scope of Linux Control Center. A Rollback Item generally aims to start a backup task, create a snapshot, recovery point or similar item within the integration scenario, with the aim of ensuring the rollback of a system if a modification generates some unexpected behavior in your technology park.

Whenever one or more actions selected in the integration are called by the LCC, they will trigger the command to create a snapshot, and only after confirmation that the snapshot was successfully created in VMware, the action will be executed.

{% hint style="warning" %}
Please note that all third-party solutions that interact with LCC must be configured correctly. Inconsistent data from these solutions cannot be reliably processed or presented by LCC.
{% endhint %}

## Objective

This guide provides information and step-by-step instructions for integrating Linux Control Center with the VMware vSphere virtualization system.

## VMware Integration with LCC

### Integration Configuration

1. Click **Config** in the left side menu of LCC

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-76d7216ee8827d2c1f5960da8bf7f578f536ea98%2Fdashboard_config.png?alt=media)

1. Click the **VMware** button

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-ff2fd2010438f705e38b33ed1240421f9a65d269%2Fvmware_config.png?alt=media)

1. Click the **Create** button

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-92cb6e0fd567e0691fb79de96699f108dd635163%2Fcreate_vmware.png?alt=media)

1. Fill in the fields with your environment information**Name**: Name to identify the integration\
   **URL**: VMware vSphere URL address\
   **Username**: User with the environment domain Ex: @vsphere.local\
   **Password**: Access password\
   **GOVC**: Defines the binary version for integration with VMware, leave it as is **default**\
   **Default Data Center**: Enter the exact name of the VMware Data Center in your environment in this field\
   **Ignore SSL**: Button to ignore communication with SSL<br>

{% hint style="warning" %}
If you need to perform the integration in more than one Data Center, you will need to create an integration for each of them.
{% endhint %}

1. Click **Save** after entering the data correctly

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-07eec344cedcd96bcf3849d4372a905339c92918%2Fadd_vmware.png?alt=media)

### Connection Test

1. After saving, click **Test Connection** to perform the connection with VMware and wait for the action to finish

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-b8850a727bcafeff480a3378faac8a2683d18b48%2Fgeneral_semconexao.png?alt=media)

1. You will be able to see the status icon in green, confirming that the connection was successful.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-0293acbc2ef795a538255dc570df1eb39b4e1990%2Fgeneral_conectado.png?alt=media)

### Host Synchronization

1. After the connection is validated, click on the **Hosts** tab and click on **Sync** and wait for the synchronization action to finish.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-5b50db0fb24b04170e1d37cf2cd25790e2799a6e%2Fhosts_semhost.png?alt=media)

1. After the synchronization is finished, refresh the screen and the hosts will be listed in the **Hosts** tab of the integration.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-60fcfd7e5573f78277ef55ff3e50a2233d928eff%2Fhosts_sincronizado.png?alt=media)

### Host Selection for Rollback

{% hint style="warning" %}
If any VMware host does not appear on the integration hosts screen, make sure that it was inserted in the LCC database.
{% endhint %}

1. To remove one or more hosts from the snapshot task, uncheck it in the **Enable** column and click **Save**. This way, VMware will not create a snapshot of the unchecked hosts when a predefined action is executed in the LCC.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-dc2da780f2a36ebce89535532da8ccd50cf0a5a5%2Fescolhendo_hosts.png?alt=media)

### Snapshot Action

1. Click on the **Actions** tab and select as many actions as you want, so that whenever executed by the LCC, it will send the command to create a snapshot of the machines selected on the **Hosts** screen
2. Click on **Save**

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-367a1b224dd395564dc1022776b501007ad6bd91%2Factions_vmware.png?alt=media)

### Executing the Snapshot Trigger Action

* The action used for demonstration was the **Host Ping** action

1. Click on **Hosts**

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-bf2553b10fbabb1e6772981c894be4d600207cff%2Fhosts_dashboard.png?alt=media)

1. To execute the action on only a single host, select the desired host and click on **Actions** in the host line

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-5abb6b308b8cf5bf0aca82686611985f5ab57129%2Fhost_ping_ubuntu.png?alt=media)

1. To run the action on more than one host, select as many as you want in the box on the left column and click **Actions** at the top of the page

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-67df326c1292068698139c3c0e7d3021d8fb47da%2Fhost_ping_grupo.png?alt=media)

1. To run the action on all hosts in the LCC database, select the box next to Hostname and click **Actions** at the top of the page

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-01f719e24bc3a4772566e7f2d39d83c151276634%2Fhost_ping_todos.png?alt=media)

### Scheduling Snapshot Listing

1. On the VmWare integration screen, click the **Schedule** tab

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-a470926e81f9ec565895648c644d421659cc9fa3%2Fschedule_general.png?alt=media)

1. Click **Add Schedule**

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-5a56576856c44de621d4c8f94f7a89380f94072e%2Fadd_schedule.png?alt=media)

**Test Connection:** Performs a connection test connection with VmWare to validate the integration\
**Sync Assets:** Updates the list of VmWare assets according to the LCC host database<br>

4. Then, define a name for the schedule in the **Name** field and choose one of the actions in the **Action** line

By default, the scheduling screen opens with the **One Time** option, to schedule a single execution at a specific hour, minute and date, as shown in the image below;

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-018bfbac97e9ff43ff83b1a9f8a786b905288404%2Factions_schedule.png?alt=media)

1. By checking the **Repeatedly** box together with **Minutes** it is possible to execute the action every X defined minutes.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-e8e29ced6adc87c6745aeb40dadec1d27d31cfb6%2Fminutes_schedule.png?alt=media)

1. Checking the **Repeatedly** box together with the **Daily** option allows you to run the action every day, every X hours and X minutes.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-e256b38384d88ce7ac263e74a5f167feb42a0aef%2Fdaily_schedule.png?alt=media)

1. Checking the **Repeatedly** box together with the **Advanced** option allows you to choose the custom schedule, where you can choose the hour, minute, day of the week, day of the month and the desired month.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-eefd995b49a52fc6224021477db57af283754e00%2Fschedule_advanced.png?alt=media)

1. After creating and saving a schedule, you can pause it if necessary by clicking **Disable** and monitor the status of whether it is enabled or not in the **Active** column.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-651fbb8d4d7fc684a37b70e7f4ed66f0e280eec9%2Fdisable_schedule.png?alt=media)

1. The **Next Run** column displays when the next run will be and the **Last Run** column displays when the last run was. The **Count** column counts how many times the schedule has been run.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-5c47cbbfe8059411d1c9eda997f762bac9f1574e%2Flast_next_run.png?alt=media)

1. You can also delete a schedule by clicking the trash can icon next to the Disable/Enable button.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-8052dbe3d8042eff63a2900e9d9c7fd5309a3fe9%2Fdelete_schedule.png?alt=media)

## Snapshot Validation

* You can validate if the snapshot was successfully created in Vmware by LCC.

1. Click on **Hosts**

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-bf2553b10fbabb1e6772981c894be4d600207cff%2Fhosts_dashboard.png?alt=media)

1. Click on the **Host** where you performed the action.

![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-d7d8c079a754ec74286a5583e99a5573e3323162%2Fubuntu_20.png?alt=media)

1. Click on the **ROLLBACK** tab and click on **SYNC**

* The host's snaphost will appear in **Rollback Items** with the description **Created By LCC**

  ![](https://1620115297-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtZm19HsLxuDm2GumYKEz%2Fuploads%2Fgit-blob-7db42a995d5e4bea7f2d9b3e981c7676fb6ca187%2Frollback_list.png?alt=media)
