Général:InstallationSocle

De WikiFr_dbSQWare
Révision datée du 15 avril 2024 à 11:36 par Ymauger (discussion | contributions) (Vérifications système)
Aller à : navigation, rechercher

Généralités


Attention.png
Warning:
Avant toutes choses, n'allez pas plus loin si vous n'avez pas lu la section "Concepts dbSQWare" !.


Limites de cette section

Cette section n’a pas la prétention de traiter tous les cas possibles d’installation et de paramétrage de dbSQWare.
Il ne faut pas perdre de vue qu’il s’agit d’un outil très souple qui est capable de s’adapter à bon nombre d’architectures.
Cette section est réservée à des DBA qui maîtrisent bien la partie Linux/Unix et le ksh. Il s’agit d’un guide à l’installation pour une personne déjà à l’aise avec ces parties.
Avant de dire « ça ne fonctionne pas », lisez bien le message d’erreur et réfléchissez à ce dont vous avez besoin au niveau du socle pour que les scripts fonctionnent. Par exemple, si vous n’arrivez pas à faire un sqlplus en ligne de commande pour vous connecter à votre instance Oracle, il n’y a pas de raison pour que les scripts arrivent à le faire (il n’y a rien de magique) !

Si un des chapitre ne fonctionne pas, n'allez pas plus loin, il faut d'abord corriger avant de continuer !

Nous vous conseillons de faire appel à un spécialiste de l’outil afin de définir avec vous quelle est la meilleure architecture d’installation adaptée à votre parc et à votre organisation du travail http://www.dbsqware.com. Des formations sont également disponibles chez des partenaires pour approfondir les différentes parties et les différentes configurations possibles.

Cette section se base sur une installation du point central sous Rocky Linux 9.3 64bits sur une VM (2 vCPU et 4 Go de RAM) avec 100 Go de disque (Permet de tenir 2 ans d'historique pour une centaine d'instances). Vous pouvez évidemment l’installer sur un autre type de Linux/Unix, il vous faudra alors adapter les commandes système proposées si nécessaire.
Il ne traite que de l’installation du socle central, pour les autres paramétrages, reportez-vous aux sections adéquates.

Anciennes versions :

Lien vers le socle CentOS 7
Lien vers le socle Rocky 8


Rappel de la structure de l’outil

dbSQWare est composé de quatre modules complémentaires :

SQWareProduction	=> scripts shell d’exploitation (souvent en local sur la machine hébergeant le SGBD à gérer)
SQWareRepository	=> référentiel et stockage des indicateurs (database MySQL>=5.6 ou MariaDB>=10.1, MariaDB 10.11 conseillé)
SQWareCentral		=> centralisation des sources et lancement des commandes
SQWareWeb		=> interface graphique de restitution


Installation de l’infrastructure centrale

Pour rappel, ce document ne présente qu’une façon d’installer l’outil. Il existe de multiples configurations possibles.
Cette section présente une installation « compacte », c’est-à-dire l’installation des modules SQWareCentral, SQWareRepository et SQWareWeb sur la même machine que nous appellerons vmsqwarebox.
Cette machine hébergera également les sources de SQWareProduction.
Pour l’exploitation de MsSql, nous installerons également SQWareProduction MsSql (et FreeTds) sur cette même machine.
Vous pouvez évidemment l’installer sur un autre type de Linux/Unix, il vous faudra alors adapter les commandes système proposées.
L’installation peut également être réalisée en mode « distribué », c’est-à-dire chaque module sur sa propre machine ; il faudra alors adapter les configurations.
Nous allons voir l’installation pour Oracle (oracle), Sybase (sybase), Sql-Server (mssql), MySQL (mysql) et PostgreSQL (postgres).
N’utilisez que les commandes pour le(s) SGBD qui vous intéresse et/ou adaptez les commandes pour les autres SGBD.

Caractéristiques de la VM

Rocky Linux release 9.3 (Green Obsidian) 64 bits.

Dimensionnement VM:

   2 vCPU
   4 Go de RAM
   2 Go de swap
 100 Go de disque


Vérification / mise en place des pré-requis

La majorité des commandes de ce chapitre sont passées avec le user unix root, soit parce que c’est nécessaire pour des installations « système », soit parce que l’on utilise des bouts de scripts qui passent les commandes en boucle sur tous les utilisateurs.
Adaptez les commandes si vous souhaitez faire l’installation pas à pas en vous connectant à chaque fois avec le bon utilisateur.
Il est primordial de suivre les commandes dans l’ordre et de vérifier à chaque fois que le résultat attendu est bien présent avant de passer à l’étape suivante, sinon, cela risque de bloquer et vous allez avoir du mal à trouver où.
En principe, toutes les commandes ont été testées et vous pouvez donc utiliser la bonne vieille méthode du copier/coller dans la majorité des cas.

Vérifications système

Vérification de la version de l’OS :

[root@vmsqwarebox ~]# cat /etc/redhat-release
Rocky Linux release 9.3 (Blue Onyx)


Configuration disque :

[root@vmsqwarebox ~]# vgs
  VG      #PV #LV #SN Attr   VSize   VFree
  data_vg   1   5   0 wz--n- <60.91g  20.83g
  root_vg   1   4   0 wz--n-  37.50g <20.48g

[root@vmsqwarebox ~]# df -h
Filesystem                   Size  Used Avail Use% Mounted on
devtmpfs                     1.9G     0  1.9G   0% /dev
tmpfs                        1.9G     0  1.9G   0% /dev/shm
tmpfs                        1.9G  8.7M  1.9G   1% /run
tmpfs                        1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/root_vg-root      10G  1.7G  8.4G  17% /
/dev/sda2                   1014M  245M  770M  25% /boot
/dev/sda1                    599M  5.8M  594M   1% /boot/efi
/dev/mapper/root_vg-var      5.0G  379M  4.7G   8% /var
/dev/mapper/data_vg-applis   5.0G   69M  5.0G   2% /applis
/dev/mapper/data_vg-data      15G  140M   15G   1% /data
/dev/mapper/data_vg-home      10G  105M  9.9G   2% /home
/dev/mapper/data_vg-backups   10G  105M  9.9G   2% /backups
tmpfs                        374M     0  374M   0% /run/user/0

[root@vmsqwarebox ~]# free
              total        used        free      shared  buff/cache   available
Mem:        3825740      314080     1493080        8868     2018580     3237608
Swap:       2097148           0     2097148


Mettre l’OS à la dernière version de patch :

[root@vmsqwarebox ~]# dnf update


Desactivation FW et SELinux :

# Desactivation du FW !
systemctl disable firewalld
systemctl stop firewalld

# Desactivation SELINUX
#Verif
/usr/sbin/getenforce
Enforcing

vi /etc/sysconfig/selinux
SELINUX=enforcing => SELINUX=disabled (reboot)
shutdown -r now

#Sans reboot
/usr/sbin/setenforce 0

#Verif
/usr/sbin/getenforce
Disabled


Préférez un serveur paramétré en anglais, c’est plus facile pour les messages d’erreur (au lieu du classique fr_FR.UTF-8) :

#Si besoin installation des locales
dnf install langpacks-en glibc-all-langpacks -y

#Passage en anglais (plus facile pour les messages !)
localectl
localectl set-locale LANG=en_US.UTF-8

localectl
   System Locale: LANG=fr_FR.UTF-8
       VC Keymap: fr-oss
      X11 Layout: fr
     X11 Variant: oss
localectl set-locale LANG=en_US.UTF-8
localectl
   System Locale: LANG=en_US.UTF-8
       VC Keymap: fr-oss
      X11 Layout: fr
     X11 Variant: oss

#Clavier fr (temp)
loadkeys fr

#Une petite astuce, si votre clavier est en QWERTY, tapez les touches suivantes de votre clavier
loqdeys fr

localectl status
localectl list-keymaps | grep fr

localectl set-keymap fr
localectl set-x11-keymap fr

localectl status
   System Locale: LANG=en_US.UTF-8
       VC Keymap: fr
      X11 Layout: fr


Install et activation du NTP (on utilise Chrony):

#Install et activation de Chrony
dnf install -y chrony

#Check config of chronyd (old ntpd)
cat /etc/chrony.conf

#Utilisez un pool de serveurs proche, ex:
pool 0.europe.pool.ntp.org iburst

#Start et activation du démarrage auto
systemctl enable --now chronyd

#If Firewalld is running, allow NTP service. NTP uses [123/UDP].
firewall-cmd --add-service=ntp
success
firewall-cmd --runtime-to-permanent
success

#On relance le service
systemctl restart chronyd

#Vérifier le status du service
systemctl is-enabled chronyd
enabled

systemctl status chronyd
  chronyd.service - NTP client/server
   Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled)
...


Installation de RPM qui vont servir par la suite !

dnf install -y open-vm-tools
dnf install -y nmap bind-utils ksh rsync openssh-server openssl-devel openssl
dnf install -y epel-release binutils net-tools telnet control-center gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel make sysstat sendmail postfix cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain

##Conf et activation du mail (modif relayhost)
vi /etc/postfix/main.cf
systemctl start postfix.service
systemctl enable postfix.service
systemctl status postfix.service

## Pour client Oracle 19c (mais pas que !)
dnf install -y zip unzip git wget mlocate nano binutils.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.i686 glibc.x86_64 glibc-devel.i686 glibc-devel.x86_64 ksh libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64 libgcc.i686 libgcc.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 libXi.i686 libXi.x86_64 libXtst.i686 libXtst.x86_64 make.x86_64 sysstat.x86_64


Un certain nombre de RPM sont nécessaires pour l’installation d’Oracle, il convient donc de vérifier leur présence et de les installer si nécessaire.
Exemple de commande de vérification :

$ rpm -q gcc
gcc-11.4.1-2.1.el9.x86_64


Il peut être utile de connaitre l'architecture des RPM installés (x86_64 et i386 par exemple). Pour ce faire, il suffit de modifier le format d'affichage par défaut en éditant le fichier ~/.rpmmacros .

$ echo '%_query_all_fmt %%{name}-%%{version}-%%{release} (%%{arch})' >>~/.rpmmacros
$ rpm -q gcc
gcc-11.4.1-2.1.el9 (x86_64)


Ou directement dans la ligne de commande :

$ rpm -q gcc --queryformat '%{name}-%{release}  %{version}  (%{arch})\n'
gcc-2.1.el9  11.4.1  (x86_64)


Exemple de sortie lorsqu’un RPM manque :

[root@vmsqwarebox /]# rpm -q libXpm-devel
package libXpm-devel is not installed


Exemple d’installation d’un RPM manquant :

[root@vmsqwarebox /]# rpm -ivh libXpm-devel-3.5.5-3.x86_64.rpm
warning: libXpm-devel-3.5.5-3.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:libXpm-devel           ########################################### [100%]


Le plus simple, installation directe avec yum (nécessite un repo) :

[root@vmsqwarebox /]# dnf install libXpm-devel ksh binutils gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel make sysstat