{"id":2863,"date":"2026-09-13T18:20:37","date_gmt":"2026-09-13T21:20:37","guid":{"rendered":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/"},"modified":"2026-09-13T18:20:37","modified_gmt":"2026-09-13T21:20:37","slug":"aula-24-automacao-cisco-eem-python-e-ansible-para-redes","status":"publish","type":"post","link":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/","title":{"rendered":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes"},"content":{"rendered":"<p>Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso <strong>Cisco IOS \u2014 Do Zero ao Avan\u00e7ado<\/strong>. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a <strong>Automa\u00e7\u00e3o Cisco<\/strong>. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da opera\u00e7\u00e3o. A automa\u00e7\u00e3o deixou de ser um diferencial e passou a ser pr\u00e9-requisito em ambientes que gerenciam dezenas, centenas ou milhares de dispositivos. O objetivo \u00e9 substituir tarefas manuais repetitivas por processos orquestrados, consistentes e audit\u00e1veis, reduzindo erros humanos e aumentando a disponibilidade da rede. Em nossos projetos na <strong>JRT Technology Solutions<\/strong>, nossos especialistas utilizam diariamente os pilares que voc\u00ea vai aprender aqui \u2014 EEM, Python e Ansible \u2014 para implantar mudan\u00e7as em grande escala com seguran\u00e7a e previsibilidade.<\/p>\n<p>Ao longo desta aula, voc\u00ea vai compreender como funciona o <strong>Embedded Event Manager (EEM)<\/strong>, um motor de automa\u00e7\u00e3o embarcado no pr\u00f3prio Cisco IOS\/IOS-XE que permite reagir a eventos de sistema sem depender de ferramentas externas. Vai aprender a escrever <strong>applets EEM<\/strong> diretamente pela CLI para executar a\u00e7\u00f5es como backup autom\u00e1tico, envio de syslog e acionamento de comandos em resposta a falhas ou agendamentos. Em seguida, mergulharemos no mundo da programa\u00e7\u00e3o com <strong>Python<\/strong>, usando a biblioteca <strong>Netmiko<\/strong> \u2014 amplamente adotada pela comunidade de engenheiros de rede \u2014 para conectar-se a equipamentos Cisco via SSH, coletar informa\u00e7\u00f5es e aplicar configura\u00e7\u00f5es de forma program\u00e1tica.<\/p>\n<p>Por fim, chegaremos ao <strong>Ansible<\/strong>, a ferramenta de automa\u00e7\u00e3o e gerenciamento de configura\u00e7\u00e3o mais popular do mercado, que dispensa a instala\u00e7\u00e3o de agentes nos dispositivos. Voc\u00ea vai criar um ambiente completo de automa\u00e7\u00e3o em esta\u00e7\u00f5es Linux, escrever invent\u00e1rios, playbooks e executar tarefas idempotentes em m\u00faltiplos switches simultaneamente. O foco pr\u00e1tico desta aula \u00e9 total: cada comando, arquivo e sa\u00edda esperada ser\u00e1 demonstrado passo a passo, sem resumos enganosos ou lacunas que comprometam a reprodutibilidade do laborat\u00f3rio.<\/p>\n<p>Ao final desta li\u00e7\u00e3o, voc\u00ea ser\u00e1 capaz de: configurar applets EEM para reagir a eventos de syslog e timers; preparar uma esta\u00e7\u00e3o de automa\u00e7\u00e3o com Python e Ansible em distribui\u00e7\u00f5es Linux como Ubuntu\/Debian e CentOS\/RHEL\/Rocky; escrever scripts Python com Netmiko para coletar dados e aplicar VLANs; construir playbooks Ansible com m\u00f3dulos nativos para IOS; executar backups autom\u00e1ticos de configura\u00e7\u00e3o em lote; e solucionar os erros mais comuns do processo. Se voc\u00ea acompanhar toda a execu\u00e7\u00e3o, ter\u00e1 um laborat\u00f3rio funcional que pode ser usado como base para projetos reais de <strong>Automa\u00e7\u00e3o Cisco<\/strong>.<\/p>\n<h3>O que voc\u00ea vai aprender nesta aula<\/h3>\n<ul>\n<li>Compreender a arquitetura de <strong>Automa\u00e7\u00e3o Cisco<\/strong> com EEM, Python e Ansible, e quando utilizar cada abordagem;<\/li>\n<li>Instalar e configurar Python 3, pip, virtualenv, Ansible, Netmiko e Paramiko em <strong>Ubuntu\/Debian<\/strong> e <strong>CentOS\/RHEL\/Rocky Linux<\/strong>;<\/li>\n<li>Criar applets <strong>EEM<\/strong> no IOS para responder a eventos de syslog, timers cron e a\u00e7\u00f5es de CLI;<\/li>\n<li>Escrever scripts Python com <strong>Netmiko<\/strong> para conex\u00e3o SSH, coleta de informa\u00e7\u00f5es e aplica\u00e7\u00e3o de configura\u00e7\u00f5es;<\/li>\n<li>Construir invent\u00e1rio e playbooks <strong>Ansible<\/strong> com os m\u00f3dulos <strong>ios_command<\/strong>, <strong>ios_config<\/strong> e <strong>ios_facts<\/strong>;<\/li>\n<li>Automatizar o backup de running-config e o deploy de VLANs em m\u00faltiplos switches Cisco;<\/li>\n<li>Verificar a instala\u00e7\u00e3o, testar a comunica\u00e7\u00e3o com os dispositivos e diagnosticar erros frequentes;<\/li>\n<li>Adotar boas pr\u00e1ticas de seguran\u00e7a e versionamento em ambientes de automa\u00e7\u00e3o de rede.<\/li>\n<\/ul>\n<h3>Pr\u00e9-requisitos e Ambiente<\/h3>\n<p>Antes de iniciar esta aula, voc\u00ea deve ter conclu\u00eddo as li\u00e7\u00f5es anteriores do curso, especialmente aquelas que tratam de acesso gerencial via SSH, configura\u00e7\u00e3o de VLANs, roteamento b\u00e1sico e fundamentos de CLI do IOS. \u00c9 essencial que voc\u00ea tenha acesso a pelo menos um equipamento Cisco IOS ou IOS-XE, f\u00edsico ou emulado. Em nossos laborat\u00f3rios na <strong>JRT Technology Solutions<\/strong>, utilizamos plataformas como <strong>Cisco Modeling Labs (CML)<\/strong>, <strong>EVE-NG<\/strong> e <strong>GNS3<\/strong>, todas compat\u00edveis com as pr\u00e1ticas desta aula. Para reproduzir os exemplos sem lacunas, recomendamos um ambiente com tr\u00eas switches virtuais, como Catalyst 9300 ou IOSvL2, com endere\u00e7os IP de ger\u00eancia na faixa 192.168.1.0\/24.<\/p>\n<p>Al\u00e9m dos dispositivos de rede, voc\u00ea precisar\u00e1 de uma esta\u00e7\u00e3o Linux que atuar\u00e1 como controladora de automa\u00e7\u00e3o. Nesta aula, demonstraremos os procedimentos em duas fam\u00edlias: <strong>Ubuntu 22.04\/Debian 12<\/strong> e <strong>Rocky Linux 9\/RHEL 9\/CentOS Stream<\/strong>. A escolha da distribui\u00e7\u00e3o \u00e9 indiferente para o resultado final, mas \u00e9 importante que o sistema tenha Python 3 instalado, acesso \u00e0 internet para instala\u00e7\u00e3o de pacotes e conectividade IP com os switches via porta 22\/TCP (SSH). Os dispositivos Cisco dever\u00e3o estar com SSH habilitado, usu\u00e1rio com privil\u00e9gio n\u00edvel 15 e senha de enable configurada.<\/p>\n<p>Para fins did\u00e1ticos, utilizaremos as seguintes credenciais de laborat\u00f3rio: usu\u00e1rio <strong>cisco<\/strong>, senha <strong>cisco<\/strong> e segredo de enable <strong>cisco<\/strong>. Os switches ter\u00e3o os nomes <strong>SW1<\/strong>, <strong>SW2<\/strong> e <strong>SW3<\/strong>, com IPs 192.168.1.11, 192.168.1.12 e 192.168.1.13, respectivamente. Se o seu ambiente usar credenciais diferentes, ajuste os arquivos de invent\u00e1rio e scripts conforme necess\u00e1rio. O importante \u00e9 que voc\u00ea entenda cada par\u00e2metro e consiga adaptar a configura\u00e7\u00e3o sem copiar \u00e0s cegas.<\/p>\n<p>Por fim, esteja preparado para trabalhar com terminal e editor de texto no Linux. Utilizaremos o <strong>nano<\/strong> ou <strong>vim<\/strong> para criar os arquivos de configura\u00e7\u00e3o. Caso n\u00e3o tenha familiaridade, recomendamos praticar os comandos de edi\u00e7\u00e3o antes de prosseguir. Todos os arquivos ser\u00e3o apresentados com conte\u00fado completo e comentado, de modo que voc\u00ea possa copiar e colar diretamente, respeitando a indenta\u00e7\u00e3o, que \u00e9 obrigat\u00f3ria em YAML e Python.<\/p>\n<h3>Fundamentos da Automa\u00e7\u00e3o Cisco: EEM, Python e Ansible<\/h3>\n<p>A <strong>Automa\u00e7\u00e3o Cisco<\/strong> n\u00e3o \u00e9 uma tecnologia \u00fanica, mas um conjunto de ferramentas e abordagens que atendem a necessidades distintas. O primeiro pilar, <strong>Embedded Event Manager (EEM)<\/strong>, \u00e9 um recurso nativo do IOS\/IOS-XE que monitora eventos internos do sistema e executa a\u00e7\u00f5es programadas quando condi\u00e7\u00f5es espec\u00edficas s\u00e3o detectadas. O EEM n\u00e3o requer servidor externo, agente ou software adicional \u2014 tudo roda dentro do pr\u00f3prio dispositivo. Ele \u00e9 ideal para automa\u00e7\u00f5es on-box, como reagir a uma interface que caiu, a uma mensagem de syslog cr\u00edtica ou a um agendamento cron. A configura\u00e7\u00e3o pode ser feita por meio de <strong>applets<\/strong>, que s\u00e3o pol\u00edticas simples definidas na CLI, ou por <strong>scripts Tcl<\/strong> mais avan\u00e7ados.<\/p>\n<p>O segundo pilar \u00e9 o <strong>Python<\/strong>, a linguagem de programa\u00e7\u00e3o mais utilizada no ecossistema de redes e seguran\u00e7a. Com Python, voc\u00ea pode escrever scripts para se conectar a dispositivos via SSH, executar comandos, coletar sa\u00eddas e aplicar configura\u00e7\u00f5es. A biblioteca <strong>Netmiko<\/strong> abstrai boa parte da complexidade da conex\u00e3o SSH, lidando com prompts, pagina\u00e7\u00e3o e modo enable de forma simples. O Python \u00e9 ideal quando voc\u00ea precisa de flexibilidade total: l\u00f3gica condicional, integra\u00e7\u00e3o com APIs, tratamento de erros e manipula\u00e7\u00e3o de dados estruturados.<\/p>\n<p>O terceiro pilar \u00e9 o <strong>Ansible<\/strong>, uma ferramenta de automa\u00e7\u00e3o declarativa e agente-less. Diferente do Python puro, no Ansible voc\u00ea descreve o estado desejado da rede em arquivos YAML chamados <strong>playbooks<\/strong>. O Ansible usa m\u00f3dulos espec\u00edficos para Cisco, como <strong>ios_config<\/strong>, <strong>ios_command<\/strong> e <strong>ios_facts<\/strong>, e conecta-se aos dispositivos via SSH usando o <strong>network_cli<\/strong>. A grande vantagem \u00e9 a idempot\u00eancia: executar o mesmo playbook v\u00e1rias vezes n\u00e3o gera altera\u00e7\u00f5es desnecess\u00e1rias, pois o Ansible verifica o estado atual antes de aplicar mudan\u00e7as. Al\u00e9m disso, o Ansible escala naturalmente, permitindo executar tarefas em dezenas ou centenas de dispositivos em paralelo.<\/p>\n<p>A combina\u00e7\u00e3o dessas tr\u00eas abordagens cobre praticamente todos os cen\u00e1rios de automa\u00e7\u00e3o de rede. O EEM resolve o imediato dentro do equipamento; o Python oferece liberdade criativa e integra\u00e7\u00e3o; o Ansible entrega orquestra\u00e7\u00e3o escal\u00e1vel e padronizada. Em nossos projetos na <strong>JRT Technology Solutions<\/strong>, costumamos utilizar Ansible para o gerenciamento di\u00e1rio da configura\u00e7\u00e3o, Python para integra\u00e7\u00f5es espec\u00edficas com sistemas de terceiros e EEM para respostas locais a falhas, como rein\u00edcio autom\u00e1tico de interfaces ou acionamento de traps SNMP. Agora, vamos transformar essa teoria em pr\u00e1tica.<\/p>\n<h3>Passo a Passo \u2014 Instalando o Ambiente de Automa\u00e7\u00e3o no Ubuntu\/Debian<\/h3>\n<p>Nesta se\u00e7\u00e3o, prepararemos a esta\u00e7\u00e3o Linux com Ubuntu 22.04 ou Debian 12 para funcionar como controladora de automa\u00e7\u00e3o. O objetivo \u00e9 instalar o Python 3, o gerenciador de pacotes <strong>pip<\/strong>, a ferramenta de virtualiza\u00e7\u00e3o <strong>venv<\/strong>, o <strong>Ansible<\/strong> e as bibliotecas <strong>Netmiko<\/strong> e <strong>Paramiko<\/strong>. Utilizaremos um ambiente virtual Python para isolar as depend\u00eancias do projeto, evitando conflitos com pacotes do sistema. Siga os comandos na ordem exata apresentada.<\/p>\n<ol>\n<li>Atualize a lista de pacotes e instale os pacotes b\u00e1sicos do sistema, incluindo o Python 3, o pip, o suporte a ambientes virtuais, o git e o <strong>sshpass<\/strong>, que ser\u00e1 \u00fatil em testes de conectividade.<\/li>\n<li>Crie um diret\u00f3rio de trabalho chamado <strong>automacao-cisco<\/strong> e entre nele. Dentro dele, crie o ambiente virtual <strong>venv<\/strong> usando o m\u00f3dulo <strong>venv<\/strong> do Python.<\/li>\n<li>Ative o ambiente virtual com o comando <strong>source venv\/bin\/activate<\/strong>. O prompt do terminal deve mudar para indicar que o ambiente est\u00e1 ativo.<\/li>\n<li>Atualize o pip para a vers\u00e3o mais recente e instale o <strong>ansible-core<\/strong>, o <strong>netmiko<\/strong> e o <strong>paramiko<\/strong> usando o pip.<\/li>\n<li>Confirme as vers\u00f5es instaladas com <strong>ansible &#8211;version<\/strong> e <strong>python3 &#8211;version<\/strong>.<\/li>\n<\/ol>\n<pre><code># Atualiza os reposit\u00f3rios e instala pacotes b\u00e1sicos\nsudo apt update\nsudo apt install -y python3 python3-pip python3-venv git sshpass\n\n# Cria o diret\u00f3rio do projeto e o ambiente virtual\nmkdir ~\/automacao-cisco\ncd ~\/automacao-cisco\npython3 -m venv venv\n\n# Ativa o ambiente virtual\nsource venv\/bin\/activate\n\n# Atualiza o pip e instala as depend\u00eancias de automa\u00e7\u00e3o\npip install --upgrade pip\npip install \"ansible-core>=2.15\" netmiko paramiko\n\n# Verifica as vers\u00f5es instaladas\npython3 --version\nansible --version<\/code><\/pre>\n<pre><code class=\"output\">Collecting ansible-core>=2.15\n  Downloading ansible_core-2.15.9-py3-none-any.whl (2.2 MB)\nCollecting netmiko\n  Downloading netmiko-4.3.0-py3-none-any.whl (223 kB)\nCollecting paramiko\n  Downloading paramiko-3.4.0-py3-none-any.whl (224 kB)\n...\nSuccessfully installed ansible-core-2.15.9 netmiko-4.3.0 paramiko-3.4.0\nPython 3.10.12\nansible [core 2.15.9]\n  config file = None\n  configured module search path = ['\/home\/usuario\/.ansible\/plugins\/modules', '\/usr\/share\/ansible\/plugins\/modules']\n  ansible python module location = \/home\/usuario\/automacao-cisco\/venv\/lib\/python3.10\/site-packages\/ansible\n  ansible collection location = \/home\/usuario\/.ansible\/collections:\/usr\/share\/ansible\/collections\n  executable location = \/home\/usuario\/automacao-cisco\/venv\/bin\/ansible\n  python version = 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0]<\/code><\/pre>\n<p>Explicando cada comando: <strong>sudo apt update<\/strong> atualiza o \u00edndice de pacotes; <strong>sudo apt install -y python3 python3-pip python3-venv git sshpass<\/strong> instala o Python, o pip, o m\u00f3dulo venv, o git e o sshpass, com a flag <strong>-y<\/strong> para confirmar automaticamente. O <strong>mkdir ~\/automacao-cisco<\/strong> cria a pasta do projeto; <strong>cd ~\/automacao-cisco<\/strong> entra nela. O comando <strong>python3 -m venv venv<\/strong> cria um ambiente virtual isolado chamado <strong>venv<\/strong>. Ao rodar <strong>source venv\/bin\/activate<\/strong>, as pr\u00f3ximas instala\u00e7\u00f5es com pip ficar\u00e3o restritas a esse ambiente, sem afetar o sistema. O <strong>pip install &#8211;upgrade pip<\/strong> atualiza o gerenciador; <strong>pip install &#8220;ansible-core>=2.15&#8221; netmiko paramiko<\/strong> instala o Ansible Core (m\u00ednimo 2.15), o Netmiko e o Paramiko. A sa\u00edda mostra o sucesso da instala\u00e7\u00e3o e as vers\u00f5es do Python e do Ansible.<\/p>\n<p>Com o ambiente virtual ativo, voc\u00ea pode testar a conectividade com os switches usando o Python e a biblioteca Paramiko no pr\u00f3ximo passo. Lembre-se de que, sempre que abrir um novo terminal, ser\u00e1 necess\u00e1rio reativar o ambiente com <strong>source venv\/bin\/activate<\/strong>. Para sair do ambiente, use o comando <strong>deactivate<\/strong>. Agora, veremos o mesmo procedimento para distribui\u00e7\u00f5es da fam\u00edlia Red Hat.<\/p>\n<h3>Passo a Passo \u2014 Instalando o Ambiente no CentOS\/RHEL\/Rocky Linux<\/h3>\n<p>Se a sua controladora utiliza <strong>Rocky Linux 9<\/strong>, <strong>RHEL 9<\/strong> ou <strong>CentOS Stream<\/strong>, o processo \u00e9 semelhante, mas com o gerenciador de pacotes <strong>dnf<\/strong> e a necessidade de habilitar o reposit\u00f3rio <strong>EPEL<\/strong> para instalar o Ansible a partir dos reposit\u00f3rios oficiais da distribui\u00e7\u00e3o. A instala\u00e7\u00e3o via dnf do <strong>ansible-core<\/strong> garante que o pacote seja mantido pelo gerenciador do sistema, o que \u00e9 recomendado em ambientes corporativos. Alternativamente, voc\u00ea pode instalar tudo com pip dentro de um venv, exatamente como no Ubuntu. Aqui, demonstraremos a abordagem nativa com dnf para o Ansible Core e pip para Netmiko e Paramiko.<\/p>\n<ol>\n<li>Atualize os pacotes do sistema com <strong>dnf update<\/strong>. Em seguida, instale as depend\u00eancias de desenvolvimento, incluindo <strong>python3-devel<\/strong>, <strong>openssl-devel<\/strong>, <strong>git<\/strong> e <strong>sshpass<\/strong>.<\/li>\n<li>Instale o reposit\u00f3rio <strong>EPEL<\/strong>, que fornece pacotes adicionais para RHEL e derivados, e em seguida instale o pacote <strong>ansible-core<\/strong>.<\/li>\n<li>Crie e ative o ambiente virtual Python da mesma forma que no Ubuntu.<\/li>\n<li>Instale o Netmiko e o Paramiko com <strong>pip<\/strong> dentro do ambiente virtual.<\/li>\n<li>Verifique as vers\u00f5es com <strong>ansible &#8211;version<\/strong> e <strong>python3 &#8211;version<\/strong>.<\/li>\n<\/ol>\n<pre><code># Atualiza o sistema e instala depend\u00eancias de desenvolvimento\nsudo dnf update -y\nsudo dnf install -y python3 python3-pip python3-devel openssl-devel git sshpass\n\n# Habilita o reposit\u00f3rio EPEL e instala o Ansible Core\nsudo dnf install -y epel-release\nsudo dnf install -y ansible-core\n\n# Cria e ativa o ambiente virtual\nmkdir ~\/automacao-cisco\ncd ~\/automacao-cisco\npython3 -m venv venv\nsource venv\/bin\/activate\n\n# Instala Netmiko e Paramiko com pip\npip install --upgrade pip\npip install netmiko paramiko\n\n# Verifica as vers\u00f5es\npython3 --version\nansible --version<\/code><\/pre>\n<pre><code class=\"output\">Last metadata expiration check: 0:02:15 ago on Sun 13 Sep 2026 09:22:41 AM -03.\nDependencies resolved.\n================================================================================\n Package                Architecture   Version              Repository     Size\n================================================================================\n ansible-core           x86_64         1:2.14.2-7.el9      appstream      2.2 M\n epel-release           noarch         9-5.el9             extras         18 k\n...\nComplete!\nPython 3.9.18\nansible [core 2.14.2]\n  config file = None\n  configured module search path = ['\/home\/usuario\/.ansible\/plugins\/modules', '\/usr\/share\/ansible\/plugins\/modules']\n  ansible python module location = \/usr\/lib\/python3.9\/site-packages\/ansible\n  executable location = \/usr\/bin\/ansible\n  python version = 3.9.18 (main, Jun  1 2023, 17:24:21) [GCC 11.3.1 20221121 (Red Hat 11.3.1-4)]<\/code><\/pre>\n<p>Aqui, o ponto de aten\u00e7\u00e3o \u00e9 o gerenciador <strong>dnf<\/strong>. O comando <strong>sudo dnf update -y<\/strong> atualiza todos os pacotes; <strong>sudo dnf install -y python3 python3-pip python3-devel openssl-devel git sshpass<\/strong> instala o Python, o pip, os cabe\u00e7alhos de desenvolvimento do Python, o OpenSSL, o git e o sshpass. A flag <strong>-y<\/strong> confirma automaticamente. O reposit\u00f3rio <strong>EPEL<\/strong> \u00e9 habilitado com <strong>sudo dnf install -y epel-release<\/strong>, e o pacote <strong>ansible-core<\/strong> \u00e9 instalado via dnf. Em seguida, criamos o ambiente virtual e instalamos o Netmiko e o Paramiko com pip, isolando as bibliotecas Python do sistema. A sa\u00edda mostra a instala\u00e7\u00e3o conclu\u00edda e as vers\u00f5es do Python e Ansible.<\/p>\n<p>Vale destacar que o Ansible instalado via dnf no Rocky\/RHEL fica dispon\u00edvel no PATH do sistema, mesmo antes de ativar o venv. Para evitar conflitos, recomendamos ativar o venv antes de executar scripts Python que dependam do Netmiko. Em ambos os sistemas, o ambiente est\u00e1 pronto para receber os arquivos de invent\u00e1rio e playbooks que criaremos a seguir.<\/p>\n<h3>Configura\u00e7\u00e3o Detalhada \u2014 Invent\u00e1rio e Playbooks Ansible para Cisco IOS<\/h3>\n<p>Com o Ansible instalado, precisamos definir tr\u00eas arquivos essenciais: o <strong>ansible.cfg<\/strong> com par\u00e2metros globais, o <strong>hosts.cfg<\/strong> (invent\u00e1rio) com os dispositivos e suas vari\u00e1veis de conex\u00e3o, e os <strong>playbooks<\/strong> que descrevem as tarefas. O <strong>ansible.cfg<\/strong> indica onde est\u00e1 o invent\u00e1rio, desabilita a checagem de chave SSH (para laborat\u00f3rio), desativa a coleta autom\u00e1tica de fatos e define tempos de timeout. O <strong>hosts.cfg<\/strong> organiza os switches no grupo <strong>switches<\/strong> e define as vari\u00e1veis de conex\u00e3o comuns: usu\u00e1rio, senha, tipo de rede, m\u00e9todo de conex\u00e3o e credenciais de enable.<\/p>\n<p>Os playbooks utilizam m\u00f3dulos nativos da collection <strong>cisco.ios<\/strong>, que j\u00e1 est\u00e1 embutida no Ansible Core. O m\u00f3dulo <strong>ios_command<\/strong> executa comandos de show e retorna a sa\u00edda; o <strong>ios_config<\/strong> aplica configura\u00e7\u00f5es de forma idempotente; e o <strong>ios_facts<\/strong> coleta informa\u00e7\u00f5es do dispositivo. Antes de escrever os playbooks, crie os arquivos de configura\u00e7\u00e3o exatamente como mostrado abaixo.<\/p>\n<pre><code># Arquivo ansible.cfg \u2014 par\u00e2metros globais do Ansible\n[defaults]\ninventory = .\/hosts.cfg\nhost_key_checking = False\nretry_files_enabled = False\ngathering = explicit\ninterpreter_python = auto_silent\n\n[persistent_connection]\nconnect_timeout = 30\ncommand_timeout = 60<\/code><\/pre>\n<pre><code># Arquivo hosts.cfg \u2014 invent\u00e1rio de dispositivos Cisco\n[switches]\nSW1 ansible_host=192.168.1.11\nSW2 ansible_host=192.168.1.12\nSW3 ansible_host=192.168.1.13\n\n[switches:vars]\nansible_user=cisco\nansible_password=cisco\nansible_network_os=ios\nansible_connection=network_cli\nansible_become=yes\nansible_become_method=enable\nansible_become_password=cisco<\/code><\/pre>\n<pre><code># Playbook backup_configs.yml \u2014 backup da running-config\n---\n- name: Backup das configura\u00e7\u00f5es dos switches Cisco\n  hosts: switches\n  gather_facts: no\n  tasks:\n    - name: Capturar running-config\n      ios_command:\n        commands: show running-config\n      register: output\n\n    - name: Salvar backup localmente\n      copy:\n        content: \"{{ output.stdout[0] }}\"\n        dest: \".\/backups\/{{ inventory_hostname }}_running-config_{{ ansible_date_time.date }}.cfg\"\n      delegate_to: localhost<\/code><\/pre>\n<pre><code># Playbook vlan_deploy.yml \u2014 deploy de VLANs nos switches\n---\n- name: Deploy de VLANs nos switches\n  hosts: switches\n  gather_facts: no\n  vars:\n    vlans:\n      - id: 100\n        name: VENDAS\n      - id: 200\n        name: TI\n      - id: 300\n        name: VOZ\n  tasks:\n    - name: Criar VLANs\n      ios_config:\n        lines:\n          - \"vlan {{ item.id }}\"\n          - \" name {{ item.name }}\"\n      loop: \"{{ vlans }}\"<\/code><\/pre>\n<p>Vamos detalhar cada arquivo. No <strong>ansible.cfg<\/strong>, a diretiva <strong>inventory = .\/hosts.cfg<\/strong> indica que o invent\u00e1rio est\u00e1 no arquivo local; <strong>host_key_checking = False<\/strong> evita a confirma\u00e7\u00e3o manual da chave SSH, o que \u00e9 aceit\u00e1vel em laborat\u00f3rio, mas em produ\u00e7\u00e3o deve ser substitu\u00eddo por chaves validadas. <strong>retry_files_enabled = False<\/strong> evita a cria\u00e7\u00e3o de arquivos .retry ap\u00f3s falhas. <strong>gathering = explicit<\/strong> desativa a coleta autom\u00e1tica de fatos, pois usaremos m\u00f3dulos espec\u00edficos. A se\u00e7\u00e3o <strong>[persistent_connection]<\/strong> define <strong>connect_timeout = 30<\/strong> e <strong>command_timeout = 60<\/strong> para evitar timeout em dispositivos lentos.<\/p>\n<p>No <strong>hosts.cfg<\/strong>, cada switch \u00e9 listado com seu endere\u00e7o IP. A vari\u00e1vel <strong>ansible_network_os=ios<\/strong> informa ao Ansible que se trata de um dispositivo Cisco IOS; <strong>ansible_connection=network_cli<\/strong> usa a conex\u00e3o de rede via CLI persistente; <strong>ansible_become=yes<\/strong> e <strong>ansible_become_method=enable<\/strong> indicam que o Ansible deve entrar no modo privilegiado, usando <strong>ansible_become_password<\/strong> para a senha de enable. Os playbooks usam <strong>hosts: switches<\/strong> para executar as tarefas em todos os dispositivos do grupo. O bloco <strong>vars<\/strong> no playbook de VLANs define uma lista de dicion\u00e1rios com <strong>id<\/strong> e <strong>name<\/strong>, que \u00e9 percorrida pelo <strong>loop<\/strong> e inserida nas linhas de configura\u00e7\u00e3o via Jinja2, gerando comandos como <strong>vlan 100<\/strong> e <strong>name VENDAS<\/strong>.<\/p>\n<p>Para executar esses playbooks, crie o diret\u00f3rio <strong>backups<\/strong> antes de rodar o backup, pois o m\u00f3dulo <strong>copy<\/strong> espera que o destino exista. Em seguida, execute os comandos abaixo no terminal, dentro do diret\u00f3rio <strong>~\/automacao-cisco<\/strong>. O primeiro comando testa a comunica\u00e7\u00e3o com todos os switches usando o m\u00f3dulo <strong>ping<\/strong>; o segundo executa o backup; o terceiro aplica as VLANs.<\/p>\n<pre><code># Testa a conectividade com todos os switches\nansible -i hosts.cfg switches -m ping\n\n# Executa o backup das configura\u00e7\u00f5es\nansible-playbook -i hosts.cfg backup_configs.yml\n\n# Aplica as VLANs em todos os switches\nansible-playbook -i hosts.cfg vlan_deploy.yml<\/code><\/pre>\n<pre><code class=\"output\">SW1 | SUCCESS => {\n    \"changed\": false,\n    \"ping\": \"pong\"\n}\nSW2 | SUCCESS => {\n    \"changed\": false,\n    \"ping\": \"pong\"\n}\nSW3 | SUCCESS => {\n    \"changed\": false,\n    \"ping\": \"pong\"\n}\nPLAY [Backup das configura\u00e7\u00f5es dos switches Cisco] ********************************\nTASK [Capturar running-config] ****************************************************\nok: [SW1]\nok: [SW2]\nok: [SW3]\nTASK [Salvar backup localmente] ***************************************************\nchanged: [SW1]\nchanged: [SW2]\nchanged: [SW3]\nPLAY RECAP ***********************************************************************\nSW1             : ok=2    changed=1    unreachable=0    failed=0    skipped=0\nSW2             : ok=2    changed=1    unreachable=0    failed=0    skipped=0\nSW3             : ok=2    changed=1    unreachable=0    failed=0    skipped=0<\/code><\/pre>\n<p>O primeiro comando <strong>ansible -i hosts.cfg switches -m ping<\/strong> usa o m\u00f3dulo <strong>ping<\/strong> para verificar se o Ansible consegue estabelecer a conex\u00e3o de rede. A sa\u00edda mostra <strong>&#8220;ping&#8221;: &#8220;pong&#8221;<\/strong> para cada switch, confirmando que a comunica\u00e7\u00e3o \u00e9 bem-sucedida. O segundo comando executa o playbook de backup: a tarefa <strong>Capturar running-config<\/strong> retorna <strong>ok<\/strong>, pois n\u00e3o altera nada, e a tarefa <strong>Salvar backup localmente<\/strong> retorna <strong>changed<\/strong>, indicando que os arquivos foram criados. O terceiro comando aplica as VLANs, e o resumo final <strong>PLAY RECAP<\/strong> consolida o resultado de cada host. Agora, veremos como usar<\/p>\n<div style=\"margin:52px 0 40px;padding:36px 28px;background:linear-gradient(135deg,#0f172a 0%,#1a2744 100%);border:2px solid #25D366;border-radius:18px;text-align:center;box-shadow:0 4px 28px rgba(37,211,102,0.18)\">\n<p style=\"margin:0 0 10px;font-size:18px;color:#ffffff;font-weight:700;line-height:1.4\">Quer aprender na pr\u00e1tica com especialistas?<\/p>\n<p style=\"margin:0 0 28px;font-size:15px;color:#94a3b8;font-weight:400;line-height:1.6\">A JRT Technology Solutions oferece treinamentos e implementa\u00e7\u00e3o de Cisco IOS para equipes corporativas.<\/p>\n<p>  <a href=\"https:\/\/api.whatsapp.com\/send\/?phone=5521980606699&#038;text=Ol%C3%A1!%20Tenho%20interesse%20no%20treinamento%20de%20Cisco%20IOS.&#038;type=phone_number&#038;app_absent=0\"\n     target=\"_blank\" rel=\"noopener noreferrer\"\n     style=\"display:inline-flex;align-items:center;gap:12px;background:#25D366;color:#ffffff;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;font-weight:700;padding:15px 32px;border-radius:100px;text-decoration:none;box-shadow:0 4px 16px rgba(37,211,102,0.45);letter-spacing:0.01em\"><br \/>\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"#ffffff\"><path d=\"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z\"\/><\/svg><br \/>\n    Falar no WhatsApp<br \/>\n  <\/a>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso Cisco IOS \u2014 Do Zero ao Avan\u00e7ado. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\u00e7\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da &#8230; <a title=\"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes\" class=\"read-more\" href=\"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/\" aria-label=\"Read more about Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes\">Ler mais<\/a><\/p>\n","protected":false},"author":1,"featured_media":2862,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"iawp_total_views":0,"footnotes":""},"categories":[9],"tags":[3456],"class_list":["post-2863","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-conectividade","tag-cisco-ios-do-zero-ao-avancado-automacao-cisco-eem-python-e-ansible-para-redes"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso Cisco IOS \u2014 Do Zero ao Avan\u00e7ado. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\u00e7\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Thiago Paes Rodrigues\"\/>\n\t<meta name=\"google-site-verification\" content=\"QKPfpDCzHmzKyfFk5j1KZW3HhROYTPeqwBN5qcJ8qcg\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_BR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"BLOG - JRT Technology Solutions - Um espa\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\u00e1tica e atual. Aqui voc\u00ea encontra novidades, an\u00e1lises, tutoriais e reflex\u00f5es sobre inova\u00e7\u00e3o, intelig\u00eancia artificial, gadgets, programa\u00e7\u00e3o e tend\u00eancias digitais. Nosso objetivo \u00e9 simplificar o complexo, ajudar voc\u00ea a se manter atualizado e transformar conhecimento em pr\u00e1tica no seu dia a dia.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions\" \/>\n\t\t<meta property=\"og:description\" content=\"Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso Cisco IOS \u2014 Do Zero ao Avan\u00e7ado. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\u00e7\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"100\" \/>\n\t\t<meta property=\"og:image:height\" content=\"75\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-13T21:20:37+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-13T21:20:37+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/profile.php?id=61590814880509\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso Cisco IOS \u2014 Do Zero ao Avan\u00e7ado. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\u00e7\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#blogposting\",\"name\":\"Aula 24: Automa\\u00e7\\u00e3o Cisco \\u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions\",\"headline\":\"Aula 24: Automa\\u00e7\\u00e3o Cisco \\u2014 EEM, Python e Ansible para redes\",\"author\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/ai-image-1789334431982.jpg\",\"width\":1440,\"height\":1024,\"caption\":\"Aula 24: Automa\\u00e7\\u00e3o Cisco \\u2014 EEM, Python e Ansible para redes\"},\"datePublished\":\"2026-09-13T18:20:37-03:00\",\"dateModified\":\"2026-09-13T18:20:37-03:00\",\"inLanguage\":\"pt-BR\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#webpage\"},\"articleSection\":\"Conectividade, Cisco IOS \\u2014 Do Zero ao Avan\\u00e7ado: Automa\\u00e7\\u00e3o Cisco \\u2014 EEM, Python e Ansible para redes\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/jrtx.com.br\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/category\\\/conectividade\\\/#listItem\",\"name\":\"Conectividade\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/category\\\/conectividade\\\/#listItem\",\"position\":2,\"name\":\"Conectividade\",\"item\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/category\\\/conectividade\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#listItem\",\"name\":\"Aula 24: Automa\\u00e7\\u00e3o Cisco \\u2014 EEM, Python e Ansible para redes\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#listItem\",\"position\":3,\"name\":\"Aula 24: Automa\\u00e7\\u00e3o Cisco \\u2014 EEM, Python e Ansible para redes\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/category\\\/conectividade\\\/#listItem\",\"name\":\"Conectividade\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#organization\",\"name\":\"JRT Technology Solutions | Tecnologia e Inova\\u00e7\\u00e3o para Empresas\",\"description\":\"Um espa\\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\\u00e1tica e atual. Aqui voc\\u00ea encontra novidades, an\\u00e1lises, tutoriais e reflex\\u00f5es sobre inova\\u00e7\\u00e3o, intelig\\u00eancia artificial, gadgets, programa\\u00e7\\u00e3o e tend\\u00eancias digitais. Nosso objetivo \\u00e9 simplificar o complexo, ajudar voc\\u00ea a se manter atualizado e transformar conhecimento em pr\\u00e1tica no seu dia a dia.\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/\",\"telephone\":\"+552138277513\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/cropped-logo-mini.jpg\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#organizationLogo\",\"width\":100,\"height\":75},\"image\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#organizationLogo\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/profile.php?id=61590814880509\",\"https:\\\/\\\/www.instagram.com\\\/jrtx.tech\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/#author\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/\",\"name\":\"Thiago Paes Rodrigues\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#authorImage\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/cropped-foto-rascunho3-96x96.jpeg\",\"width\":96,\"height\":96,\"caption\":\"Thiago Paes Rodrigues\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#webpage\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/\",\"name\":\"Aula 24: Automa\\u00e7\\u00e3o Cisco \\u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions\",\"description\":\"Bem-vindo \\u00e0 vig\\u00e9sima quarta aula do curso Cisco IOS \\u2014 Do Zero ao Avan\\u00e7ado. Chegamos a um dos momentos mais estrat\\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\\u00e7\\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\\u00e2ncia, seguran\\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da\",\"inLanguage\":\"pt-BR\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/author\\\/thiago\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/ai-image-1789334431982.jpg\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#mainImage\",\"width\":1440,\"height\":1024,\"caption\":\"Aula 24: Automa\\u00e7\\u00e3o Cisco \\u2014 EEM, Python e Ansible para redes\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/2026\\\/09\\\/13\\\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\\\/#mainImage\"},\"datePublished\":\"2026-09-13T18:20:37-03:00\",\"dateModified\":\"2026-09-13T18:20:37-03:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/\",\"name\":\"JRT Technology Solutions | Tecnologia e Inova\\u00e7\\u00e3o para Empresas\",\"alternateName\":\"JRT Technology Solutions | Tecnologia e Inova\\u00e7\\u00e3o para Empresas\",\"description\":\"Um espa\\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\\u00e1tica e atual. Aqui voc\\u00ea encontra novidades, an\\u00e1lises, tutoriais e reflex\\u00f5es sobre inova\\u00e7\\u00e3o, intelig\\u00eancia artificial, gadgets, programa\\u00e7\\u00e3o e tend\\u00eancias digitais. Nosso objetivo \\u00e9 simplificar o complexo, ajudar voc\\u00ea a se manter atualizado e transformar conhecimento em pr\\u00e1tica no seu dia a dia.\",\"inLanguage\":\"pt-BR\",\"publisher\":{\"@id\":\"https:\\\/\\\/jrtx.com.br\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions","description":"Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso Cisco IOS \u2014 Do Zero ao Avan\u00e7ado. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\u00e7\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da","canonical_url":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"QKPfpDCzHmzKyfFk5j1KZW3HhROYTPeqwBN5qcJ8qcg","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#blogposting","name":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions","headline":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes","author":{"@id":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/#author"},"publisher":{"@id":"https:\/\/jrtx.com.br\/blog\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/09\/ai-image-1789334431982.jpg","width":1440,"height":1024,"caption":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes"},"datePublished":"2026-09-13T18:20:37-03:00","dateModified":"2026-09-13T18:20:37-03:00","inLanguage":"pt-BR","mainEntityOfPage":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#webpage"},"isPartOf":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#webpage"},"articleSection":"Conectividade, Cisco IOS \u2014 Do Zero ao Avan\u00e7ado: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes"},{"@type":"BreadcrumbList","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog#listItem","position":1,"name":"Home","item":"https:\/\/jrtx.com.br\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/category\/conectividade\/#listItem","name":"Conectividade"}},{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/category\/conectividade\/#listItem","position":2,"name":"Conectividade","item":"https:\/\/jrtx.com.br\/blog\/category\/conectividade\/","nextItem":{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#listItem","name":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes"},"previousItem":{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#listItem","position":3,"name":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes","previousItem":{"@type":"ListItem","@id":"https:\/\/jrtx.com.br\/blog\/category\/conectividade\/#listItem","name":"Conectividade"}}]},{"@type":"Organization","@id":"https:\/\/jrtx.com.br\/blog\/#organization","name":"JRT Technology Solutions | Tecnologia e Inova\u00e7\u00e3o para Empresas","description":"Um espa\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\u00e1tica e atual. Aqui voc\u00ea encontra novidades, an\u00e1lises, tutoriais e reflex\u00f5es sobre inova\u00e7\u00e3o, intelig\u00eancia artificial, gadgets, programa\u00e7\u00e3o e tend\u00eancias digitais. Nosso objetivo \u00e9 simplificar o complexo, ajudar voc\u00ea a se manter atualizado e transformar conhecimento em pr\u00e1tica no seu dia a dia.","url":"https:\/\/jrtx.com.br\/blog\/","telephone":"+552138277513","logo":{"@type":"ImageObject","url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#organizationLogo","width":100,"height":75},"image":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#organizationLogo"},"sameAs":["https:\/\/www.facebook.com\/profile.php?id=61590814880509","https:\/\/www.instagram.com\/jrtx.tech\/"]},{"@type":"Person","@id":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/#author","url":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/","name":"Thiago Paes Rodrigues","image":{"@type":"ImageObject","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#authorImage","url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/09\/cropped-foto-rascunho3-96x96.jpeg","width":96,"height":96,"caption":"Thiago Paes Rodrigues"}},{"@type":"WebPage","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#webpage","url":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/","name":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions","description":"Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso Cisco IOS \u2014 Do Zero ao Avan\u00e7ado. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\u00e7\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da","inLanguage":"pt-BR","isPartOf":{"@id":"https:\/\/jrtx.com.br\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#breadcrumblist"},"author":{"@id":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/#author"},"creator":{"@id":"https:\/\/jrtx.com.br\/blog\/author\/thiago\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/09\/ai-image-1789334431982.jpg","@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#mainImage","width":1440,"height":1024,"caption":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes"},"primaryImageOfPage":{"@id":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/#mainImage"},"datePublished":"2026-09-13T18:20:37-03:00","dateModified":"2026-09-13T18:20:37-03:00"},{"@type":"WebSite","@id":"https:\/\/jrtx.com.br\/blog\/#website","url":"https:\/\/jrtx.com.br\/blog\/","name":"JRT Technology Solutions | Tecnologia e Inova\u00e7\u00e3o para Empresas","alternateName":"JRT Technology Solutions | Tecnologia e Inova\u00e7\u00e3o para Empresas","description":"Um espa\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\u00e1tica e atual. Aqui voc\u00ea encontra novidades, an\u00e1lises, tutoriais e reflex\u00f5es sobre inova\u00e7\u00e3o, intelig\u00eancia artificial, gadgets, programa\u00e7\u00e3o e tend\u00eancias digitais. Nosso objetivo \u00e9 simplificar o complexo, ajudar voc\u00ea a se manter atualizado e transformar conhecimento em pr\u00e1tica no seu dia a dia.","inLanguage":"pt-BR","publisher":{"@id":"https:\/\/jrtx.com.br\/blog\/#organization"}}]},"og:locale":"pt_BR","og:site_name":"BLOG - JRT Technology Solutions - Um espa\u00e7o dedicado a explorar o universo da tecnologia de forma clara, pr\u00e1tica e atual. Aqui voc\u00ea encontra novidades, an\u00e1lises, tutoriais e reflex\u00f5es sobre inova\u00e7\u00e3o, intelig\u00eancia artificial, gadgets, programa\u00e7\u00e3o e tend\u00eancias digitais. Nosso objetivo \u00e9 simplificar o complexo, ajudar voc\u00ea a se manter atualizado e transformar conhecimento em pr\u00e1tica no seu dia a dia.","og:type":"article","og:title":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions","og:description":"Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso Cisco IOS \u2014 Do Zero ao Avan\u00e7ado. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\u00e7\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da","og:url":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/","og:image":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg","og:image:secure_url":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg","og:image:width":100,"og:image:height":75,"article:published_time":"2026-09-13T21:20:37+00:00","article:modified_time":"2026-09-13T21:20:37+00:00","article:publisher":"https:\/\/www.facebook.com\/profile.php?id=61590814880509","twitter:card":"summary_large_image","twitter:title":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes - BLOG - JRT Technology Solutions","twitter:description":"Bem-vindo \u00e0 vig\u00e9sima quarta aula do curso Cisco IOS \u2014 Do Zero ao Avan\u00e7ado. Chegamos a um dos momentos mais estrat\u00e9gicos para qualquer profissional de redes e infraestrutura: dominar a Automa\u00e7\u00e3o Cisco. Depois de percorrer desde os fundamentos da CLI, VLANs, roteamento, protocolos de redund\u00e2ncia, seguran\u00e7a e troubleshooting, nesta aula vamos elevar o patamar da","twitter:image":"https:\/\/jrtx.com.br\/blog\/wp-content\/uploads\/2026\/03\/cropped-logo-mini.jpg"},"aioseo_meta_data":{"post_id":"2863","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_custom_url":null,"og_image_custom_fields":null,"og_image_url":null,"og_image_width":null,"og_image_height":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_image_url":null,"twitter_title":null,"twitter_description":null,"schema_type":"default","schema_type_options":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null,"created":"2026-09-13 21:21:34","updated":"2026-09-13 21:21:34","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/jrtx.com.br\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/jrtx.com.br\/blog\/category\/conectividade\/\" title=\"Conectividade\">Conectividade<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tAula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/jrtx.com.br\/blog"},{"label":"Conectividade","link":"https:\/\/jrtx.com.br\/blog\/category\/conectividade\/"},{"label":"Aula 24: Automa\u00e7\u00e3o Cisco \u2014 EEM, Python e Ansible para redes","link":"https:\/\/jrtx.com.br\/blog\/2026\/09\/13\/aula-24-automacao-cisco-eem-python-e-ansible-para-redes\/"}],"_links":{"self":[{"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/posts\/2863","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/comments?post=2863"}],"version-history":[{"count":0,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/posts\/2863\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/media\/2862"}],"wp:attachment":[{"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/media?parent=2863"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/categories?post=2863"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jrtx.com.br\/blog\/wp-json\/wp\/v2\/tags?post=2863"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}