Ansible Pilot

How to install Ansible in Rocky Linux 8 - Ansible install

How to install and maintain up-to-date Ansible inside Rocky Linux 8 using the EPEL repository.

November 22, 2021
Access the Complete Video Course and Learn Quick Ansible by 200+ Practical Lessons

How to install Ansible in Rocky Linux version 8. Today we’re going to talk about the easier way to install and maintain Ansible inside Rocky Linux 8 using the EPEL repository. I’m Luca Berton and welcome to today’s episode of Ansible Pilot.

How to install Ansible in Rocky Linux 8

Today we’re talking about How to install Ansible in Rocky Linux 8. The easier way to install and maintain Ansible inside Rocky Linux version 8 is using the Extra Packages for Enterprise Linux (EPEL) additional repository. This repository is maintained by the Fedora Special Interest Group and manages a high-quality set of additional packages for Enterprise Linux: Red Hat Enterprise Linux (RHEL), Rocky Linux and Scientific Linux (SL), Oracle Linux (OL).

The Best Resources For Ansible

Certifications

Video Course

Printed Book

eBooks

demo

Let’s jump in a quick live demo of how to install the latest version of Ansible in Rocky Linux.

code

#!/bin/bash
sudo dnf install epel-release
sudo dnf install ansible
ansible --version

execution

$ ssh [email protected]
[devops@rockylinux ~]$ sudo su
[root@rockylinux devops]# cat /etc/redhat-release 
Rocky Linux release 8.4 (Green Obsidian)
[root@rockylinux devops]# dnf info ansible
Rocky Linux 8 - AppStream                                          3.2 MB/s | 8.2 MB     00:02    
Rocky Linux 8 - BaseOS                                             3.6 MB/s | 3.5 MB     00:00    
Rocky Linux 8 - Extras                                              27 kB/s |  10 kB     00:00    
Error: No matching Packages to list
[root@rockylinux devops]# dnf install epel-release
Last metadata expiration check: 0:00:12 ago on Fri 19 Nov 2021 08:56:15 AM UTC.
Dependencies resolved.
===================================================================================================
 Package                    Architecture         Version                Repository            Size
===================================================================================================
Installing:
 epel-release               noarch               8-13.el8               extras                23 k
Transaction Summary
===================================================================================================
Install  1 Package
Total download size: 23 k
Installed size: 35 k
Is this ok [y/N]: y
Downloading Packages:
epel-release-8-13.el8.noarch.rpm                                   241 kB/s |  23 kB     00:00    
---------------------------------------------------------------------------------------------------
Total                                                               65 kB/s |  23 kB     00:00     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                           1/1 
  Installing       : epel-release-8-13.el8.noarch                                              1/1 
  Running scriptlet: epel-release-8-13.el8.noarch                                              1/1 
  Verifying        : epel-release-8-13.el8.noarch                                              1/1
Installed:
  epel-release-8-13.el8.noarch
Complete!
[root@rockylinux devops]# dnf info ansible
Extra Packages for Enterprise Linux Modular 8 - x86_64             2.2 MB/s | 958 kB     00:00    
Extra Packages for Enterprise Linux 8 - x86_64                     4.4 MB/s |  11 MB     00:02    
Available Packages
Name         : ansible
Version      : 2.9.27
Release      : 1.el8
Architecture : noarch
Size         : 17 M
Source       : ansible-2.9.27-1.el8.src.rpm
Repository   : epel
Summary      : SSH-based configuration management, deployment, and task execution system
URL          : http://ansible.com
License      : GPLv3+
Description  : Ansible is a radically simple model-driven configuration management,
             : multi-node deployment, and remote task execution system. Ansible works
             : over SSH and does not require any software or daemons to be installed
             : on remote nodes. Extension modules can be written in any language and
             : are transferred to managed machines automatically.

[root@rockylinux devops]# dnf install ansible
Last metadata expiration check: 0:00:23 ago on Fri 19 Nov 2021 08:56:41 AM UTC.
Dependencies resolved.
===================================================================================================
Package                  Arch       Version                                   Repository     Size
===================================================================================================
Installing:
ansible                  noarch     2.9.27-1.el8                              epel           17 M
Upgrading:
chkconfig                x86_64     1.19.1-1.el8                              baseos        197 k
platform-python-pip      noarch     9.0.3-20.el8.rocky.0                      baseos        1.7 M
Installing dependencies:
libsodium                x86_64     1.0.18-2.el8                              epel          162 k
python3-babel            noarch     2.5.1-7.el8                               appstream     4.8 M
python3-bcrypt           x86_64     3.1.6-2.el8.1                             epel           44 k
python3-cffi             x86_64     1.11.5-5.el8                              baseos        237 k
python3-cryptography     x86_64     3.2.1-5.el8                               baseos        558 k
python3-jinja2           noarch     2.10.1-3.el8                              appstream     537 k
python3-jmespath         noarch     0.9.0-11.el8                              appstream      44 k
python3-markupsafe       x86_64     0.23-19.el8                               appstream      38 k
python3-pip              noarch     9.0.3-20.el8.rocky.0                      appstream      19 k
python3-ply              noarch     3.9-9.el8                                 baseos        110 k
python3-pyasn1           noarch     0.3.7-6.el8                               appstream     125 k
python3-pycparser        noarch     2.14-14.el8                               baseos        108 k
python3-pynacl           x86_64     1.3.0-5.el8                               epel          100 k
python3-pytz             noarch     2017.2-9.el8                              appstream      53 k
python3-setuptools       noarch     39.2.0-6.el8                              baseos        162 k
python36                 x86_64     3.6.8-38.module+el8.5.0+671+195e4563      appstream      18 k
sshpass                  x86_64     1.06-9.el8                                epel           27 k
Installing weak dependencies:
python3-paramiko         noarch     2.4.3-1.el8                               epel          289 k
Enabling module streams:
python36                            3.6

Transaction Summary
===================================================================================================
Install  19 Packages
Upgrade   2 Packages

Total download size: 26 M
Is this ok [y/N]: y
Downloading Packages:
(1/21): python3-jmespath-0.9.0-11.el8.noarch.rpm                   281 kB/s |  44 kB     00:00
(2/21): python3-markupsafe-0.23-19.el8.x86_64.rpm                  880 kB/s |  38 kB     00:00
(3/21): python3-pip-9.0.3-20.el8.rocky.0.noarch.rpm                436 kB/s |  19 kB     00:00
(4/21): python3-jinja2-2.10.1-3.el8.noarch.rpm                     2.1 MB/s | 537 kB     00:00
(5/21): python3-pytz-2017.2-9.el8.noarch.rpm                       1.2 MB/s |  53 kB     00:00
(6/21): python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64.rpm   1.1 MB/s |  18 kB     00:00
(7/21): python3-pyasn1-0.3.7-6.el8.noarch.rpm                      1.3 MB/s | 125 kB     00:00
(8/21): python3-cffi-1.11.5-5.el8.x86_64.rpm                       1.1 MB/s | 237 kB     00:00
(9/21): python3-ply-3.9-9.el8.noarch.rpm                           1.6 MB/s | 110 kB     00:00
(10/21): python3-pycparser-2.14-14.el8.noarch.rpm                  1.4 MB/s | 108 kB     00:00
(11/21): python3-cryptography-3.2.1-5.el8.x86_64.rpm               1.6 MB/s | 558 kB     00:00
(12/21): python3-setuptools-39.2.0-6.el8.noarch.rpm                1.9 MB/s | 162 kB     00:00
(13/21): libsodium-1.0.18-2.el8.x86_64.rpm                         1.4 MB/s | 162 kB     00:00
(14/21): python3-bcrypt-3.1.6-2.el8.1.x86_64.rpm                   1.3 MB/s |  44 kB     00:00
(15/21): python3-paramiko-2.4.3-1.el8.noarch.rpm                   942 kB/s | 289 kB     00:00
(16/21): python3-pynacl-1.3.0-5.el8.x86_64.rpm                     1.3 MB/s | 100 kB     00:00
(17/21): sshpass-1.06-9.el8.x86_64.rpm                             934 kB/s |  27 kB     00:00
(18/21): chkconfig-1.19.1-1.el8.x86_64.rpm                         2.2 MB/s | 197 kB     00:00
(19/21): platform-python-pip-9.0.3-20.el8.rocky.0.noarch.rpm       2.4 MB/s | 1.7 MB     00:00
(20/21): python3-babel-2.5.1-7.el8.noarch.rpm                      1.7 MB/s | 4.8 MB     00:02
(21/21): ansible-2.9.27-1.el8.noarch.rpm                           3.9 MB/s |  17 MB     00:04
---------------------------------------------------------------------------------------------------
Total                                                              4.6 MB/s |  26 MB     00:05
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing        :                                                                           1/1
Installing       : python3-setuptools-39.2.0-6.el8.noarch                                   1/23
Upgrading        : platform-python-pip-9.0.3-20.el8.rocky.0.noarch                          2/23
Upgrading        : chkconfig-1.19.1-1.el8.x86_64                                            3/23
Installing       : python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64                     4/23
Running scriptlet: python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64                     4/23
Installing       : python3-pip-9.0.3-20.el8.rocky.0.noarch                                  5/23
Installing       : sshpass-1.06-9.el8.x86_64                                                6/23
Installing       : libsodium-1.0.18-2.el8.x86_64                                            7/23
Installing       : python3-ply-3.9-9.el8.noarch                                             8/23
Installing       : python3-pycparser-2.14-14.el8.noarch                                     9/23
Installing       : python3-cffi-1.11.5-5.el8.x86_64                                        10/23
Installing       : python3-cryptography-3.2.1-5.el8.x86_64                                 11/23
Installing       : python3-bcrypt-3.1.6-2.el8.1.x86_64                                     12/23
Installing       : python3-pynacl-1.3.0-5.el8.x86_64                                       13/23
Installing       : python3-pytz-2017.2-9.el8.noarch                                        14/23
Installing       : python3-babel-2.5.1-7.el8.noarch                                        15/23
Installing       : python3-pyasn1-0.3.7-6.el8.noarch                                       16/23
Installing       : python3-paramiko-2.4.3-1.el8.noarch                                     17/23
Installing       : python3-markupsafe-0.23-19.el8.x86_64                                   18/23
Installing       : python3-jinja2-2.10.1-3.el8.noarch                                      19/23
Installing       : python3-jmespath-0.9.0-11.el8.noarch                                    20/23
Installing       : ansible-2.9.27-1.el8.noarch                                             21/23
Cleanup          : platform-python-pip-9.0.3-19.el8.rocky.noarch                           22/23
Cleanup          : chkconfig-1.13-2.el8.x86_64                                             23/23
Running scriptlet: chkconfig-1.13-2.el8.x86_64                                             23/23
Verifying        : python3-babel-2.5.1-7.el8.noarch                                         1/23
Verifying        : python3-jinja2-2.10.1-3.el8.noarch                                       2/23
Verifying        : python3-jmespath-0.9.0-11.el8.noarch                                     3/23
Verifying        : python3-markupsafe-0.23-19.el8.x86_64                                    4/23
Verifying        : python3-pip-9.0.3-20.el8.rocky.0.noarch                                  5/23
Verifying        : python3-pyasn1-0.3.7-6.el8.noarch                                        6/23
Verifying        : python3-pytz-2017.2-9.el8.noarch                                         7/23
Verifying        : python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64                     8/23
Verifying        : python3-cffi-1.11.5-5.el8.x86_64                                         9/23
Verifying        : python3-cryptography-3.2.1-5.el8.x86_64                                 10/23
Verifying        : python3-ply-3.9-9.el8.noarch                                            11/23
Verifying        : python3-pycparser-2.14-14.el8.noarch                                    12/23
Verifying        : python3-setuptools-39.2.0-6.el8.noarch                                  13/23
Verifying        : ansible-2.9.27-1.el8.noarch                                             14/23
Verifying        : libsodium-1.0.18-2.el8.x86_64                                           15/23
Verifying        : python3-bcrypt-3.1.6-2.el8.1.x86_64                                     16/23
Verifying        : python3-paramiko-2.4.3-1.el8.noarch                                     17/23
Verifying        : python3-pynacl-1.3.0-5.el8.x86_64                                       18/23
Verifying        : sshpass-1.06-9.el8.x86_64                                               19/23
Verifying        : chkconfig-1.19.1-1.el8.x86_64                                           20/23
Verifying        : chkconfig-1.13-2.el8.x86_64                                             21/23
Verifying        : platform-python-pip-9.0.3-20.el8.rocky.0.noarch                         22/23
Verifying        : platform-python-pip-9.0.3-19.el8.rocky.noarch                           23/23

Upgraded:
chkconfig-1.19.1-1.el8.x86_64           platform-python-pip-9.0.3-20.el8.rocky.0.noarch
Installed:
ansible-2.9.27-1.el8.noarch               libsodium-1.0.18-2.el8.x86_64
python3-babel-2.5.1-7.el8.noarch          python3-bcrypt-3.1.6-2.el8.1.x86_64
python3-cffi-1.11.5-5.el8.x86_64          python3-cryptography-3.2.1-5.el8.x86_64
python3-jinja2-2.10.1-3.el8.noarch        python3-jmespath-0.9.0-11.el8.noarch
python3-markupsafe-0.23-19.el8.x86_64     python3-paramiko-2.4.3-1.el8.noarch
python3-pip-9.0.3-20.el8.rocky.0.noarch   python3-ply-3.9-9.el8.noarch
python3-pyasn1-0.3.7-6.el8.noarch         python3-pycparser-2.14-14.el8.noarch
python3-pynacl-1.3.0-5.el8.x86_64         python3-pytz-2017.2-9.el8.noarch
python3-setuptools-39.2.0-6.el8.noarch    python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64
sshpass-1.06-9.el8.x86_64

Complete!
[root@rockylinux devops]# dnf info ansible
Last metadata expiration check: 0:00:55 ago on Fri 19 Nov 2021 08:56:41 AM UTC.
Installed Packages
Name         : ansible
Version      : 2.9.27
Release      : 1.el8
Architecture : noarch
Size         : 96 M
Source       : ansible-2.9.27-1.el8.src.rpm
Repository   : @System
From repo    : epel
Summary      : SSH-based configuration management, deployment, and task execution system
URL          : http://ansible.com
License      : GPLv3+
Description  : Ansible is a radically simple model-driven configuration management,
: multi-node deployment, and remote task execution system. Ansible works
: over SSH and does not require any software or daemons to be installed
: on remote nodes. Extension modules can be written in any language and
: are transferred to managed machines automatically.

[root@rockylinux devops]# ansible --version
ansible 2.9.27
config file = /etc/ansible/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3.6/site-packages/ansible
executable location = /bin/ansible
python version = 3.6.8 (default, May 19 2021, 03:00:47) [GCC 8.4.1 20200928 (Red Hat 8.4.1-1)]
[root@rockylinux devops]# yum --showduplicates list ansible
Last metadata expiration check: 0:14:07 ago on Fri 19 Nov 2021 08:56:41 AM UTC.
Installed Packages
ansible.noarch                        2.9.27-1.el8                         @epel
Available Packages
ansible.noarch                        2.9.27-1.el8                         epel
[root@rockylinux devops]#

before execution

$ ssh [email protected]
[devops@rockylinux ~]$ sudo su
[root@rockylinux devops]# cat /etc/redhat-release 
Rocky Linux release 8.4 (Green Obsidian)
[root@rockylinux devops]# dnf info ansible
Rocky Linux 8 - AppStream                                          3.2 MB/s | 8.2 MB     00:02    
Rocky Linux 8 - BaseOS                                             3.6 MB/s | 3.5 MB     00:00    
Rocky Linux 8 - Extras                                              27 kB/s |  10 kB     00:00    
Error: No matching Packages to list

after execution

$ ssh [email protected]
[devops@rockylinux ~]$ sudo su
[root@rockylinux devops]# dnf info ansible
Last metadata expiration check: 0:00:55 ago on Fri 19 Nov 2021 08:56:41 AM UTC.
Installed Packages
Name         : ansible
Version      : 2.9.27
Release      : 1.el8
Architecture : noarch
Size         : 96 M
Source       : ansible-2.9.27-1.el8.src.rpm
Repository   : @System
From repo    : epel
Summary      : SSH-based configuration management, deployment, and task execution system
URL          : http://ansible.com
License      : GPLv3+
Description  : Ansible is a radically simple model-driven configuration management,
: multi-node deployment, and remote task execution system. Ansible works
: over SSH and does not require any software or daemons to be installed
: on remote nodes. Extension modules can be written in any language and
: are transferred to managed machines automatically.

[root@rockylinux devops]# ansible --version
ansible 2.9.27
config file = /etc/ansible/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3.6/site-packages/ansible
executable location = /bin/ansible
python version = 3.6.8 (default, May 19 2021, 03:00:47) [GCC 8.4.1 20200928 (Red Hat 8.4.1-1)]
[root@rockylinux devops]# yum --showduplicates list ansible
Last metadata expiration check: 0:14:07 ago on Fri 19 Nov 2021 08:56:41 AM UTC.
Installed Packages
ansible.noarch                        2.9.27-1.el8                         @epel
Available Packages
ansible.noarch                        2.9.27-1.el8                         epel
[root@rockylinux devops]#

code with ❤️ in GitHub

Recap

Now you know how to install the latest version of Ansible in Rocky Linux using the EPEL repository. Subscribe to the YouTube channel, Medium, and Website, X (formerly Twitter) to not miss the next episode of the Ansible Pilot.

Academy

Learn the Ansible automation technology with some real-life examples in my

My book Ansible By Examples: 200+ Automation Examples For Linux and Windows System Administrator and DevOps

BUY the Complete PDF BOOK to easily Copy and Paste the 250+ Ansible code

Want to keep this project going? Please donate

Access the Complete Video Course and Learn Quick Ansible by 200+ Practical Lessons
Follow me

Subscribe not to miss any new releases