Installation Rundeck sous Rocky Linux

Hello, nous allons voir dans cet article comment installer & configurer Rundeck sous Rocky Linux. Rundeck est un ordonnanceur open-source permettant l’automatisation des tâches Windows/Linux.

Ce qu’il vous faut :

Ressources Rundeck :

Configuration requise :

OSDatabaseComposants 
Red Hat Enterprise Linux
Oracle Linux
CentOS  Rocky Linux
Ubuntu
Windows Server
Mysql
Mariadb
Postgres
Oracle
Java 8 ou 11

Plus d’info : install/system-requirements

Installation des Prérequis

Mettez à jour votre serveur :

[root@vm-rundeck ~]# yum update -y

Installer JAVA 8.

[root@vm-rundeck ~]# yum install java-1.8.0-openjdk
[root@vm-rundeck ~]# java -version
openjdk version "1.8.0_302"
OpenJDK Runtime Environment (build 1.8.0_302-b08)
OpenJDK 64-Bit Server VM (build 25.302-b08, mixed mode)
[root@vm-rundeck ~]#

Installation de PostgreSQL-13

Lister les modules PostgreSQL :

[root@vm-rundeck ~]# dnf module list postgresql

La version 10 est activée par défaut.

Rocky Linux 8 - AppStream
Name                      Stream                     Profiles                      Summary 
postgresql                9.6                        client, server [d]            PostgreSQL server and client module 
postgresql                10 [d]                     client, server [d]            PostgreSQL server and client module 
postgresql                12                         client, server [d]            PostgreSQL server and client module 
postgresql                13                         client, server [d]            PostgreSQL server and client module

Activer la version 13 :

[root@vm-rundeck ~]# dnf module enable postgresql:13
Dernière vérification de l’expiration des métadonnées effectuée il y a 9:58:58 le ven. 13 août 2021 05:23:04 EDT.
Dépendances résolues.
================================================================================================================
Paquet Architecture Version Dépôt Taille
================================================================================================================
Activation des flux de modules:
postgresql 13

Résumé de la transaction
================================================================================================================

Voulez-vous continuer ? [o/N] : o
Terminé !
[root@vm-rundeck ~]#

Installer PostgreSQL :

[root@vm-rundeck ~]# dnf install postgresql-server
Dernière vérification de l’expiration des métadonnées effectuée il y a 10:00:32 le ven. 13 août 2021 05:23:04 EDT.
Dépendances résolues.
=================================================================================================================
Paquet Architecture Version Dépôt Taille
=================================================================================================================
Installation:
postgresql-server x86_64 13.3-1.module+el8.4.0+546+3620623e appstream 5.6 M
Installation des dépendances:
libpq x86_64 13.3-1.el8_4 appstream 196 k
postgresql x86_64 13.3-1.module+el8.4.0+546+3620623e appstream 1.5 M

Résumé de la transaction
=================================================================================================================
Installer 3 Paquets

Taille totale des téléchargements : 7.4 M
Taille des paquets installés : 29 M
Voulez-vous continuer ? [o/N] : o

Initialiser la base de données :

[root@vm-rundeck ~]# postgresql-setup --initdb
* Initializing database in '/var/lib/pgsql/data'
* Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
[root@vm-rundeck ~]#

Editer le fichier pg_hba.conf :

[root@vm-rundeck ~]# nano /var/lib/pgsql/data/pg_hba.conf

Modifier comme ci-dessous :

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
host	all		all		192.168.1.75/24		trust
# IPv6 local connections:
host    all             all             ::1/128                 ident
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     peer
host    replication     all             127.0.0.1/32            ident
host    replication     all             ::1/128                 ident
[root@vm-rundeck ~]#

192.168.1.75 = est l’adresse IP du serveur vm-rundeck.

Démarrer et activer la base de données :

[root@vm-rundeck ~]# systemctl start postgresql
[root@vm-rundeck ~]# systemctl enable postgresql
Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /usr/lib/systemd/system/postgresql.service.
[root@vm-rundeck ~]#
[root@vm-rundeck ~]# systemctl status postgresql
● postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2021-08-13 15:28:16 EDT; 14s ago
Main PID: 62655 (postmaster)
Tasks: 8 (limit: 11091)
Memory: 16.9M
CGroup: /system.slice/postgresql.service
├─62655 /usr/bin/postmaster -D /var/lib/pgsql/data
├─62656 postgres: logger 
├─62658 postgres: checkpointer 
├─62659 postgres: background writer 
├─62660 postgres: walwriter 
├─62661 postgres: autovacuum launcher 
├─62662 postgres: stats collector 
└─62663 postgres: logical replication launcher
...
...
[root@vm-rundeck ~]#
[root@vm-rundeck ~]# psql -V
psql (PostgreSQL) 13.3
[root@vm-rundeck ~]#

Nous allons ajouter un utilisateur et une base de données pour Rundeck.

Connectez-vous à la base de données :

[root@vm-rundeck ~]# su - postgres
[postgres@vm-rundeck ~]$ 
[postgres@vm-rundeck ~]$ psql
psql (13.3)
Saisissez « help » pour l'aide.

postgres=#
  • Rundeck Database : rundeckdb
  • Rundeck User : rundeck
  • Rundeck User password : Rundeck123
postgres=# CREATE DATABASE rundeckdb;
CREATE DATABASE
postgres=# CREATE USER rundeck WITH ENCRYPTED PASSWORD 'Rundeck123';
CREATE ROLE
postgres=# GRANT ALL PRIVILEGES ON DATABASE rundeckdb TO rundeck;
GRANT
postgres=# exit
[postgres@vm-rundeck ~]$ exit
déconnexion
[root@vm-rundeck ~]#

Installation de Rundeck

Ajouter la repo de Rundeck :

[root@vm-rundeck ~]# nano /etc/yum.repos.d/rundeck.repo

Ajoutez-y (copier/coller) :

[rundeck]
name=rundeck
baseurl=https://packages.rundeck.com/pagerduty/rundeck/rpm_any/rpm_any/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packages.rundeck.com/pagerduty/rundeck/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

Mettez à jour :

[root@vm-rundeck ~]# yum update
rundeck 274 B/s | 833 B 00:03 
rundeck 4.8 kB/s | 3.9 kB 00:00 
Import de la clef GPG 0x7C5C34C0 :
Utilisateur : « https://packagecloud.io/pagerduty/rundeck (https://packagecloud.io/docs#gpg_signing) <support@packagecloud.io> »
Empreinte : 0DDD 2FA7 9B15 D736 ECEA 32B8 9B52 0616 7C5C 34C0
Provenance : https://packages.rundeck.com/pagerduty/rundeck/gpgkey
Voulez-vous continuer ? [o/N] : o
rundeck 502 kB/s | 2.7 MB 00:05 
Dernière vérification de l’expiration des métadonnées effectuée il y a 0:00:03 le ven. 13 août 2021 15:49:29 EDT.
Dépendances résolues.
Rien à faire.
Terminé !
[root@vm-rundeck ~]#

Installer Rundeck :

[root@vm-rundeck ~]# yum install rundeck
Dernière vérification de l’expiration des métadonnées effectuée il y a 0:00:28 le ven. 13 août 2021 15:50:32 EDT.
Dépendances résolues.
=================================================================================================================
Paquet Architecture Version Dépôt Taille
=================================================================================================================
Installation:
rundeck noarch 3.4.2.20210803-1 rundeck 175 M

Résumé de la transaction
=================================================================================================================
Installer 1 Paquet

Taille totale des téléchargements : 175 M
Taille des paquets installés : 189 M
Voulez-vous continuer ? [o/N] : o
Téléchargement des paquets :
rundeck-3.4.2.20210803-1.noarch.rpm 1.8 MB/s | 175 MB 01:37 
-----------------------------------------------------------------------------------------------------------------
Total 1.8 MB/s | 175 MB 01:37 
Test de la transaction
La vérification de la transaction a réussi.
Lancement de la transaction de test
Transaction de test réussie.
Exécution de la transaction
Exécution du scriptlet: rundeck-3.4.2.20210803-1.noarch 1/1 
Préparation : 1/1 
Exécution du scriptlet: rundeck-3.4.2.20210803-1.noarch 1/1 
Installation : rundeck-3.4.2.20210803-1.noarch 1/1 
Exécution du scriptlet: rundeck-3.4.2.20210803-1.noarch 1/1 
Vérification de : rundeck-3.4.2.20210803-1.noarch 1/1 
Installed products updated.

Installé:
rundeck-3.4.2.20210803-1.noarch

Terminé !
[root@vm-rundeck ~]#

Configuration de Rundeck

Nous allons configurer Rundeck pour utiliser la base de données PostgreSQL.

Editer le fichier suivant :

[root@vm-rundeck ~]# nano /etc/rundeck/rundeck-config.properties

Modifier comme ci-dessous :

# change hostname here
grails.serverURL=http://localhost:4440
dataSource.dbCreate = update
# dataSource.url = jdbc:h2:file:/var/lib/rundeck/data/rundeckdb;MVCC=true
dataSource.driverClassName = org.postgresql.Driver
dataSource.url = jdbc:postgresql://localhost:5432/rundeckdb
dataSource.username = rundeck
dataSource.password = Rundeck@123

Démarrer Rundeck :

[root@vm-rundeck ~]# systemctl enable rundeckd
rundeckd.service is not a native service, redirecting to systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable rundeckd
[root@vm-rundeck ~]# 
[root@vm-rundeck ~]# systemctl start rundeckd
[root@vm-rundeck ~]# 
[root@vm-rundeck ~]# systemctl status rundeckd
● rundeckd.service - SYSV: rundeckd, providing rundeckd
Loaded: loaded (/etc/rc.d/init.d/rundeckd; generated)
Active: active (running) since Fri 2021-08-13 15:55:15 EDT; 6s ago
Docs: man:systemd-sysv-generator(8)
Process: 63627 ExecStart=/etc/rc.d/init.d/rundeckd start (code=exited, status=0/SUCCESS)
Main PID: 63637 (runuser)
Tasks: 0 (limit: 11091)
Memory: 1.7M
CGroup: /system.slice/rundeckd.service

En cas de problème de démarrage, le fichier debug est ici :

[root@vm-rundeck ~]# tail -f /var/log/rundeck/service.log

Si tout est Ok, vous avez le message ci-dessous à la fin du fichier :

...
...
[2021-08-13T17:33:51,622] INFO rundeckapp.BootStrap - Rundeck startup finished in 1955ms
[2021-08-13T17:33:52,018] INFO rundeckapp.Application - Started Application in 68.486 seconds (JVM running for 73.154)
Grails application running at http://localhost:4440 in environment: production

Aller à l’URL indiqué dans le log et connectez-vous à Rundeck.

  • Utilisateur : admin
  • Password : admin

Install Rundeck

C’est terminé.

Si vous aimez les stickers, le lien est à droite 🙂

Vous pouvez personnaliser l’URL via le même fichier de configuration (n’oublier pas d’ajouter l’hôte à votre serveur DNS).

Nous verrons dans le prochain chapitre comment utiliser Rundeck avec Windows Server et Linux.

Bonne journée et à bientôt.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *