Install Ansible - jamongx/twitter-clone GitHub Wiki
Change hostname to ansible-server
Install docker
[ansadmin@ansible-server ~]$ sudo su -
[root@ansible-server ~]# yum install docker -y
[root@ansible-server ~]# systemctl start docker
[root@ansible-server ~]# systemctl status docker
[root@ansible-server ~]# systemctl enable docker
Create ansadmin user
# useradd ansadmin
# passwd ansadmin
[ansadmin@ansible-server ~]$ cat /etc/group
...
docker:x:992:ansadmin
[ansadmin@ansible-server ~]$ sudo usermod -aG docker ansadmin
[ansadmin@ansible-server ~]$ id ansadmin
uid=1001(ansadmin) gid=1001(ansadmin) groups=1001(ansadmin),992(docker)
Add user to sudoers file
# visudo
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
ansadmin ALL=(ALL) NOPASSWD: ALL --> added
Enable password based login
# vi /etc/ssh/sshd_config
PasswordAuthentication no -> yes
# systemctl reload sshd.service
Generate ssh keys
# sudo su ansadmin
ssh login with password -> ansadmin -> fail!
# ssh-keygen
/home/ansadmin/.ssh/id_rsa -> ssh key location
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ansadmin/.ssh/id_rsa):
Created directory '/home/ansadmin/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ansadmin/.ssh/id_rsa.
Your public key has been saved in /home/ansadmin/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:T/1aPkUMmLuPa5TngVE0NnfHtyFCw+rsRy1PbUEIXRA ansadmin@ansible-server
The key's randomart image is:
+---[RSA 2048]----+
| o+oEXo+|
| o+=o*=|
| . .ooo+|
| . .o oo|
| S . o=...|
| = o=+oo.|
| . o.+=+o |
| . .o=+ |
| ..o... |
+----[SHA256]-----+
[ansadmin@ansible-server ~]$ ssh-copy-id 172.31.38.162 -> docker-server
yes
1234
Install ansible
# (X) yum install ansible -> doesn't work!
[ansadmin@ansible-server root]$ sudo amazon-linux-extras install ansible2
[ansadmin@ansible-server root]$ python --version
Python 2.7.18
[ansadmin@ansible-server root]$ ansible --version
ansible 2.9.23
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/home/ansadmin/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /bin/ansible
python version = 2.7.18 (default, Feb 28 2023, 02:51:06) [GCC 7.3.1 20180712 (Red Hat 7.3.1-15)]
vim /etc/ansible/hosts
[ansadmin@ansible-server docker]$ sudo vim /etc/ansible/hosts
[dockerserver]
172.xxx.xxx.xxx -> docker server private ip
[ansible]
172.xxx.xxx.xxx -> ansible server private ip
[ansadmin@ansible-server docker]$ ansible all -a uptime
[WARNING]: Invalid characters were found in group names but not replaced, use -vvvv to see details
172.xxx.xxx.xxx | UNREACHABLE! => { --> solve this
[ansadmin@ansible-server docker]$ ssh-copy-id 172.xxx.xxx.xxx -> ansible-server
[email protected]'s password: 1234
[ansadmin@ansible-server docker]$ ansible all -a uptime
/var/run/docker.sock
[ansadmin@ansible-server docker]$ sudo chmod 777 /var/run/docker.sock