> 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/customizable-playbooks.md).

# Playbooks Customizados

## Requisitos

Linux Control Center = 2.10.X ou superior

## Objetivo

Este manual tem como objetivo apresentar todos os recursos que o módulo Playbooks do LCC oferece.

## Overview

No Linux Control Center (LCC), o módulo Playbooks desempenha um papel importante na administração, oferecendo aos usuários a capacidade de executar playbooks personalizados em hosts gerenciados pelo LCC.

A execução de um playbook pelo LCC oferece uma visão completa do processo, permitindo monitorar o andamento em tempo real e gerar relatórios detalhados. Além disso, a execução pode ser realizado pelo Workflow, que permite tomar decisões dinâmicas com base nos resultados de cada etapa.

## Upload e Configuração de Playbooks

1. Para iniciar, acesse o LCC e clique em **Playbooks** no menu lateral esquerdo.

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-625d63221879f5d8cf134ffeb7d69a46a2303e62%2Fplaybooks-menu.png?alt=media)
2. Clique em **Create**

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-e8df8e406c2fb3f0ae1ef0a0ff2ea9dfe1a2fa9f%2Fcreate_playbook.png?alt=media)
3. Insira um nome para identificar o playbook no campo **Name**.
4. Clique em **Upload File** e escolha o playbook desejado em seu computador.

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-0fe513bbca35b40be10a1f2865b4352bd6e137d8%2Fnome_e_upload_playbook.png?alt=media)
5. Veja que o nome do playbook será exibido no campo **Current File**
6. Clique em **Save** e logo em seguida o playbook estará salvo no banco de dados do LCC.

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-cb2887f247d97f46a79509d0aeb618e9a57f6302%2Fsave_playbook.png?alt=media)
7. Clique no Playbook que foi criado e sera possível ver as seguintes telas:

### Informações Gerais

1. Tela que exibe a data e hora em que o playbook foi criado, data e hora da ultima alteração e também é possível alterar as informações do campo **Name** e **Descrição**. Também é possível baixar o arquivo ao clicar em **Download**, deletar ao clicar em **Delete** e realizar o upload de um novo arquivo ao clicar em **Change File**

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

### Variáveis Dinâmicas no Playbook

Semelhante aos *Scripts Customizáveis* os playbooks também possuem a capacidade de inserir variáveis. Isso permite a execução do mesmo playbook em momentos diferentes com valores distintos, oferecendo adaptabilidade conforme necessário. O formato da variável é **${:::Nome da variável:::}**, sendo o *Nome da variável* o identificador daquela variável.

Após criar o playbook com a variável nesse formato e realizar o upload do arquivo para a console, será possível alterar seu valor diretamente pela interface web do LCC sempre que necessário. O valor atualizado será salvo automaticamente no arquivo do playbook salvo no banco de dados.

1. Veja um exemplo de implementação deste formato de variável

   *var\_name: **${:::var\_name:::}***

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

{% hint style="warning" %}
É importante notar que caso sejam escritas variáveis com o mesmo *identificador*/*nome* o LCC irá substituir o valor da ultima variável inserida pelo usuário em todas as outras. Logo é recomendado utilizar nomes diferentes caso os valores desejados de execução sejam distintos.
{% endhint %}

### Conteúdo do Playbook

1. A tela Content exibe todo o conteúdo do playbook. Na imagem abaixo está a variável citada no tópico anterior.

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-150565af83b5f2292fd9a1014e7f3070e018aef8%2Fconteudo_playbook.png?alt=media)

### Credenciais de execução

1. Na tela **Credentials** O LCC permite que o Playbook seja executado com uma credencial diferente da padrão *lcc.local*. É possível utilizar Credenciais Linux que estão cadastradas na console do LCC, Credenciais do cofre de senha Password Safe da BeyondTrust por meio de integração e por meio da funcionalidade Hook Bridge Params do LCC.

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-752b1b13546bf0f3e9ce46d066ede182c5c5c7c5%2Fcredential_playbook.png?alt=media)

### OS Release

1. Esta funcionalidade permite que o Playbook seja executado em somente em uma determinada Distribuição Linux.
2. Clique em **Create**

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-8e650d384cf131d34be1dfe20a6b87ac55ebec59%2Fos_release_playbooks_create.png?alt=media)
3. Clique em **Release**, escolha a Distribuição Linux que o playbook será executado e clique em **Save**.

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

## Execução de Playbooks

1. Para executar o playbook, basta acessar a tela **Playbooks** e clicar em **Actions** do playbook desejado.

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-c1c9836531d34b2d2af33d7e2fe8e6128874cd27%2Factions_playbook.png?alt=media)
2. Clique em **Run**

   ![](https://3122590582-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytotrgCSM7abU2RFWBCP%2Fuploads%2Fgit-blob-9cee3877ea4555f98a0463466f36336b11f1d57e%2Frun_playbook.png?alt=media)
3. Escolha em qual **Host** ou **Grupo Host** o playbook será executado
4. Clique em **Yes** e o playbook será executado logo em seguida.

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