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
⚠️ **GitHub.com Fallback** ⚠️