[PYTHON] Road to the Wizard: 7e étape

Ansible

J'aime Ruby. Cependant, je crois aveuglément que Comment devenir un hacker dit que Python peut être utilisé. Je vais donc aller à Chef-> Ansible en tant qu'outil de construction d'environnement.

J'ai préparé un certain nombre d'environnements d'exécution dans Vagrant, je vais donc le configurer immédiatement.

Difficulté à venir Epel ne fonctionne pas bien ...

J'ai essayé de télécharger Epel avec la commande wget, et maintenant je peux l'exécuter avec rpm en utilisant la commande! (Victoire facile) J'ai pensé et j'ai tapé sudo yum install ansible '', mais pour une raison quelconque, cela a donné une erreur et n'a pas fonctionné. sudo yum -y update '' a également cessé de fonctionner Pourquoi (´ ・ ω ・ `)?

Je ne peux pas m'en empêcher, alors je suis désolé, mais j'ai décidé de l'expulser ...

Essayez différentes méthodes d'installation et réussissez

sudo yum localinstall http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm -y

J'ai trouvé cette commande sur le site que j'ai trouvé, j'ai donc réussi à télécharger Epel en exécutant le code ci-dessus!

Avec le même élan sudo yum install ansible -y À la suite de l'exécution, l'installation d'Unsible a réussi.

Authentifier la clé

Si vous continuez en référence à la classe de M. Dotinstall, l'étape suivante sera l'authentification par clé. Pour effectuer l'authentification par clé, vous devez entrer `` ssh-keygen -t rsa '' du côté hôte pour émettre une clé publique. Créez ensuite un fichier .ssh / config avec vi et saisissez les informations du serveur auquel se connecter. Comment écrire

Host web HostName 192.168.33.12

Host db HostName 192.168.33.13

Écrivez comme ça. Désormais, l'authentification par clé et les paramètres d'hôte sont parfaits

Le suivant est ansible!

Ansible

La première chose à faire est d'écrire les informations de destination de connexion dans un fichier appelé host. Ce sera comme ça.

[web] 192.168.33.12

[db] 192.168.33.13

Le nom et l'adresse IP du Web et de la base de données correspondent désormais. Au fait, si vous écrivez tout, ce sera tout.

... cela peut-il être groupé? Découvrons plus tard

Je vais essayer de cingler ces deux. La commande est comme ça!

ansible all -i hosts -m ping

Playbook et ansible.cfg

Il est enfin temps d'exécuter la commande ansible, ce qui est encore plus pratique. Il n'y aura pas de commande directe pour utiliser des fonctions plus avancées

Le nom de fichier qui décrit des instructions telles que chef est playbook.yml. Alors, que dois-je faire avant de l'écrire dans playbook.yml? Il semble que vous ayez besoin de quelque chose appelé ansible.cfg.

Cependant, il semble qu'il n'y ait que deux lignes à écrire. [defaults] hostfile= ./hosts

seulement ça...

court!

En lisant ceci dans playbook.yml, il semble que vous puissiez décrire de manière flexible quel type de commande est envoyé à quel serveur. Comme un embrayage de voiture de mission

Lisez ceci dans playbook.yml.

playbook.yml est une évidence, mais puisqu'il s'agit d'un fichier yaml --- Commencez à écrire avec.

Indiquez ensuite le serveur que vous souhaitez prendre en charge.

Cette fois web,db Puisque nous en avons préparé deux, les options que le playbook peut prendre sont Il y en a trois, all, web et db.

Si vous voulez tout soutenir, ce sera comme ça. - hosts: all

Pour les commandes nécessitant des privilèges d'administrateur sudo: yes Il semble que la tâche soit imbriquée et décrite.

J'ai immédiatement mis httpd.

À propos, lors de l'exécution de la commande ansible à l'aide du playbook, la description de la commande d'exécution change un peu. ansible-playbook playbook.yml Il change en.

Et quelques minutes à attendre.

Enfin, httpd a été installé avec yum! !! !!

La page Apache n'apparaît pas ...

J'ai enfin fini d'installer Apache, mais quand j'y accède avec chrome, la page ne peut pas être affichée ...

Pourquoi (´ ・ ω ・ `)?

Quelques minutes pour s'inquiéter

J'ai eu l'idée d'arrêter iptables et j'ai décrit le contenu pour arrêter iptables dans le playbook

Quand je l'ai de nouveau accédé, je l'ai vu en toute sécurité! !! !! !!

(´∀`)

Impressions d'Ansible

C'est plus simple et plus facile à décrire que le chef. Comme chef était un outil qui nécessitait des commandes Ruby, ansible pensait que python était nécessaire, mais en réalité, il n'a jamais écrit python. Si quoi que ce soit, seule la description de yaml. Après cela, j'ai réussi à faire quelque chose simplement en regardant le document officiel, donc je ne le déteste pas sans le manger. C'est trop pratique et j'aurais dû le faire plus tôt (´ ・ ω ・ `)

Le site auquel je fais référence cette fois est Dotinstall Enseignant

Et page officielle d'ansible

C'était (* ´∀ ` *)

Recommended Posts

Route vers l'assistant: 4e étape
Road to the Wizard: 7e étape
Road to the Wizard: Étape 8 (Interpréter comment devenir un hacker)
La route vers Pythonista
La route vers Djangoist
La route pour télécharger Matplotlib
AtCoder d'aujourd'hui ~ La route vers le codeur brun ~
La première étape pour obtenir Blender disponible à partir de Python
En route vers l'acquisition de LPIC-1
La première étape de la création d'une application sans serveur avec Zappa
Une route vers Python intermédiaire
Point selon l'image
[Introduction à cx_Oracle] (8e) version de cx_Oracle 8.0
Comment augmenter l'axe
Comment démarrer la première projection
La route pour installer Python et Flask sur un PC hors ligne
Il y a un long chemin à parcourir pour développer une application web
Le 14ème problème de référence d'écriture en temps réel hors ligne en python
Le 18ème comment écrire un problème de référence en temps réel hors ligne en Python