# Explicador de configuração tmsh

> Cole um trecho de bigip.conf do BIG-IP e receba uma explicação em português de cada objeto, além da estrutura, totalmente no seu navegador.

- Tool: https://ronutz.com/pt-BR/tools/f5-tmsh-config-explainer
- Family: Redes

---

## O que faz

Cole um trecho de um `bigip.conf` do BIG-IP e a ferramenta o analisa e explica cada objeto em linguagem simples, junto com a estrutura que os mantém unidos. Ela lê apenas a configuração, inteiramente no seu navegador; não altera nada e não contata nenhum equipamento.

## Como a configuração de um BIG-IP é estruturada

O BIG-IP armazena sua configuração como objetos tmsh, e todos seguem um único formato:

    <módulo> <componente> [<tipo>] <nome> {
        <chave> <valor>
        <chave> { <corpo aninhado> }
        <item-de-lista-solto>
    }

As palavras iniciais posicionam o objeto na hierarquia de módulo e componente do BIG-IP (`ltm virtual`, `ltm pool`, `net vlan` e assim por diante), o nome o identifica e as chaves guardam seus campos. Dentro de um corpo, novas linhas separam entradas, blocos entre chaves podem aninhar em qualquer profundidade, strings entre aspas podem conter espaços, e um `#` inicia um comentário. A ferramenta segue exatamente essa gramática para dividir um trecho em seus objetos e cada objeto em seus campos.

## O que ela explica

Em vez de deixar você reconhecer cada campo, a ferramenta descreve o que os objetos e as configurações comuns significam: o `destination`, o `pool`, os `profiles` e o `source-address-translation` de um virtual server; os `members`, o `monitor` e o `load-balancing-mode` de um pool; e os muitos outros objetos que uma configuração interliga. O resultado é um mapa legível do que uma configuração de fato faz, o que é útil quando você herda um equipamento, revisa uma mudança ou aprende o modelo de objetos.

## A única coisa que não é tmsh

Há uma exceção deliberada. Um objeto `ltm rule` carrega uma iRule em Tcl no seu corpo, e esse corpo é um script, não configuração tmsh. O analisador reconhece isso e captura a iRule literalmente, em vez de tentar analisá-la como objetos e campos, de modo que a sua regra é preservada exatamente como foi escrita, e não corrompida.

## Como usar

Cole um trecho de `bigip.conf`, de um único objeto a um bloco grande, e leia o detalhamento estruturado e explicado. A análise é determinística e local, então também é uma forma segura de ler uma configuração exportada de um equipamento que você não pode ou não deve consultar diretamente.

## Standards and references

- [F5 BIG-IP tmsh Reference Guide](https://clouddocs.f5.com/cli/tmsh-reference/latest/) - the tmsh object model, module/component hierarchy, and per-object fields
- [F5 tmsh Reference: ltm virtual](https://clouddocs.f5.com/cli/tmsh-reference/v16/modules/ltm/ltm_virtual.html) - virtual server fields (destination, pool, profiles, source-address-translation, and more)
- [F5 tmsh Reference: ltm pool](https://clouddocs.f5.com/cli/tmsh-reference/v14/modules/ltm/ltm_pool.html) - pool fields (members, monitor, load-balancing-mode, and more)

## Related reading

- [A Anatomia de um Arquivo bigip.conf](https://ronutz.com/pt-BR/learn/anatomy-of-bigip-conf.md): Todo objeto de uma configuração BIG-IP segue a mesma forma: um módulo, um componente, um tipo opcional, um nome e um corpo delimitado por chaves. Quando você enxerga esse padrão, uma parede de configuração tmsh vira uma árvore legível de virtual servers, pools, monitores e perfis.
- [Como Funciona um Virtual Server do BIG-IP](https://ronutz.com/pt-BR/learn/how-a-virtual-server-works.md): Um virtual server é a porta de entrada de um BIG-IP. Ele vincula um IP e uma porta de escuta, aplica uma pilha de perfis, decide a persistência, escolhe um membro do pool e traduz o endereço de origem em direção ao backend. Ler essas partes em ordem mostra exatamente como uma conexão será tratada.
- [Como os Monitores de Saúde do LTM Decidem Ativo ou Inativo](https://ronutz.com/pt-BR/learn/ltm-health-monitors.md): Um monitor de saúde é a sondagem que um BIG-IP usa para decidir se um membro de backend pode receber tráfego. Suas strings de envio e recebimento, seu intervalo e timeout, e onde ele está anexado determinam juntos com que rapidez uma falha é percebida e como um membro é marcado como inativo.
- [Métodos de balanceamento do BIG-IP, e o que cada um pondera](https://ronutz.com/pt-BR/learn/ltm-load-balancing-methods.md): O load-balancing-mode de um pool decide quem recebe a próxima conexão, e o BIG-IP documenta 19 deles. Eles diferem em dois eixos: se reagem ao estado dos servidores, e o que exatamente ponderam quando reagem, conexões, sessões, velocidade de resposta ou medições de monitores.
- [Pools e métodos de balanceamento no BIG-IP](https://ronutz.com/pt-BR/learn/bigip-pools-and-load-balancing.md): Um pool é o grupo de members de backend para o qual um virtual server envia tráfego, e o método de balanceamento decide qual member recebe cada conexão. Os métodos se dividem em estáticos, que seguem um padrão fixo, e dinâmicos, que reagem à carga ao vivo, e a escolha molda quão uniforme e quão inteligentemente o tráfego se espalha.
- [Profiles em um virtual server](https://ronutz.com/pt-BR/learn/bigip-profiles-on-a-virtual-server.md): Um virtual server do BIG-IP não tem um comportamento fixo; ele é montado a partir de profiles, cada um configurando uma camada da conexão. Profiles de protocolo, de aplicação, de SSL e de persistência se empilham para definir como o tráfego é tratado, e herdam configurações de profiles pais, que é a chave de como a config do BIG-IP se mantém gerenciável.
- [SNAT e o problema do tráfego de retorno](https://ronutz.com/pt-BR/learn/bigip-snat-and-return-traffic.md): Para uma conexão balanceada funcionar, a resposta do pool member precisa voltar pelo BIG-IP. Se o member roteia seu tráfego de retorno direto para o cliente, a conexão quebra. O SNAT resolve isso tornando o BIG-IP o endereço de origem ao qual o member responde, ao custo de esconder o IP real do cliente.
- [Tipos de virtual server do BIG-IP, e o que cada um realmente faz](https://ronutz.com/pt-BR/learn/ltm-virtual-server-types.md): Um BIG-IP descarta tráfego por padrão; o virtual server é o listener que o aceita, e seu tipo decide o modelo de processamento, de um full proxy que termina e reorigina conexões a um encaminhador pacote a pacote que se comporta como roteador. Escolher o tipo é escolher quanto a caixa pode entender.
