Migration du Control-M/EM et Control-M/Server sur AlmaLinux 8.10

Control-M/Client Control-M 9.0.21.000
Control-M/EM 9.0.21.000
Control-M/Server 9.0.21.000

Vidéo

Procédure

Architecture Control-M 9.0.21.000 sur AlmaLinux 8.10

Composant Control-M/EM

Sauvegarde des données de l'ancien serveur Control-M/EM via l'outil upgrade et récupération du fichier :

su - ctmem
em_database_menu => 1 - Management => 1 - Start Database
root_menu => 5 - Database Maintenance Menu => 1 - Export Database => backup_db_em
ls -lrt /soft/em/backup_db_em.gz
cd /soft/em/ctm_em/Upgrade_Export
ls -lrt | grep upgrade
./upgrade (emuser, emuser, postgres)
ls -lrt /soft/em/ctm_em/Upgrade_Export/EMExportForUpgrade.tar
exit

su - root
cp -p /soft/em/backup_db_em.gz /media/sf_[Nom_du_dossier_partagé]/backup_db_em.tar.gz
cp -p /soft/em/ctm_em/Upgrade_Export/EMExportForUpgrade.tar /media/sf_[Nom_du_dossier_partagé]/EMExportForUpgrade.tar
exit

Sauvegarde supplémentaire sécuritaire via pg_dump :

su - ctmem
cat /soft/em/ctm_em/pgsql/etc/pg_service.conf
setenv LD_LIBRARY_PATH /soft/em/ctm_em/pgsql/lib
setenv PGSERVICE CTMEM900_Default
/soft/em/ctm_em/pgsql/bin/pg_dump -Fc em900 > /tmp/em900.dump (MDP de emuser : emuser)
ls -lrt /tmp/em900.dump

/soft/em/ctm_em/pgsql/bin/pg_dump -h controlmem -U emuser -p 5432 -Fc em900 > /tmp/em900.dump
ls -lrt /tmp/em900.dump
exit

su - root
cp -p /tmp/em900.dump /media/sf_[Nom_du_dossier_partagé]/em900.dump
exit

Configuration de la VM pour Control-M/EM :

OS : AlmaLinux 8
Espace : 70 Go (disque 1 : 20Go et disque 2 : 50Go)
RAM : 12288 Mo
Processeur : 3 CPU
Presse-papier partagé : Bidirectionnel
Glisser-Déposer : Bidirectionnel
Mode d'accès réseau : Accès par pont
Dossiers partagés : Activé (choisir son dossier avec les packages pour l'installation Control-M/EM)

Installation de l'OS :

Mettre le clavier à la bonne langue
Choisir le bon fuseau horaire
Choisir le bon espace de stockage (disque 1)
Activer la carte réseau
Créer un utilisateur admin autre que root (jfatah dans mon cas)

Mises à jour de l'OS, installation des Guest Additions for VirtualBox, nommage du serveur et création ip statique :

su - root
yum -y update
yum -y install epel-release
yum -y install make gcc kernel-headers kernel-devel perl dkms bzip2
reboot
exit

=> Insérer l'image CD des Additions Invités et le lancer

su - root
mkdir /media/VBoxAdditions
mount -r /dev/cdrom /media/VBoxAdditions
uname -r
KERN_DIR=/usr/src/kernels/4.18.0-553.120.1.el8_10.x86_64
cd /media/VBoxAdditions
./VBoxLinuxAdditions.run
reboot
exit

su - root
hostnamectl set-hostname controlmem
hostname
vi /etc/hosts
-------------------
192.168.1.XX    controlmem
192.168.1.YY    controlmserver
-------------------
exit

su - root
ssh-keygen -t rsa -b 4096 
ssh-copy-id root@controlmserver
ssh root@controlmserver
exit

su - root
nmtui
ip addr del 192.168.1.AA/24 dev enp0s3
nmcli con show "enp0s3"
nmcli con mod "enp0s3" ipv4.addresses "192.168.1.YY/24" ipv4.gateway "192.168.1.254" ipv4.dns "192.168.1.254" ipv4.method manual ipv4.ignore-auto-dns yes
nmcli con down "enp0s3" && nmcli con up "enp0s3"
reboot
exit

Création du filesystem /soft/em via la gestion par volumes logiques :

su - root
yum -y install lvm2

fdisk -l
lsblk -f

pvcreate /dev/sdb
pvdisplay

vgcreate datavg /dev/sdb
vgdisplay

lvcreate -n lvsoft -L 38G datavg
lvcreate -n lvagent -L 10G datavg
lvdisplay

mkfs.ext4 /dev/datavg/lvsoft
mkfs.ext4 /dev/datavg/lvagent

mkdir -p /soft/em
mkdir /agent
mount /dev/datavg/lvsoft /soft/em
mount /dev/datavg/lvagent /agent
lsblk -f

vi /etc/fstab
--------------
UUID=269a3ef7-a745-46a0-9074-24bd5ef20c1b /soft/em                   ext4     defaults        0 0
UUID=8a1b7247-e7dd-4a36-a252-172157d1e5ae /agent                   ext4     defaults        0 0
--------------
reboot
exit

su - root
df -h
exit

Création d'un utilisateur Control-M/EM nommé "ctmem" et paramétrage :

su - root
yum -y install csh

/usr/sbin/useradd -u 1010 -d /soft/em -s /bin/csh ctmem
passwd ctmem
usermod -aG wheel ctmem
groups ctmem

cat /etc/passwd
--------------
em:x:1010:1010::/soft/ctmem:/bin/csh
--------------

chown -R ctmem:ctmem /soft

vi /etc/sysctl.conf
--------------
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 800
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 32768 61000
--------------

/sbin/sysctl -p
yum -y install libnsl

ulimit -Ha
exit

Synchronisation de l'heure via Chrony :

yum install chrony -y
systemctl enable --now chronyd
chronyc sources
chronyc tracking
timedatectl status

Récupération du package dans le dossier partagé vers la VM :

su - root
yum -y install java-11-openjdk
mkdir /soft/em/install_ctm_em
cd /media/sf_[Nom_du_dossier_partagé]
cp DROST.9.0.21.000_Linux-x86_64.z /soft/em/install_ctm_em/DROST.9.0.21.000_Linux-x86_64.z
chown ctmem:ctmem -R /soft/em
chmod a+x /soft/em/install_ctm_em/DROST.9.0.21.000_Linux-x86_64.z
exit

Lancement de l'installation de Control-M/EM en version 9.0.21.000 :

su - ctmem
setenv BMC_INST_JAVA_HOME /usr/lib/jvm/java-11-openjdk-11.0.25.0.9-2.el8.x86_64
cd /soft/em/install_ctm_em
gunzip DROST.9.0.21.000_Linux-x86_64.z
tar -xvf DROST.9.0.21.000_Linux-x86_64
rm DROST.9.0.21.000_Linux-x86_64
./setup.sh
exit

Ouvrir les ports 18080, 13075, 8446 et 7006 sur Control-M/EM :

su - root
firewall-cmd --zone=public --permanent --add-port=18080/tcp
firewall-cmd --zone=public --permanent --add-port=13075/tcp
firewall-cmd --zone=public --permanent --add-port=8446/tcp
firewall-cmd --zone=public --permanent --add-port=7006/tcp
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.YY" accept'
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.ZZ" accept'
firewall-cmd --reload

yum -y install net-tools
yum -y install telnet

netstat -na | grep 18080
netstat -na | grep 13075
netstat -na | grep 8446
exit

Restauration des données sur le nouveau serveur Control-M/EM :

su - root
yum install -y bc
cd /media/sf_[Nom_du_dossier_partagé]
cp -p EMExportForUpgrade.tar /soft/em/ctm_em/Upgrade/Import/EMExportForUpgrade.tar
chown ctmem:ctmem -R /soft/em/ctm_em/Upgrade/Import/EMExportForUpgrade.tar
chmod a+x /soft/em/ctm_em/Upgrade/Import/EMExportForUpgrade.tar
exit

su - ctmem
cd /soft/em/ctm_em/Upgrade/Import/
./upgrade
exit

Composant Control-M/Agent

Installation d'un Control-M/Agent :

su - root
/usr/sbin/useradd -u 1011 -d /agent -s /bin/bash ecs
passwd ecs
usermod -aG wheel ecs
groups ecs

cat /etc/passwd
--------------
ecs:x:1011:1011::/agent:/bin/bash
--------------

chown -R ecs:ecs /agent
chown -R ecs:ecs /soft/em/install_ctm_em

cd /agent
export BMC_INST_JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.25.0.9-2.el8.x86_64
/soft/em/install_ctm_em/setup.sh

/agent/ctm/scripts/shut-ag -u ecs -p ALL
/agent/ctm/scripts/start-ag -u ecs -p ALL

cp /agent/ctm/scripts/rc.agent_user  /etc/init.d/
cd /etc/init.d/
chmod +x rc.agent_user
ln -s rc.agent_user ecs-agent
service ecs-agent stop
ps aux | grep ecs
service ecs-agent start
ps aux | grep ecs
exit

su - ecs
ag_diag_comm
exit

su - root
cd /soft/em
rm -rf install_ctm_em
exit

Composant Control-M/Server

Sauvegarde des données de l'ancien serveur Control-M/Server via l'outil upgrade et récupération du fichier :

su - controlm
ctm_menu => 1 - CONTROL-M Manager => 3 - Start Database
cd /soft/controlm/ctm_server/scripts
ls -lrt | grep ctm_backup_bcp
./ctm_backup_bcp
cd /soft/controlm/ctm_server
tar -czvf backup_db_ctm.tar.gz backup_db
ls -lrt backup_db_ctm.tar.gz
ctmdbbck (postgres)
ls -lrt /soft/controlm/ColdBackup
cd /soft/controlm/ctm_server/upgrade/export
ls -lrt | grep upgrade
./upgrade
ls -lrt /soft/controlm/ctm_server/upgrade/export/output/LDR_20260430_032713.tar
exit

su - root
cp -p /soft/controlm/ctm_server/backup_db_ctm.tar.gz /media/sf_[Nom_du_dossier_partagé]/backup_db_ctm.tar.gz
cp -p /soft/controlm/ColdBackup /media/sf_[Nom_du_dossier_partagé]/ColdBackup
cp -p /soft/controlm/ctm_server/upgrade/export/output/LDR_20260430_032713.tar /media/sf_[Nom_du_dossier_partagé]/LDR_20260430_032713.tar
exit

Sauvegarde supplémentaire sécuritaire via pg_dump :

su - controlm
cat /soft/controlm/pgsql/etc/pg_service.conf
setenv PGSERVICE CTMSRV900_PG
/soft/controlm/pgsql/bin/pg_dump -Fc ctrlm900 > /tmp/ctrlm900.dump (MDP de ctmuser : ctmuser)
ls -lrt /tmp/ctrlm900.dump

/soft/controlm/pgsql/bin/pg_dump -h controlmserver -U ctmuser -p 5432 -d ctrlm900 -Fc > /tmp/ctrlm900.dump
ls -lrt /tmp/ctrlm900.dump
exit

su - root
cp -p /tmp/ctrlm900.dump /media/sf_[Nom_du_dossier_partagé]/ctrlm900.dump
exit

Configuration de la VM pour Control-M/Server :

OS : AlmaLinux 8
Espace : 60 Go (disque 1 : 20Go et disque 2 : 40Go)
RAM : 10240 Mo
Processeur : 2 CPU
Presse-papier partagé : Bidirectionnel
Glisser-Déposer : Bidirectionnel
Mode d'accès réseau : Accès par pont
Dossiers partagés : Activé (choisir son dossier avec les packages pour l'installation Control-M/Server)

Installation de l'OS :

Mettre le clavier à la bonne langue
Choisir le bon fuseau horaire
Choisir le bon espace de stockage (disque 1)
Activer la carte réseau
Créer un utilisateur admin autre que root (jfatah dans mon cas)

Mises à jour de l'OS, installation des Guest Additions for VirtualBox, nommage du serveur et création ip statique :

su - root
yum -y update
yum -y install epel-release
yum -y install make gcc kernel-headers kernel-devel perl dkms bzip2
reboot
exit

=> Insérer l'image CD des Additions Invités et le lancer

su - root
mkdir /media/VBoxAdditions
mount -r /dev/cdrom /media/VBoxAdditions
uname -r
KERN_DIR=/usr/src/kernels/4.18.0-553.120.1.el8_10.x86_64
cd /media/VBoxAdditions
./VBoxLinuxAdditions.run
reboot
exit

su - root
hostnamectl set-hostname controlmserver
hostname
vi /etc/hosts
-------------------
192.168.1.XX    controlmem
192.168.1.YY    controlmserver
-------------------
exit

su - root
ssh-keygen -t rsa -b 4096 
ssh-copy-id root@controlmem
ssh root@controlmem
exit

su - root
nmtui
ip addr del 192.168.1.AA/24 dev enp0s3
nmcli con show "enp0s3"
nmcli con mod "enp0s3" ipv4.addresses "192.168.1.YY/24" ipv4.gateway "192.168.1.254" ipv4.dns "192.168.1.254" ipv4.method manual ipv4.ignore-auto-dns yes
nmcli con down "enp0s3" && nmcli con up "enp0s3"
reboot
exit

Création du filesystem /soft/controlm via la gestion par volumes logiques :

su - root
yum -y install lvm2

fdisk -l
lsblk -f

pvcreate /dev/sdb
pvdisplay

vgcreate datavg /dev/sdb
vgdisplay

lvcreate -n lvsoft -L 39G datavg
lvdisplay

mkfs.ext4 /dev/datavg/lvsoft

mkdir -p /soft/controlm
mount /dev/datavg/lvsoft /soft/controlm
lsblk -f

vi /etc/fstab
--------------
UUID=726b1111-6ec7-45a5-9f8e-b803f8de28b8 /soft/controlm                   ext4     defaults        0 0
--------------
reboot
exit

su - root
df -h
exit

Création d'un utilisateur Control-M/Server nommé "controlm" et paramétrage :

su - root
yum -y install csh

/usr/sbin/useradd -u 1012 -d /soft/controlm -s /bin/csh controlm
passwd controlm
usermod -aG wheel controlm
groups controlm

cat /etc/passwd
--------------
controlm:x:1012:1012::/soft/controlm:/bin/csh
--------------

chown -R controlm:controlm /soft

vi /etc/sysctl.conf
--------------
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 800
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 32768 61000
--------------

/sbin/sysctl -p
yum -y install libnsl

ulimit -Ha
exit

Synchronisation de l'heure via Chrony :

yum install chrony -y
systemctl enable --now chronyd
chronyc sources
chronyc tracking
timedatectl status

Récupération du package dans le dossier partagé vers la VM :

su - root
yum -y install java-11-openjdk
mkdir /soft/controlm/install_ctm_server
cd /media/sf_[Nom_du_dossier_partagé]
cp DROST.9.0.21.000_Linux-x86_64.z /soft/controlm/install_ctm_server/DROST.9.0.21.000_Linux-x86_64.z
chown controlm:controlm -R /soft/controlm
chmod a+x /soft/controlm/install_ctm_server/DROST.9.0.21.000_Linux-x86_64.z
exit

Lancement de l'installation de Control-M/Server en version 9.0.21.000 :

su - controlm
setenv BMC_INST_JAVA_HOME /usr/lib/jvm/java-11-openjdk-11.0.25.0.9-2.el8.x86_64
cd /soft/controlm/install_ctm_server
gunzip DROST.9.0.21.000_Linux-x86_64.z
tar -xvf DROST.9.0.21.000_Linux-x86_64
rm DROST.9.0.21.000_Linux-x86_64
./setup.sh
exit

Ouvrir les ports 2368, 2369, 2370, 2371, 7005, 7006 et 8393 sur Control-M/Server :

su - root
firewall-cmd --zone=public --permanent --add-port=2368/tcp
firewall-cmd --zone=public --permanent --add-port=2369/tcp
firewall-cmd --zone=public --permanent --add-port=2370/tcp
firewall-cmd --zone=public --permanent --add-port=2371/tcp
firewall-cmd --zone=public --permanent --add-port=7005/tcp
firewall-cmd --zone=public --permanent --add-port=7006/tcp
firewall-cmd --zone=public --permanent --add-port=8393/tcp
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.XX" accept'
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.ZZ" accept'
firewall-cmd --reload

yum -y install net-tools
yum -y install telnet

netstat -na | grep 2368
netstat -na | grep 2369
netstat -na | grep 2370
netstat -na | grep 2371
netstat -na | grep 7005
netstat -na | grep 7006
netstat -na | grep 8393
exit

Restauration des données sur le nouveau serveur Control-M/Server :

su - root
yum install -y bc
cd /media/sf_[Nom_du_dossier_partagé]
cp -p LDR_20260419_181144.tar /soft/controlm/ctm_server/upgrade/import/LDR_20260430_032713.tar
chown controlm:controlm -R /soft/controlm/ctm_server/upgrade/import/LDR_20260430_032713.tar
chmod a+x /soft/controlm/ctm_server/upgrade/import/LDR_20260430_032713.tar
exit

su - controlm
rm -rf install_ctm_server
cd /soft/controlm/ctm_server/upgrade/import
./upgrade
exit

UPGRADE_CTLM_9_0_21_000_OS.txt