Voltar ao blog

Usando o Ansible para instalar e configurar o WordPress com LAMP no Ubuntu

Usando o Ansible para instalar e configurar o WordPress com LAMP no Ubuntu

Introdução

Sempre há momentos em que precisamos configurar novos servidores. Isso pode ser para distribuir a carga de trabalho ou se simplesmente precisarmos de mais servidores. Ao configurar novos servidores, os usuários precisam utilizar a automação de servidores para configurá-los. Isso é feito para minimizar a intervenção manual. Ansible é uma das ferramentas de gerenciamento de configuração que podem ser usadas para configurar automaticamente um novo servidor, reduzindo as chances de erro humano ao configurar o servidor manualmente.

O Ansible é uma ferramenta rica em recursos e, ao mesmo tempo, simples em sua arquitetura. Ele facilita a configuração de servidores por meio de scripts. Devido à sua arquitetura concisa, o Ansible não requer a instalação de nenhum outro software nos nós.

Neste tutorial, mostraremos como usar o Ansible para automatizar a instalação do WordPress com a pilha LAMP em execução em um servidor Ubuntu. WordPress é um CMS usado para criar blogs e sites utilizando PHP como linguagem de programação e o banco de dados MySQL para armazenar dados. Assim que o WordPress estiver instalado, os usuários poderão administrar o site usando a interface web.

Pré-requisitos

Resumo das Ações do Ansible Playbook

Nesta seção, veremos o que o nosso Ansible Playbook faz quando o executamos. Este procedimento é uma alternativa à configuração manual fornecida aqui: Como Instalar o WordPress com LAMP no Ubuntu 20.04.

Quando executamos o Playbook, o Ansible irá:

  • Instalar aptitude que é o gerenciador de pacotes preferido do Ansible.
  • Instalar e configurar extensões PHP e pacotes LAMP.
  • Criar um novo Apache VirtualHost para o site do WordPress.
  • Habilitar o mod_rewrite e desabilitar o site padrão oferecido pelo Apache.
  • Definir a senha para o usuário root do MySQL.
  • Remover as contas anônimas do MySQL e o banco de dados de teste.
  • Criar um novo usuário e um novo banco de dados. Estes serão usados pelo site do WordPress.
  • Configurar o UFW para permitir tráfego HTTP na porta configurada ( 80 por padrão).
  • Baixar e descompactar o WordPress.
  • Configurar as permissões e proprietários dos diretórios.
  • Configurar um novo arquivo wp-config.php usando seu modelo.

Guia do Ansible Playbook para WordPress no LAMP

Primeiro, teremos que obter o playbook do WordPress no LAMP e suas dependências do repositório do-community/ansible-playbooks. Nós clonaremos este repositório dentro do Nó de Controle do Ansible.

Você pode executar o comando git pull conforme mencionado abaixo:

Certifique-se de ter o pull atualizado do repositório mencionado acima. Isso caso você já tenha clonado o repositório antes. Abaixo está como você pode obter a atualização:

Agora temos que localizar os arquivos dentro da pasta wordpress-lamp_ubuntu . O nome desta pasta pode ser diferente dependendo da versão do Ubuntu que você está usando. À primeira vista, você verá a seguinte estrutura neste diretório:

Using Ansible to Install and Configure WordPress with LAMP on Ubuntu Dir Struc

Vamos resumir o propósito desses arquivos abaixo:

  • files/apache.conf.j2: O Apache usa VirtualHost. Este arquivo é usado para especificar as configurações do VirtualHost.
  • files/wp-config.php.j2: Este arquivo contém configurações para configurar o WordPress.
  • vars/default.yml: Ele configura as definições do playbook.
  • playbook.yml: Se houver tarefas que precisam ser executadas em um servidor remoto, este arquivo é usado para configurá-las.
  • readme.md: Guia para usar o playbook.

Temos que editar o arquivo de variáveis do playbook para personalizar a instalação. Primeiro, abra o vars/default.yaml arquivo que está localizado dentro do diretório mencionado acima:

Este arquivo é bastante longo. Ele possui uma série de configurações para nos ajudar com a nossa instalação:

Aqui estamos interessados nas seguintes variáveis:

  • php_modules: Um array contendo extensões PHP que devem ser instaladas para suportar a sua configuração do WordPress. Se você quiser instalar mais módulos, pode especificar isso aqui.
  • mysql_root_password: A senha para a conta root do MySQL.
  • mysql_db: Isso especifica o nome do banco de dados MySQL que o WordPress usará.
  • mysql_user: O nome do usuário MySQL que deve ser criado para o WordPress.
  • mysql_password: A senha para o novo usuário MySQL.
  • http_host: Nome de domínio ou o IP do servidor.
  • http_conf: O nome do arquivo de configuração que será criado no Apache.
  • http_port: Porta HTTP para este host virtual. Esta porta é usada para acessar o site. O valor padrão é 80.

Next, enter the values in the above file and save and close. For the users using the nano editor, press CTRL+X, Y, e pressione ENTER.

Agora você está pronto para executar este playbook. Você pode executar este playbook em um ou mais servidores. Se você quiser executar este playbook em algum servidor específico, você pode usar a -l flag. Além disso, se você precisar especificar o usuário para se conectar ao servidor remoto, especifique o usuário usando a -u flag.

Suponha que queiramos executar nosso playbook em um servidor qualquer, srvr1 usando o usuário u1, podemos executar o comando abaixo:

Depois de executar o comando acima, você obterá uma saída como a seguinte:

Aguarde até que a execução do playbook seja concluída. Em seguida, navegue até o server_name no seu navegador web:

Você verá a tela:

WP Page

Em seguida, selecione o idioma de sua preferência e pressione Continuar. Você verá a próxima tela solicitando alguns detalhes para concluir a instalação:

Using Ansible to Install and Configure WordPress with LAMP on Ubuntu Set User Pass

Depois disso, insira as informações e pressione Instalar WordPress. Isso levará algum tempo e então você verá uma tela como a abaixo:

Using Ansible to Install and Configure WordPress with LAMP on Ubuntu Install Success

Selecione Login para fazer login no seu site e definir as configurações:

Homepage

Conteúdo do Ansible Playbook

Lembre-se da pasta wordpress-lamp_ubuntu . Ela contém alguns arquivos dentro dela. Então, vamos analisá-los um de cada vez:

●    vars/default.yml

Este arquivo contém valores que são usados para definir as configurações do seu site WordPress:

●    files/apache.conf.j2

Este arquivo é usado para configurar o VirtualHost do Apache:

●    files/wp-config.php.j2

Este arquivo é usado para configurar o WordPress. Ele contém chaves e salts exclusivos gerados por funções de hash:

●    playbook.yml

Este arquivo contém todas as tarefas definidas a partir desta configuração. Ele começa listando um grupo de servidores que são o alvo desta configuração. Ele inclui o vars/default.yml arquivo de variáveis para carregar as opções de configuração:

Você pode modificar esses arquivos conforme necessário para atender às suas necessidades específicas para o site que está construindo.

Conclusão

Neste tutorial, demonstramos como você pode automatizar a instalação e configuração de um site WordPress rodando na pilha LAMP no sistema operacional Ubuntu mais recente com o Ansible.

Para mais guias sobre como trabalhar com o Ansible, você pode conferir os seguintes tutoriais em nosso blog:

Boa computação!

author

Preslav Dobrev

Autor · CloudSigma

Preslav Dobrev é um designer criativo na CloudSigma, focado na construção de uma identidade empresarial consistente por meio de canais de marketing tradicionais e inovadores. Ele é hábil em combinar a visão artística com o marketing estratégico para criar narrativas de marca impactantes.

Comentários

Nenhum comentário ainda. Seja o primeiro.