<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archives des Infrastructure HA Web - CoffeeBreak Info</title>
	<atom:link href="https://coffeebreak.en-images.info/category/systeme-linux/redhat-centos-linux/infrastructure-ha-web/feed/" rel="self" type="application/rss+xml" />
	<link>https://coffeebreak.en-images.info/category/systeme-linux/redhat-centos-linux/infrastructure-ha-web/</link>
	<description>Une petite pause :)</description>
	<lastBuildDate>Sun, 21 Nov 2021 14:05:21 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://coffeebreak.en-images.info/wp-content/uploads/2021/07/cropped-Tasse_Cafe-scaled-1-32x32.jpg</url>
	<title>Archives des Infrastructure HA Web - CoffeeBreak Info</title>
	<link>https://coffeebreak.en-images.info/category/systeme-linux/redhat-centos-linux/infrastructure-ha-web/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>MODOP – Grafana/Promotheus pour Apache VPS &#8211; WordPress</title>
		<link>https://coffeebreak.en-images.info/modop-grafana-promotheus-pour-apache-vps-wordpress/</link>
					<comments>https://coffeebreak.en-images.info/modop-grafana-promotheus-pour-apache-vps-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[chris]]></dc:creator>
		<pubDate>Mon, 19 Jul 2021 17:22:58 +0000</pubDate>
				<category><![CDATA[AlmaLinux]]></category>
		<category><![CDATA[Grafana]]></category>
		<category><![CDATA[Infrastructure HA Web]]></category>
		<category><![CDATA[OS Linux]]></category>
		<category><![CDATA[Système]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[grafana]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[promotheus]]></category>
		<guid isPermaLink="false">https://coffeebreak.en-images.info/?p=3524</guid>

					<description><![CDATA[<p>Mise en place d'une solution de supervision des métriques concernant Apache (Site Web VPS) via le couple Grafana/Promotheus.</p>
<p>L’article <a href="https://coffeebreak.en-images.info/modop-grafana-promotheus-pour-apache-vps-wordpress/">MODOP – Grafana/Promotheus pour Apache VPS &#8211; WordPress</a> est apparu en premier sur <a href="https://coffeebreak.en-images.info">CoffeeBreak Info</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><span style="color: #ff0000;"><strong><img fetchpriority="high" decoding="async" width="1384" height="342" class="wp-image-3525" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-284.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-284.png 1384w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-284-300x74.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-284-1024x253.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-284-768x190.png 768w" sizes="(max-width: 1384px) 100vw, 1384px" /></strong></span></p>
<p>Pour le FUN, La machine sera une AlmaLinux 8 fork de RedHAT (Installation Minimale)</p>
<h3><span style="text-decoration: underline;"><span style="color: #000000;"><strong>1°) Prérequis</strong></span></span></h3>
<p><strong>Un site Apache (ici VPS WordPress)</strong></p>
<ul>
<li>Site Coffebreak.en-images.info</li>
<li>Ouvrir le Port 9901 sur votre routeur</li>
</ul>
<h3><span style="text-decoration: underline;"><span style="color: #000000;"><strong>2°) Spécification machine </strong></span></span></h3>
<p><strong>Machine Grafana03</strong><br />
IP : <strong>192.168.1.5 (vSwitch vmbr0) </strong><br />
<strong>Host : grafanaw.house.cpb</strong><br />
Disque 1 – Système 20Go<br />
RAM 2G</p>
<h3><span style="text-decoration: underline;"><span style="color: #000000;"><strong>3°) Installation de Middleware </strong></span></span></h3>
<pre>[root@grafana03 ~]#<span style="color: #ff0000;"><strong> dnf -y update</strong></span>
[root@grafana03 ~]# <strong><span style="color: #ff0000;">dnf -y install vim nmap net-tools wget</span></strong></pre>
<h3><span style="text-decoration: underline;"><span style="color: #000000; text-decoration: underline;">4°) Suppression du selinux </span></span></h3>
<pre>[root@grafana03 ~]#<span style="color: #ff0000;"><strong> sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config</strong></span>
[root@grafana03 ~]#<span style="color: #ff0000;"><strong> reboot</strong></span></pre>
<h3><span style="text-decoration: underline;"><span style="color: #000000; text-decoration: underline;">5°) Désactivation IPv6</span></span></h3>
<pre>[root@grafana03 ~]# <span style="color: #ff0000;"><strong>vi /etc/sysctl.conf</strong></span>
<span style="color: #ff0000;"><em>net.ipv6.conf.all.disable_ipv6 = 1</em></span>
<span style="color: #ff0000;"><em>net.ipv6.conf.all.autoconf = 0</em></span>
<span style="color: #ff0000;"><em>net.ipv6.conf.default.disable_ipv6 = 1</em></span>
<span style="color: #ff0000;"><em>net.ipv6.conf.default.autoconf = 0</em></span></pre>
<pre>[root@grafana03 ~]#<strong><span style="color: #ff0000;"> sysctl -p</span></strong></pre>
<h3><span style="text-decoration: underline;"><span style="color: #000000; text-decoration: underline;">6°) Installation Promotheus</span></span></h3>
<p><strong>Création User Promotheus</strong></p>
<pre>[root@grafana03 chris]# <span style="color: #ff0000;"><strong>useradd --no-create-home --shell /bin/false prometheus</strong></span></pre>
<p><strong>Récupération de promotheus</strong></p>
<pre>[root@grafana03 ~]#<span style="color: #ff0000;"><strong> cd /tmp</strong></span>
[root@grafana03 tmp]#<strong><span style="color: #ff0000;"> wget <a style="color: #ff0000;" href="https://github.com/prometheus/prometheus/releases/download/v2.8.1/prometheus-2.8.1.linux-amd64.tar.gz">https://github.com/prometheus/prometheus/releases/download/v2.8.1/prometheus-2.8.1.linux-amd64.tar.gz</a></span></strong>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>yum install tar</strong></span>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>tar xzvf prometheus-2.8.1.linux-amd64.tar.gz</strong></span>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>mv prometheus-2.8.1.linux-amd64 prometheuspackage</strong></span></pre>
<p><strong>Création structure Promotheus</strong></p>
<pre>[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>mkdir /etc/prometheus</strong></span>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>mkdir /var/lib/prometheus</strong></span>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>chown prometheus:prometheus /etc/prometheus</strong></span>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>chown prometheus:prometheus /var/lib/prometheus</strong></span></pre>
<p><strong>Copier les binaires sur la structure Promotheus</strong></p>
<pre>[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>cp prometheuspackage/prometheus /usr/local/bin/</strong></span>
[root@grafana03 tmp]#<span style="color: #ff0000;"><strong> cp prometheuspackage/promtool /usr/local/bin/</strong></span>
[root@grafana03 tmp]#<span style="color: #ff0000;"><strong> chown prometheus:prometheus /usr/local/bin/prometheus</strong></span>
[root@grafana03 tmp]#<span style="color: #ff0000;"><strong> chown prometheus:prometheus /usr/local/bin/promtool</strong></span></pre>
<p><strong>Copier les fichiers conf sur la structure Promotheus</strong></p>
<pre>[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>cp -r prometheuspackage/consoles /etc/prometheus</strong></span>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>cp -r prometheuspackage/console_libraries /etc/prometheus</strong></span>
[root@grafana03 tmp]#<span style="color: #ff0000;"><strong> chown -R prometheus:prometheus /etc/prometheus/consoles</strong></span>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>chown -R prometheus:prometheus /etc/prometheus/console_libraries</strong></span></pre>
<p><strong>Création du service Promotheus</strong></p>
<pre>[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>vi /etc/systemd/system/prometheus.service</strong></span>

[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
--config.file /etc/prometheus/prometheus.yml \
--storage.tsdb.path /var/lib/prometheus/ \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries

[Install]
WantedBy=multi-user.target</pre>
<p><strong>Configurer Promotheus</strong></p>
<pre>[root@grafana03 chris]#<span style="color: #ff0000;"><strong> vi /etc/prometheus/prometheus.yml</strong></span>

<em>global:</em>
<em> scrape_interval: 10s</em>
<em>
scrape_configs:</em>
<em> - job_name: 'coffeebreak'</em>
<em> scrape_interval: 5s</em>
<em> static_configs:</em>
<em> - targets: ['vps:9901']</em></pre>
<p><img decoding="async" width="388" height="156" class="wp-image-3526" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-285.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-285.png 388w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-285-300x121.png 300w" sizes="(max-width: 388px) 100vw, 388px" /></p>
<p><strong>Démarrage du service Promotheus</strong></p>
<pre>[root@grafana03 tmp]#<strong><span style="color: #ff0000;"> systemctl daemon-reload</span></strong>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>systemctl start prometheus &amp;&amp; systemctl enable prometheus</strong></span>
[root@grafana03 tmp]# <span style="color: #ff0000;"><strong>systemctl status prometheus</strong></span></pre>
<p><img decoding="async" width="1721" height="342" class="wp-image-3527" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-286.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-286.png 1721w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-286-300x60.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-286-1024x203.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-286-768x153.png 768w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-286-1536x305.png 1536w" sizes="(max-width: 1721px) 100vw, 1721px" /></p>
<p><strong>Régle de Firewall &#8211; Promotheus</strong></p>
<pre>[root@grafana03 ~]#<strong><span style="color: #ff0000;"> firewall-cmd --zone=public --add-port=9901/tcp --permanent</span></strong>
[root@grafana03 ~]#<strong><span style="color: #ff0000;"> firewall-cmd --reload</span></strong></pre>
<ul>
<li><a href="http://grafanaw.house.cpb">http://grafanaw.house.cpb</a></li>
</ul>
<p><img loading="lazy" decoding="async" width="1044" height="451" class="wp-image-3528" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-287.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-287.png 1044w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-287-300x130.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-287-1024x442.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-287-768x332.png 768w" sizes="auto, (max-width: 1044px) 100vw, 1044px" /></p>
<h3><span style="text-decoration: underline;"><span style="color: #000000;"><strong>7°) Installation Grafana</strong></span></span></h3>
<pre>[root@grafana03 ~]#<span style="color: #ff0000;"><strong> vi /etc/yum.repos.d/grafana.repo</strong></span>

<em>[grafana]</em>
<em>name=grafana</em>
<em>baseurl=https://packages.grafana.com/oss/rpm</em>
<em>repo_gpgcheck=1</em>
<em>enabled=1</em>
<em>gpgcheck=1</em>
<em>gpgkey=https://packages.grafana.com/gpg.key</em>
<em>sslverify=1</em>
<em>sslcacert=/etc/pki/tls/certs/ca-bundle.crt</em></pre>
<pre>[root@grafana03 ~]# <span style="color: #ff0000;"><strong>dnf update</strong></span>
[root@grafana03 ~]#<span style="color: #ff0000;"><strong> dnf install grafana</strong></span></pre>
<p><strong>Installation de font du Supplémentaire </strong></p>
<pre>[root@grafana03 ~]# <span style="color: #ff0000;"><strong>dnf install fontconfig freetype* urw-fonts</strong></span></pre>
<p><strong>Activer Grafana </strong></p>
<pre>[root@grafana03 ~]#<span style="color: #ff0000;"><strong> systemctl start grafana-server &amp;&amp; systemctl enable grafana-server</strong></span> [root@grafana03 ~]# <strong><span style="color: #ff0000;">systemctl status grafana-server</span></strong></pre>
<p><img loading="lazy" decoding="async" width="1652" height="388" class="wp-image-3529" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-288.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-288.png 1652w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-288-300x70.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-288-1024x241.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-288-768x180.png 768w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-288-1536x361.png 1536w" sizes="auto, (max-width: 1652px) 100vw, 1652px" /></p>
<p><strong>Régle de Firewall – grafana</strong></p>
<pre>[root@grafana03 ~]#<strong><span style="color: #ff0000;"> firewall-cmd - zone=public --add-port=3000/tcp --permanent</span></strong>
[root@grafana03 ~]#<span style="color: #ff0000;"><strong> firewall-cmd --reload</strong></span></pre>
<h3><span style="text-decoration: underline;"><span style="color: #000000;"><strong>8°) Installer l’exporter sur le Site VPS</strong></span></span></h3>
<p><strong>Récupération de l’exporter apache</strong></p>
<pre>[root@vps-xxxxxx chris]# <span style="color: #ff0000;"><strong>yum install git</strong></span>
[root@vps-xxxxxx chris]# <span style="color: #ff0000;"><strong>cd /tmp</strong></span>
[root@vps-xxxxxx tmp]#<span style="color: #ff0000;"><strong> git clone <a style="color: #ff0000;" href="https://github.com/Lusitaniae/apache_exporter.git">https://github.com/Lusitaniae/apache_exporter.git</a></strong></span></pre>
<p><strong>Installation de GO</strong></p>
<pre>[root@vps-xxxxxx tmp]# <span style="color: #ff0000;"><strong>yum update -y</strong></span>
[root@vps-xxxxxx tmp]# <strong><span style="color: #ff0000;">yum groupinstall 'Development Tools'</span></strong>
[root@vps-xxxxxx tmp]# <strong><span style="color: #ff0000;">cd /tmp;wget <a style="color: #ff0000;" href="https://golang.org/dl/go1.15.3.linux-amd64.tar.gz">https://golang.org/dl/go1.15.3.linux-amd64.tar.gz</a></span></strong>
[root@vps-xxxxxx tmp]#<strong><span style="color: #ff0000;"> tar -zxvf go1.15.3.linux-amd64.tar.gz -C /usr/local</span></strong></pre>
<pre>[root@vps-xxxxxx tmp]#<strong><span style="color: #ff0000;"> echo 'export GOROOT=/usr/local/go' | sudo tee -a /etc/profile</span></strong>
<span style="color: #ff0000;"><em>export GOROOT=/usr/local/go</em></span>
[root@vps-xxxxxx tmp]# <span style="color: #ff0000;"><strong>echo 'export PATH=$PATH:/usr/local/go/bin' | sudo tee -a /etc/profile</strong></span>
<span style="color: #ff0000;"><em>export PATH=$PATH:/usr/local/go/bin</em></span>
[root@vps-xxxxxx tmp]# <span style="color: #ff0000;"><strong>source /etc/profile</strong></span></pre>
<pre>[root@vps-xxxxxx tmp]# <span style="color: #ff0000;"><strong>go version</strong></span>
<span style="color: #ff0000;"><em>go version go1.15.3 linux/amd64</em></span></pre>
<p><strong>Compiler et installer exporter Apache</strong></p>
<pre>[root@vps-xxxxxx tmp]# <span style="color: #ff0000;"><strong>cd apache_exporter/</strong></span>
[root@vps-xxxxxx apache_exporter]# <span style="color: #ff0000;"><strong>make</strong></span>
<em><span style="color: #ff0000;">Ne pas tenir compte du message d’erreur « for file in test/*.metrics; do docker run -i --rm -w "/tmp/apache_exporter" -v "/tmp/apache_exporter:/tmp/apache_exporter" --entrypoint promtool</span> <span style="color: #ff0000;">quay.io/prometheus/prometheus:latest check metrics &lt; $file || exit 1; done »</span></em>

[root@vps-xxxxxx apache_exporter]# <strong><span style="color: #ff0000;">mv apache_exporter /usr/local/bin</span></strong>
[root@vps-xxxxxx apache_exporter]# <strong><span style="color: #ff0000;">/usr/local/bin/apache_exporter --version</span></strong></pre>
<p><img loading="lazy" decoding="async" width="833" height="117" class="wp-image-3530" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-289.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-289.png 833w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-289-300x42.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-289-768x108.png 768w" sizes="auto, (max-width: 833px) 100vw, 833px" /></p>
<p><strong>Création Group/User privilège</strong></p>
<pre>[root@vps-xxxxxx apache_exporter]# <span style="color: #ff0000;"><strong>groupadd --system prometheus</strong></span>
[root@vps-xxxxxx apache_exporter]#<span style="color: #ff0000;"><strong> useradd -s /sbin/nologin --system -g prometheus prometheus</strong></span></pre>
<p><strong>Création du service exporter Apache</strong></p>
<pre>[root@vps-e7276df3 apache_exporter]# <span style="color: #ff0000;"><strong>vi /etc/systemd/system/apache_exporter.service</strong></span>

<em>[unit]</em>
<em>Description=Prometheus</em>
<em>Documentation=https://github.com/Lusitaniae/apache_exporter</em>
<em>Wants=network-online.target</em>
<em>After=network-online.target</em>
<em>
[Service]</em>
<em>Type=simple</em>
<em>User=prometheus</em>
<em>Group=prometheus</em>
<em>ExecReload=/bin/kill -HUP $MAINPID</em>
<em>ExecStart=/usr/local/bin/apache_exporter \</em>
<em> --insecure \</em>
<em> --scrape_uri=http://localhost/server-status/?auto \</em>
<em> --telemetry.address=0.0.0.0:9901 \</em>
<em> --telemetry.endpoint=/metrics</em>
<em>SyslogIdentifier=apache_exporter</em>
<em>Restart=always</em>
<em>
[Install]</em>
<em>WantedBy=multi-user.target</em></pre>
<pre>[root@vps-xxxxxx apache_exporter]# <span style="color: #ff0000;"><strong>systemctl daemon-reload</strong></span>
[root@vps-xxxxxx apache_exporter]# <span style="color: #ff0000;"><strong>systemctl start apache_exporter.service</strong></span>
[root@vps-xxxxxx apache_exporter]# <span style="color: #ff0000;"><strong>systemctl enable apache_exporter.service</strong></span></pre>
<h3><span style="text-decoration: underline;"><span style="color: #000000;"><strong>9°) Activer mod_status apache </strong></span></span></h3>
<pre>[root@vps-xxxxxx chris]# <span style="color: #ff0000;"><strong>apachectl -M | grep status</strong></span>

<em>status_module (shared)</em>
[root@vps-e7276df3 chris]# vi /etc/httpd/conf.d/status.conf
<em>&lt;Location /server-status&gt;</em>
<em> SetHandler server-status</em>
<em> Order deny,allow</em>
<em> Deny from all</em>
<em># IP Autorisés </em>
<em> Allow from localhost 83.XX 149.XXX</em>
<em>&lt;/Location&gt;</em></pre>
<pre>[root@vps-xxxxxx chris]# <span style="color: #ff0000;"><strong>systemctl reload httpd</strong></span></pre>
<p><strong>Test Local </strong></p>
<pre>[root@vps-xxxxxx chris]# <span style="color: #ff0000;"><strong>yum install lynx</strong></span>
[root@vps-xxxxxx chris]#<span style="color: #ff0000;"><strong> lynx <a style="color: #ff0000;" href="http://localhost/server-status">http://localhost/server-status</a></strong></span></pre>
<p><img loading="lazy" decoding="async" width="1378" height="693" class="wp-image-3531" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-290.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-290.png 1378w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-290-300x151.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-290-1024x515.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-290-768x386.png 768w" sizes="auto, (max-width: 1378px) 100vw, 1378px" /></p>
<p><a href="https://coffeebreak.en-images.info/server-status">https://coffeebreak.en-images.info/server-status</a></p>
<p><img loading="lazy" decoding="async" width="917" height="646" class="wp-image-3532" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-291.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-291.png 917w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-291-300x211.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-291-768x541.png 768w" sizes="auto, (max-width: 917px) 100vw, 917px" /></p>
<p><strong>Régle de Firewall – Exporter Apache </strong></p>
<pre>[root@ vps-xxxxxx apache_exporter]#<span style="color: #ff0000;"><strong> firewall-cmd --zone=public --add-port=9901/tcp --permanent</strong></span>
[root@ vps-xxxxxx apache_exporter]#<span style="color: #ff0000;"><strong> firewall-cmd  --reload</strong></span></pre>
<h3><span style="text-decoration: underline;"><span style="color: #000000;"><strong>10°) Configurer Prometheus et Grafana</strong></span></span></h3>
<ul>
<li><a href="http://grafanaw.house.cpb:3000/">http://grafanaw.house.cpb:3000/</a></li>
</ul>
<p><img loading="lazy" decoding="async" width="1114" height="462" class="wp-image-3533" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-292.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-292.png 1114w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-292-300x124.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-292-1024x425.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-292-768x319.png 768w" sizes="auto, (max-width: 1114px) 100vw, 1114px" /></p>
<p>« Ajouter DATA source »<br />
<img loading="lazy" decoding="async" width="895" height="160" class="wp-image-3534" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-293.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-293.png 895w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-293-300x54.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-293-768x137.png 768w" sizes="auto, (max-width: 895px) 100vw, 895px" /></p>
<p>« Choisir la source »<br />
<img loading="lazy" decoding="async" width="656" height="298" class="wp-image-3535" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-294.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-294.png 656w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-294-300x136.png 300w" sizes="auto, (max-width: 656px) 100vw, 656px" /></p>
<p>« Inscrire l’adresse du serveur Promotheus »<br />
<img loading="lazy" decoding="async" width="602" height="157" class="wp-image-3536" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-295.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-295.png 602w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-295-300x78.png 300w" sizes="auto, (max-width: 602px) 100vw, 602px" /></p>
<p><strong>Ajouter un Dasboard</strong></p>
<p>Il existe de nombreux Dashboard prêt à l’emploi</p>
<p><img loading="lazy" decoding="async" width="222" height="150" class="wp-image-3537" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-296.png" /><br />
« Import »</p>
<p><img loading="lazy" decoding="async" width="540" height="228" class="wp-image-3538" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-297.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-297.png 540w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-297-300x127.png 300w" sizes="auto, (max-width: 540px) 100vw, 540px" /><br />
« Ajouter l’ID souhaité » puis « Load »</p>
<p><img loading="lazy" decoding="async" width="614" height="466" class="wp-image-3539" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-298.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-298.png 614w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-298-300x228.png 300w" sizes="auto, (max-width: 614px) 100vw, 614px" /><br />
« Import »</p>
<p><img loading="lazy" decoding="async" width="1796" height="940" class="wp-image-3540" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-299.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-299.png 1796w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-299-300x157.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-299-1024x536.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-299-768x402.png 768w, https://coffeebreak.en-images.info/wp-content/uploads/2021/07/word-image-299-1536x804.png 1536w" sizes="auto, (max-width: 1796px) 100vw, 1796px" /><br />
« Arrivée des métriques »</p>
<p>Views: 10</p><p>L’article <a href="https://coffeebreak.en-images.info/modop-grafana-promotheus-pour-apache-vps-wordpress/">MODOP – Grafana/Promotheus pour Apache VPS &#8211; WordPress</a> est apparu en premier sur <a href="https://coffeebreak.en-images.info">CoffeeBreak Info</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://coffeebreak.en-images.info/modop-grafana-promotheus-pour-apache-vps-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>MODOP – PARTIE 5 – Installation WordPress en HA – Cluster HaProxy</title>
		<link>https://coffeebreak.en-images.info/modop-partie-5-installation-wordpress-en-ha-cluster-haproxy/</link>
					<comments>https://coffeebreak.en-images.info/modop-partie-5-installation-wordpress-en-ha-cluster-haproxy/#respond</comments>
		
		<dc:creator><![CDATA[chris]]></dc:creator>
		<pubDate>Mon, 28 Jun 2021 17:57:53 +0000</pubDate>
				<category><![CDATA[Cluster HAProxy]]></category>
		<category><![CDATA[Infrastructure HA Web]]></category>
		<category><![CDATA[OS Linux]]></category>
		<category><![CDATA[Cluster]]></category>
		<category><![CDATA[Cluster HA]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[RockyLinux]]></category>
		<category><![CDATA[Système]]></category>
		<guid isPermaLink="false">https://coffeebreak.en-images.info/?p=2580</guid>

					<description><![CDATA[<p>Installation du Cluster HaProxy. Il sera en charge de gérer la répartition des charges réseaux pour les bases de données , les accès Web. IL va gérer aussi les Faillover des machines DOWN sur l'infrastructure.</p>
<p>L’article <a href="https://coffeebreak.en-images.info/modop-partie-5-installation-wordpress-en-ha-cluster-haproxy/">MODOP – PARTIE 5 – Installation WordPress en HA – Cluster HaProxy</a> est apparu en premier sur <a href="https://coffeebreak.en-images.info">CoffeeBreak Info</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p></p>


<p>Pour le Fun nous allons installer HaProxy + KeeAlive sur le fork RockyLinux</p>
<ul>
<li><a href="https://rockylinux.org/download">https://rockylinux.org/download</a></li>
</ul>
<h3><strong>3 machines HaProxy (RockyLinux 8)</strong></h3>
<ul>
<li>node01-haw 172.16.186.20</li>
<li>node02-haw 172.16.186.21</li>
<li>node03-haw 172.16.186.22</li>
<li>node-haw 192.168.1.230/24(vIP)</li>
</ul>
<p><img loading="lazy" decoding="async" width="853" height="295" class="wp-image-2584" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-663.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-663.png 853w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-663-300x104.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-663-768x266.png 768w" sizes="auto, (max-width: 853px) 100vw, 853px" /><br />Le Pool « Cluster_SQLW » va être composé de trois machines virtuelles</p>
<ul>
<li>Node01-haw
<ul>
<li>2CPU, 2G RAM, 20Go Disk</li>
<li>Disque 30Go Cluster GlusterGS (node01-gfsw)</li>
<li>LAN Privé : 172.16.186.20</li>
<li>LAN Public : 192.168.1.231</li>
</ul>
</li>
<li>Node02-haw -&gt; 172.16.186.28
<ul>
<li>2CPU, 2G RAM, 20Go Disk</li>
<li>Disque 30Go Cluster GlusterGS (node02-gfsw)</li>
<li>LAN Privé : 172.16.186.21</li>
<li>LAN Public : 192.168.1.232</li>
</ul>
</li>
<li>Node03-haw -&gt; 172.16.186.29
<ul>
<li>2CPU, 2G RAM, 20Go Disk</li>
<li>Disque 30Go Cluster GlusterGS (node03-gfsw)</li>
<li>LAN Privé : 172.16.186.22</li>
<li>LAN Public : 192.168.1.233</li>
</ul>
</li>
</ul>
<p>Comme pour le Cluster Web n nous ferons héberger le(s) fichier(s) de conf de HaProxy.</p>
<h3>1°) Désactivation du SElinux (3 nœuds haw)</h3>
<pre>[root@node01-haw ~]# <span style="color: #ff0000;"><strong>vi /etc/selinux/config</strong></span><br /><span style="color: #ff0000;"><em>SELINUX=</em><strong><em>disabled</em></strong></span></pre>
<p>Redémarrer la machine.</p>
<pre>[root@node01-haw ~]# <span style="color: #ff0000;"><strong>reboot</strong></span></pre>
<h3>2°) Installation de paquets utiles(3 nœuds haw)</h3>
<pre>[root@node01- haw ~]# <span style="color: #ff0000;"><strong>yum update &amp;&amp; yum upgrade</strong></span><br />[root@node01- haw ~]#] <span style="color: #ff0000;"><strong>yum install qemu-guest-agent</strong></span><br />[root@node01- haw ~]# <span style="color: #ff0000;"><strong>yum install nmap net-tools</strong></span></pre>
<h3>3°)Installantion NTP (3 nœuds haw)</h3>
<pre>[root@node01- haw ~]# <span style="color: #ff0000;"><strong>dnf install chrony</strong></span><br />[root@node01- haw ~]# <span style="color: #ff0000;"><strong>systemctl start chronyd</strong></span><br />[root@node01- haw ~]# <span style="color: #ff0000;"><strong>systemctl enable chronyd</strong></span><br />[root@node01- haw ~]# <span style="color: #ff0000;"><strong>systemctl status chronyd</strong></span></pre>
<pre>[root@node01- haw ~]#<span style="color: #ff0000;"><strong> firewall-cmd --permanent --add-service=ntp --zone=public</strong></span><br />[root@node01- haw ~]#<span style="color: #ff0000;"><strong> firewall-cmd --reload</strong></span></pre>
<h3>4°) Installation du client Gluterfs (3 nœuds web)</h3>
<pre>[root@node01-haw ~]# <span style="color: #ff0000;"><strong>yum -y install glusterfs-fuse</strong></span><br />[root@node01-haw ~]# <span style="color: #ff0000;"><strong>mkdir -p /sharegfs</strong></span></pre>
<p><strong>Montage de la ressource /gfs dans /etc/fstab via le réseau privé (3 nœuds web)</strong></p>
<h4><strong>node01-haw</strong></h4>
<pre>[root@node01-haw ~]# <strong><span style="color: #ff0000;">vi /etc/fstab</span></strong><br /><span style="color: #ff0000;"><strong>node01-gfsw:</strong>/gfsw /sharegfs glusterfs defaults,_netdev 0 0 </span><br />[root@node01-haw ~]#<span style="color: #ff0000;"><strong> mount -a</strong></span><br />[root@node01-haw ~]# <span style="color: #ff0000;"><strong>df -Th /sharegfs/</strong></span></pre>
<p><img loading="lazy" decoding="async" width="563" height="98" class="wp-image-2586" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-664.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-664.png 563w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-664-300x52.png 300w" sizes="auto, (max-width: 563px) 100vw, 563px" /></p>
<h4><strong>node02-haw</strong></h4>
<pre>[root@node02-haw ~]#<span style="color: #ff0000;"><strong> vi /etc/fstab</strong></span><br /><span style="color: #ff0000;"><strong>node02-gfsw:</strong>/gfsw /sharegfs glusterfs defaults,_netdev 0 0 </span><br />[root@node02-haw ~]# <strong><span style="color: #ff0000;">mount -a</span></strong><br />[root@node02-haw ~]# <span style="color: #ff0000;"><strong>df -Th /sharegfs/</strong></span></pre>
<p><img loading="lazy" decoding="async" width="560" height="91" class="wp-image-2587" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-665.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-665.png 560w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-665-300x49.png 300w" sizes="auto, (max-width: 560px) 100vw, 560px" /></p>
<h4><strong>node03-haw</strong></h4>
<pre>[root@node03-haw ~]# <span style="color: #ff0000;"><strong>vi /etc/fstab</strong></span><br /><span style="color: #ff0000;"><strong>node03-gfsw:</strong>/gfsw /sharegfs glusterfs defaults,_netdev 0 0 </span><br />[root@node03-haw ~]# <span style="color: #ff0000;"><strong>mount -a</strong></span><br />[root@node03-haw ~]# <span style="color: #ff0000;"><strong>df -Th /sharegfs/</strong></span></pre>
<p><img loading="lazy" decoding="async" width="577" height="87" class="wp-image-2589" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-666.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-666.png 577w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-666-300x45.png 300w" sizes="auto, (max-width: 577px) 100vw, 577px" /></p>
<h3>5°) Installation de KeepAlive (3 nœuds haw)</h3>
<pre>[root@node03-haw ~]# <span style="color: #ff0000;"><strong>yum -y install keepalived</strong></span><br />[root@node03-haw ~]#<span style="color: #ff0000;"><strong> yum -y install ipvsadm</strong></span><br /><br />[root@node03-haw ~]# <span style="color: #ff0000;"><strong>modprobe ip_vs</strong></span><br />[root@node03-haw ~]# <span style="color: #ff0000;"><strong>echo ip_vs &gt;&gt; /etc/modules</strong></span><br /><br />[root@node03-haw ~]# <span style="color: #ff0000;"><strong>firewall-cmd --add-rich-rule='rule protocol value="vrrp" accept' --permanent</strong></span><br />[root@node03-haw ~]#<span style="color: #ff0000;"><strong> firewall-cmd --reload</strong></span></pre>
<p> </p>
<h4><strong>Configuration node Master (node01-haw)</strong></h4>
<pre>[root@node01-haw]# <span style="color: #ff0000;"><strong>mv /etc/keepalived/keepalived.conf{,-old}</strong></span></pre>
<pre>[root@node01-haw]# <span style="color: #ff0000;"><strong>vi /etc/keepalived/keepalived.conf</strong></span><br /><em><span style="color: #ff0000;">global_defs {</span></em><br /><em><span style="color: #ff0000;">        enable_script_security</span></em><br /><em><span style="color: #ff0000;">}</span></em><br /><em><span style="color: #ff0000;">vrrp_script check_haproxy {</span></em><br /><em><span style="color: #ff0000;">        script "/usr/bin/killall -0 haproxy"</span></em><br /><em><span style="color: #ff0000;">        interval 1</span></em><br /><em><span style="color: #ff0000;">}</span></em><br /><em><span style="color: #ff0000;">vrrp_instance VI_1 {</span></em><br /><em><span style="color: #ff0000;">         virtual_router_id 100</span></em><br /><em><span style="color: #ff0000;">         state MASTER</span></em><br /><em><span style="color: #ff0000;"><strong>         priority 102</strong></span></em><br /><em><span style="color: #ff0000;">#Interval Check</span></em><br /><em><span style="color: #ff0000;">        advert_int 1</span></em><br /><em><span style="color: #ff0000;">#interface de synchro entre les haproxy</span></em><br /><em><span style="color: #ff0000;">        lvs_sync_daemon_interface <strong>ens19</strong></span></em><br /><em><span style="color: #ff0000;">        interface <strong>ens19</strong></span></em><br /><em><span style="color: #ff0000;">#Authentification</span></em><br /><em><span style="color: #ff0000;">authentication {</span></em><br /><em><span style="color: #ff0000;"><strong>         auth_type PASS</strong></span></em><br /><em><span style="color: #ff0000;"><strong>         auth_pass 2021</strong></span></em><br /><em><span style="color: #ff0000;">}</span></em><br /><em><span style="color: #ff0000;">#Address VIP</span></em><br /><em><span style="color: #ff0000;">virtual_ipaddress {</span></em><br /><em><span style="color: #ff0000;">    <strong>     192.168.1.230</strong></span></em><br /><em><span style="color: #ff0000;">}</span></em><br /><em><span style="color: #ff0000;">track_script {</span></em><br /><em><span style="color: #ff0000;">          check_haproxy</span></em><br /><em><span style="color: #ff0000;">}</span></em><br /><em><span style="color: #ff0000;">}</span></em></pre>
<pre>[root@node01-haw ~]# <span style="color: #ff0000;">systemctl enable keepalived &amp;&amp; systemctl start keepalived</span></pre>
<h4>Configuration node Master (node02-haw)</h4>
<pre>[root@node02-haw]# <span style="color: #ff0000;"><strong>mv /etc/keepalived/keepalived.conf{,-old}</strong></span></pre>
<pre>[root@node02-haw]# <span style="color: #ff0000;"><strong>vi /etc/keepalived/keepalived.conf</strong></span><br /><span style="color: #ff0000;"><em>global_defs {</em></span><br /><span style="color: #ff0000;"><em>         enable_script_security</em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>vrrp_script check_haproxy {</em></span><br /><span style="color: #ff0000;"><em>         script "/usr/bin/killall -0 haproxy"</em></span><br /><span style="color: #ff0000;"><em>         interval 1</em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>vrrp_instance VI_1 {</em></span><br /><span style="color: #ff0000;"><em>         virtual_router_id 100</em></span><br /><span style="color: #ff0000;"><em>         state MASTER</em></span><br /><span style="color: #ff0000;"><em><strong>         priority 101</strong></em></span><br /><span style="color: #ff0000;"><em>#Interval Check</em></span><br /><span style="color: #ff0000;"><em>         advert_int 1</em></span><br /><span style="color: #ff0000;"><em>#interface de synchro entre les haproxy</em></span><br /><span style="color: #ff0000;"><em>         lvs_sync_daemon_interface <strong>ens19</strong></em></span><br /><span style="color: #ff0000;"><em>         interface <strong>ens19</strong></em></span><br /><span style="color: #ff0000;"><em>#Authentification</em></span><br /><span style="color: #ff0000;"><em>authentication {</em></span><br /><span style="color: #ff0000;"><em><strong>         auth_type PASS</strong></em></span><br /><span style="color: #ff0000;"><em><strong>        auth_pass 2021</strong></em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>#Address VIP</em></span><br /><span style="color: #ff0000;"><em>virtual_ipaddress {</em></span><br /><span style="color: #ff0000;"><em>   <strong>     192.168.1.230</strong></em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>track_script {</em></span><br /><span style="color: #ff0000;"><em>         check_haproxy</em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>}</em></span></pre>
<pre>[root@node02-haw ~]# <span style="color: #ff0000;"><strong>systemctl enable keepalived &amp;&amp; systemctl start keepalived</strong></span></pre>
<h4>Configuration node Master (node03-haw)</h4>
<pre>[root@node03-haw]# <span style="color: #ff0000;"><strong>mv /etc/keepalived/keepalived.conf{,-old}</strong></span></pre>
<pre><br />[root@node03-haw]# <span style="color: #ff0000;"><strong>vi /etc/keepalived/keepalived.conf</strong></span><br /><span style="color: #ff0000;"><em>global_defs {</em></span><br /><span style="color: #ff0000;"><em>         enable_script_security</em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>vrrp_script check_haproxy {</em></span><br /><span style="color: #ff0000;"><em>          script "/usr/bin/killall -0 haproxy"</em></span><br /><span style="color: #ff0000;"><em>          interval 1</em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>vrrp_instance VI_1 {</em></span><br /><span style="color: #ff0000;"><em>         virtual_router_id 100</em></span><br /><span style="color: #ff0000;"><em>         state MASTER</em></span><br /><span style="color: #ff0000;"><em><strong>         priority 100</strong></em></span><br /><span style="color: #ff0000;"><em>#Interval Check</em></span><br /><span style="color: #ff0000;"><em>         advert_int 1</em></span><br /><span style="color: #ff0000;"><em>#interface de synchro entre les haproxy</em></span><br /><span style="color: #ff0000;"><em>         lvs_sync_daemon_interface <strong>ens19</strong></em></span><br /><span style="color: #ff0000;"><em>         interface <strong>ens19</strong></em></span><br /><span style="color: #ff0000;"><em>#Authentification</em></span><br /><span style="color: #ff0000;"><em>authentication {</em></span><br /><span style="color: #ff0000;"><em><strong>          auth_type PASS</strong></em></span><br /><span style="color: #ff0000;"><em><strong>          auth_pass 2021</strong></em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>#Address VIP</em></span><br /><span style="color: #ff0000;"><em>virtual_ipaddress {</em></span><br /><span style="color: #ff0000;"><em>          <strong>192.168.1.230</strong></em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>track_script {</em></span><br /><span style="color: #ff0000;"><em>         check_haproxy</em></span><br /><span style="color: #ff0000;"><em>}</em></span><br /><span style="color: #ff0000;"><em>}</em></span></pre>
<pre><br />[root@node03-haw ~]# <span style="color: #ff0000;"><strong>systemctl enable keepalived &amp;&amp; systemctl start keepalived</strong></span></pre>
<h3>6°) Mode de fonctionnement de KeepALived</h3>
<p><strong>=&gt; Les 3 machines sont UP</strong></p>
<ul>
<li>l’IP virtuelle est portée par la machine dont la priorité est le plus haut : node01-haw</li>
</ul>
<p><strong>Côté Node01 (Priorité 102)</strong><br /><img loading="lazy" decoding="async" width="948" height="86" class="wp-image-2592" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-667.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-667.png 948w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-667-300x27.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-667-768x70.png 768w" sizes="auto, (max-width: 948px) 100vw, 948px" /><br /><strong>Côté Node02 et Node03 (Priorité 101 et 100)</strong><br /><img loading="lazy" decoding="async" width="815" height="83" class="wp-image-2594" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-668.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-668.png 815w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-668-300x31.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-668-768x78.png 768w" sizes="auto, (max-width: 815px) 100vw, 815px" /><br /><img loading="lazy" decoding="async" width="862" height="73" class="wp-image-2595" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-669.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-669.png 862w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-669-300x25.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-669-768x65.png 768w" sizes="auto, (max-width: 862px) 100vw, 862px" /></p>
<p><strong>=&gt; La machine node01 est Down</strong></p>
<ul>
<li>L’IP virtuelle sera portée par la machine qui sera le plus haut sur les machines encore UP</li>
</ul>
<p>Côté Node02 (Priorité 101)<br /><img loading="lazy" decoding="async" width="900" height="93" class="wp-image-2597" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-670.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-670.png 900w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-670-300x31.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-670-768x79.png 768w" sizes="auto, (max-width: 900px) 100vw, 900px" /><br />Côté Node03 (Priorité 100)<br /><img loading="lazy" decoding="async" width="862" height="73" class="wp-image-2600" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-671.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-671.png 862w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-671-300x25.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-671-768x65.png 768w" sizes="auto, (max-width: 862px) 100vw, 862px" /></p>
<p><strong>=&gt; La machine node01 et node02 sont down</strong></p>
<ul>
<li>L’IP virtuelle sera redistribué sur node03</li>
</ul>
<p><img loading="lazy" decoding="async" width="836" height="94" class="wp-image-2602" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-672.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-672.png 836w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-672-300x34.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-672-768x86.png 768w" sizes="auto, (max-width: 836px) 100vw, 836px" /><br />On peut ainsi constater que si une machine du Ha Proxy venait à être hors ligne, l’IP virtuelle serait redistribué à la machine de priorité n-1.</p>
<h3>7°) Installation de Ha Proxy (3 nœuds haw)</h3>
<pre>[root@node01-haw ~]#<span style="color: #ff0000;"><strong> yum -y install haproxy</strong></span></pre>
<h4>Sur le node01-haw</h4>
<pre>[root@node01-haw ~]#<strong><span style="color: #ff0000;"> cd /etc/haproxy</span></strong><br />[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>mv haproxy.cfg{,-old}</strong></span><br />[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>mkdir -p /sharegfs/etc/haproxy</strong></span><br />[root@node01-haw haproxy]#<span style="color: #ff0000;"><strong> touch /sharegfs/etc/haproxy/haproxy.cfg</strong></span><br />[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>ln -s /sharegfs/etc/haproxy/haproxy.cfg haproxy.cfg</strong></span><br />[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>chmod 644 /sharegfs/etc/haproxy/haproxy.cfg</strong></span></pre>
<h4>Sur le node02-haw</h4>
<pre>[root@node02-haw ~]# <span style="color: #ff0000;"><strong>cd /etc/haproxy</strong></span><br />[root@node02-haw haproxy]#<strong><span style="color: #ff0000;"> mv haproxy.cfg{,-old}</span></strong><br />[root@node02-haw haproxy]# <span style="color: #ff0000;"><strong>ln -s /sharegfs/etc/haproxy/haproxy.cfg haproxy.cfg</strong></span></pre>
<h4>Sur le node03-haw</h4>
<pre>[root@node03-haw ~]# <span style="color: #ff0000;"><strong>cd /etc/haproxy</strong></span><br />[root@node03-haw haproxy]#<span style="color: #ff0000;"><strong> mv haproxy.cfg{,-old}</strong></span><br />[root@node02-haw haproxy]# <span style="color: #ff0000;"><strong>ln -s /sharegfs/etc/haproxy/haproxy.cfg haproxy.cfg</strong></span></pre>
<h3>8° ) Configurer la Partie Global , Defaults et Site Management</h3>
<h4>Sur le node01-haw</h4>
<pre>[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>yum install vim</strong></span></pre>
<pre>[root@node01-haw ~]# <span style="color: #ff0000;"><strong>vim /sharegfs/etc/haproxy/haproxy.cfg</strong></span><br /><br /><span style="color: #ff0000;"><em>######################################</em></span><br /><span style="color: #ff0000;"><em># Partie Global , Default et Site Managemnt</em></span><br /><span style="color: #ff0000;"><em>#############################################</em></span><br /><span style="color: #ff0000;"><em>global</em></span><br /><span style="color: #ff0000;"><em>        log 127.0.0.1 local2</em></span><br /><span style="color: #ff0000;"><em>        chroot /var/lib/haproxy</em></span><br /><span style="color: #ff0000;"><em>        pidfile /var/run/haproxy.pid</em></span><br /><span style="color: #ff0000;"><em>        maxconn 4000</em></span><br /><span style="color: #ff0000;"><em>        user haproxy</em></span><br /><span style="color: #ff0000;"><em>        group haproxy</em></span><br /><span style="color: #ff0000;"><em>        daemon</em></span><br /><span style="color: #ff0000;"><em>        #description HA Proxy sur l'infrastructure HA Mail Cluster</em></span><br /><span style="color: #ff0000;"><em>         stats socket /var/lib/haproxy/stats</em></span><br /><br /><span style="color: #ff0000;"><em>defaults</em></span><br /><span style="color: #ff0000;"><em>        mode http</em></span><br /><span style="color: #ff0000;"><em>        log global</em></span><br /><span style="color: #ff0000;"><em>        option dontlognull</em></span><br /><span style="color: #ff0000;"><em>        option http-server-close</em></span><br /><span style="color: #ff0000;"><em>        option redispatch</em></span><br /><span style="color: #ff0000;"><em>        retries 3</em></span><br /><span style="color: #ff0000;"><em>        timeout http-request 10s</em></span><br /><span style="color: #ff0000;"><em>        timeout queue 1m</em></span><br /><span style="color: #ff0000;"><em>        timeout connect 10s</em></span><br /><span style="color: #ff0000;"><em>        timeout client 1m</em></span><br /><span style="color: #ff0000;"><em>        timeout server 1m</em></span><br /><span style="color: #ff0000;"><em>        timeout http-keep-alive 10s</em></span><br /><span style="color: #ff0000;"><em>       timeout check 10s </em></span><br /><span style="color: #ff0000;"><em>       maxconn 3000</em></span><br /><br /><span style="color: #ff0000;"><em>listen stats</em></span><br /><span style="color: #ff0000;"><em>        bind *:9000</em></span><br /><span style="color: #ff0000;"><em>        stats enable</em></span><br /><span style="color: #ff0000;"><em>        stats uri <strong>/status</strong></em></span><br /><span style="color: #ff0000;"><em>        stats refresh 2s</em></span><br /><span style="color: #ff0000;"><em>        stats auth <strong>chris:ChouxCroute2021</strong></em></span><br /><span style="color: #ff0000;"><em>        stats show-desc</em></span><br /><span style="color: #ff0000;"><em>        stats show-legends</em></span><br /><span style="color: #ff0000;"><em>        stats admin if TRUE</em></span></pre>
<pre>[root@<strong>node01-haw</strong> haproxy]# <span style="color: #ff0000;"><strong>systemctl enable haproxy &amp;&amp; systemctl start haproxy</strong></span><br />[root@<strong>node02-haw</strong> haproxy]#<span style="color: #ff0000;"><strong> systemctl enable haproxy &amp;&amp; systemctl start haproxy</strong></span><br />[root@<strong>node03-haw</strong> haproxy]# <span style="color: #ff0000;"><strong>systemctl enable haproxy &amp;&amp; systemctl start haproxy</strong></span></pre>
<pre>[root@<strong>node01-haw</strong> haproxy]# <span style="color: #ff0000;"><strong>firewall-cmd --add-port=9000/tcp --zone=public --permanent &amp;&amp; firewall-cmd --reload</strong></span><br />[root@<strong>node02-haw</strong> haproxy]# <strong><span style="color: #ff0000;">firewall-cmd --add-port=9000/tcp --zone=public --permanent &amp;&amp; firewall-cmd --reload</span></strong><br />[root@<strong>node03-haw</strong> haproxy]# <span style="color: #ff0000;"><strong>firewall-cmd --add-port=9000/tcp --zone=public --permanent &amp;&amp; firewall-cmd --reload</strong></span></pre>
<p><strong>L’accès au site de management se fait à l’adresse suivant</strong></p>
<ul>
<li><strong><a href="http://nodehaw.house.cpb:9000/status">http://nodehaw.house.cpb:9000/status</a></strong></li>
</ul>
<p><img loading="lazy" decoding="async" width="1070" height="283" class="wp-image-2603" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-673.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-673.png 1070w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-673-300x79.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-673-1024x271.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-673-768x203.png 768w" sizes="auto, (max-width: 1070px) 100vw, 1070px" /><br /><img loading="lazy" decoding="async" width="1901" height="315" class="wp-image-2605" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-674.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-674.png 1901w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-674-300x50.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-674-1024x170.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-674-768x127.png 768w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-674-1536x255.png 1536w" sizes="auto, (max-width: 1901px) 100vw, 1901px" /></p>
<h3>9°) Configurer le Check des machines Ha Proxy(Couche OSI L4)</h3>
<pre>[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>vim /sharegfs/etc/haproxy/haproxy.cfg</strong></span><br /><br /><span style="color: #ff0000;"><em>######################################</em></span><br /><span style="color: #ff0000;"><em># Partie FrontEND </em></span><br /><span style="color: #ff0000;"><em>############################################</em></span><br /><span style="color: #ff0000;"><em>frontend Cluster_ha</em></span><br /><span style="color: #ff0000;"><em> mode http</em></span><br /><span style="color: #ff0000;"><em> acl <strong>ServerHAW</strong> hdr_dom(host) -i <strong>nodehaw.house.cpb</strong></em></span><br /><span style="color: #ff0000;"><em> use_backend <strong>ClusterHA</strong> if <strong>ServerHAW</strong></em></span><br /><span style="color: #ff0000;"><em> description FrontEnd pour le Cluster WEB HA Proxy</em></span><br /><br /><span style="color: #ff0000;"><em>############################################</em></span><br /><span style="color: #ff0000;"><em># Partie BackEND</em></span><br /><span style="color: #ff0000;"><em>#############################################</em></span><br /><span style="color: #ff0000;"><em>backend <strong>ClusterHA</strong></em></span><br /><span style="color: #ff0000;"><strong><em> balance roundrobin</em></strong></span><br /><span style="color: #ff0000;"><em> server node01-haw node01-haw:9000 check inter 3s fall 3 rise 2</em></span><br /><span style="color: #ff0000;"><em> server node02-haw node02-haw:9000 check inter 3s fall 3 rise 2</em></span><br /><span style="color: #ff0000;"><em> server node03-haw node03-haw:9000 check inter 3s fall 3 rise 2</em></span></pre>
<pre>[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>systemctl reload haproxy</strong></span><br />[root@node02-haw haproxy]# <span style="color: #ff0000;"><strong>systemctl reload haproxy</strong></span><br />[root@node03-haw haproxy]# <span style="color: #ff0000;"><strong>systemctl reload haproxy</strong></span></pre>
<p><em><img loading="lazy" decoding="async" width="1908" height="503" class="wp-image-2608" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-675.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-675.png 1908w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-675-300x79.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-675-1024x270.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-675-768x202.png 768w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-675-1536x405.png 1536w" sizes="auto, (max-width: 1908px) 100vw, 1908px" /></em></p>
<h3>10°) Installation Check HaProxy pour le Cluster MYsql (Couche OSI L7)</h3>
<h4><span style="text-decoration: underline;"><strong>Côté Cluster SQLW</strong></span></h4>
<p><strong>Rules Firewall 3 nœuds Percona/Mysql)</strong></p>
<pre>[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>firewall-cmd --zone=public --add-port=9200/tcp --permanent &amp;&amp; firewall-cmd --reload</strong></span></pre>
<p><strong>Installation clustercheck (3 nœuds Percona/Mysql)</strong></p>
<pre>[root@node01-sqlw ~]#<span style="color: #ff0000;"><strong> cd /home/chris</strong></span><br />[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>yum install wget</strong></span><br />[root@node01-sqlw ~]#<span style="color: #ff0000;"><strong> wget <a style="color: #ff0000;" href="https://raw.githubusercontent.com/olafz/percona-clustercheck/master/clustercheck">https://raw.githubusercontent.com/olafz/percona-clustercheck/master/clustercheck</a></strong></span><br />[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>mv clustercheck /usr/bin/Clustercheck</strong></span><br />[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>chmod +x /usr/bin/Clustercheck</strong></span></pre>
<p><strong>Installer mysqlchk via xinetd (3 nœuds Percona/Mysql)</strong><br />Le service Check sera exécuté via le daemon xinetd déclenché par la demande des HaProxy via le port 9200.</p>
<pre>[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>yum install xinetd</strong></span></pre>
<p><strong>Créer un utilisateur commun aux 3 nœuds Percona/Mysql</strong><br />A faire sur le node01 , il sera répliqué sur les autres node0x-sqlw</p>
<pre>mysql&gt; <span style="color: #ff0000;"><strong>CREATE USER 'ClusterCheck'@'node01-haw' IDENTIFIED BY '%';</strong></span><br />mysql&gt; <strong><span style="color: #ff0000;">GRANT ALL ON *.* TO 'ClusterCheck'@'%';</span></strong><br />mysql&gt; <span style="color: #ff0000;"><strong>FLUSH PRIVILEGES;</strong></span></pre>
<p><strong>Réplication sur node02 et node03 des utilisateurs Clustercheck</strong></p>
<pre>[root@node02-sqlw chris]# <span style="color: #ff0000;"><strong>mysql -u root -p -e "SELECT User, Host, Password FROM mysql.user;"</strong></span><br />[root@node03-sqlw chris]# <span style="color: #ff0000;"><strong>mysql -u root -p -e "SELECT User, Host, Password FROM mysql.user;"</strong></span></pre>
<p><img loading="lazy" decoding="async" width="639" height="254" class="wp-image-2610" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-676.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-676.png 639w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-676-300x119.png 300w" sizes="auto, (max-width: 639px) 100vw, 639px" /></p>
<p><strong>Modifier le script Clustercheck (3 nœuds Percona/Mysql)</strong></p>
<pre>[root@node01-sqlw chris]#<span style="color: #ff0000;"><strong> vi /usr/bin/Clustercheck</strong></span><br /><br /><span style="color: #ff0000;"><em>MYSQL_USERNAME="${MYSQL_USERNAME:=-clustercheckuser}"</em></span><br /><em><span style="color: #ff0000;">MYSQL_PASSWORD="${MYSQL_PASSWORD-clustercheckpassword!}</span>"</em></pre>
<p>Modifier par</p>
<p><strong><em><span style="color: #ff0000;">MYSQL_USERNAME= »${1-ClusterCheck} »</span></em></strong><br /><strong><em><span style="color: #ff0000;">MYSQL_PASSWORD= »${2-check@2021} »</span></em></strong><br /><img loading="lazy" decoding="async" width="563" height="111" class="wp-image-2611" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-677.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-677.png 563w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-677-300x59.png 300w" sizes="auto, (max-width: 563px) 100vw, 563px" /></p>
<p><strong>Check du script</strong></p>
<pre>[root@node01-sqlw chris]#<strong><span style="color: #ff0000;"> /usr/bin/Clustercheck</span></strong></pre>
<p><img loading="lazy" decoding="async" width="632" height="126" class="wp-image-2613" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-678.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-678.png 632w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-678-300x60.png 300w" sizes="auto, (max-width: 632px) 100vw, 632px" /></p>
<p><strong>Ajouter le service mysqlchl port 9200 au service (3 nœuds Percona/Mysql)</strong></p>
<pre>[root@node01-sqlw chris]# <span style="color: #ff0000;"><strong>vi /etc/services</strong></span><br /><span style="color: #ff0000;"><em>#wap-wsp 9200/tcp # WAP connectionless session service</em></span><br /><span style="color: #ff0000;"><em>#wap-wsp 9200/udp # WAP connectionless session service</em></span><br /><span style="color: #ff0000;"><em>mysqlchk 9200/tcp # mysqlchk</em></span></pre>
<p><img loading="lazy" decoding="async" width="726" height="117" class="wp-image-2614" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-679.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-679.png 726w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-679-300x48.png 300w" sizes="auto, (max-width: 726px) 100vw, 726px" /></p>
<p><strong>Fichier /etc/xinetd.d/mysqlchk (3 nœuds Percona/Mysql)</strong></p>
<pre><span style="color: #ff0000;"><em># description: mysqlchk</em></span><br /><span style="color: #ff0000;"><em>service mysqlchk</em></span><br /><span style="color: #ff0000;"><em>{</em></span><br /><span style="color: #ff0000;"><em>     disable = no</em></span><br /><span style="color: #ff0000;"><em>     flags = REUSE</em></span><br /><span style="color: #ff0000;"><em>     socket_type = stream</em></span><br /><span style="color: #ff0000;"><em>     port = 9200</em></span><br /><span style="color: #ff0000;"><em>     wait = no</em></span><br /><span style="color: #ff0000;"><em>    user = nobody</em></span><br /><span style="color: #ff0000;"><strong><em>    server = /usr/bin/Clustercheck</em></strong></span><br /><span style="color: #ff0000;"><em>    log_on_failure += USERID</em></span><br /><span style="color: #ff0000;"><em>    only_from = 0.0.0.0/0</em></span><br /><span style="color: #ff0000;"><em>    per_source = UNLIMITED</em></span><br /><span style="color: #ff0000;"><em>}</em></span></pre>
<pre>[root@node01-sqlw chris]# <span style="color: #ff0000;"><strong>chmod +x /etc/xinetd.d/mysqlchk</strong></span><br />[root@node01-sqlw chris]#<span style="color: #ff0000;"><strong> systemctl enable xinetd</strong></span><br />[root@node01-sqlw chris]# <span style="color: #ff0000;"><strong>systemctl restart xinetd</strong></span></pre>
<h4><span style="text-decoration: underline;">Côté Cluster HAW</span></h4>
<p><strong>Rules des Firewalld (3 nœuds haProxy)</strong></p>
<pre>[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>firewall-cmd --zone=public --permanent --add-port=9200/tcp</strong></span><br />[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>firewall-cmd --zone=public --permanent --add-port=3306/tcp</strong></span><br />[root@node01-haw haproxy]#<span style="color: #ff0000;"><strong> firewall-cmd --reload</strong></span></pre>
<p><strong>FrontEnd et backEnd Haproxy</strong></p>
<pre>[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>vi /etc/haproxy/haproxy.cfg</strong></span><br /><br /><span style="color: #ff0000;"><em>frontend Cluster_Mysql</em></span><br /><span style="color: #ff0000;"><em>      bind *:3306</em></span><br /><span style="color: #ff0000;"><em>      mode tcp</em></span><br /><span style="color: #ff0000;"><em>      use_backend Clustermysql</em></span><br /><span style="color: #ff0000;"><em>      description FrontEnd pour le Cluster Mysql</em></span><br /><br /><span style="color: #ff0000;"><em>listen Clustermysql</em></span><br /><span style="color: #ff0000;"><strong><em>     balance roundrobin</em></strong></span><br /><span style="color: #ff0000;"><em>     option httpchk</em></span><br /><span style="color: #ff0000;"><em>     mode tcp</em></span><br /><span style="color: #ff0000;"><em>     server node01-sqlw node01-sqlw:3306 check port 9200 inter 12000 rise 3 fall 3</em></span><br /><span style="color: #ff0000;"><em>     server node02-sqlw node02-sqlw:3306 check port 9200 inter 12000 rise 3 fall 3</em></span><br /><span style="color: #ff0000;"><em>     server node03-sqlw node03-sqlw:3306 check port 9200 inter 12000 rise 3 fall 3</em></span></pre>
<p><strong>Redémarrage haProxy (3 nœuds haProxy)</strong></p>
<pre>[root@node01-haw haproxy]#<span style="color: #ff0000;"><strong> systemctl restart haproxy</strong></span><br />[root@node02-haw haproxy]#<span style="color: #ff0000;"><strong> systemctl restart haproxy</strong></span><br />[root@node03-haw haproxy]# <span style="color: #ff0000;"><strong>systemctl restart haproxy</strong></span></pre>
<p><img loading="lazy" decoding="async" width="1898" height="569" class="wp-image-2615" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-680.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-680.png 1898w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-680-300x90.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-680-1024x307.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-680-768x230.png 768w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-680-1536x460.png 1536w" sizes="auto, (max-width: 1898px) 100vw, 1898px" /></p>
<p><strong>Installation du client MySQL (3 nœuds haProxy)</strong></p>
<pre>[root@node01-haw chris]# <span style="color: #ff0000;"><strong>yum install mysql</strong></span></pre>
<p><strong>Test connexion Cluster SQL via client Lambda (client host :centos7)</strong></p>
<pre>[root@Centos7 ~]# <span style="color: #ff0000;"><strong>yum install mysql</strong></span><br />[root@Centos7 ~]# <span style="color: #ff0000;"><strong>mysql -u ClusterCheck -p -h node-haw.house.cpb -P 3306 -e "select Host, User, Password from mysql.user"</strong></span></pre>
<p><img loading="lazy" decoding="async" width="1034" height="233" class="wp-image-2617" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-681.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-681.png 1034w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-681-300x68.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-681-1024x231.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-681-768x173.png 768w" sizes="auto, (max-width: 1034px) 100vw, 1034px" /><br />Donc le client centos7 se connecte à une machine node0x-sqlw du cluster à travers le roundrobin de Haproxy (node-haw)</p>
<p>Pour différencier les accès machines nous allons ajouter au DNS les hosts suivants</p>
<ul>
<li>Sqlw.house.cpb  &#8211; Accès Cluster SQL</li>
<li>WordPress.house.cpb – Site wordpress</li>
<li>Site1.house.cpb – Site test</li>
</ul>
<p><strong>Côté DNS</strong><br /><img loading="lazy" decoding="async" width="360" height="142" class="wp-image-2620" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-682.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-682.png 360w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-682-300x118.png 300w" sizes="auto, (max-width: 360px) 100vw, 360px" /><br /><strong>Côté client « centos7 »</strong><br /><img loading="lazy" decoding="async" width="788" height="361" class="wp-image-2622" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-683.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-683.png 788w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-683-300x137.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-683-768x352.png 768w" sizes="auto, (max-width: 788px) 100vw, 788px" /></p>
<h3>11°) Ajouter le LoadBalancing Web (FrontEnd et BAckEnd ) &#8211; (Couche OSI L7)</h3>
<pre>[root@node01-haw ~]# <span style="color: #ff0000;"><strong>vi /etc/haproxy/haproxy.cfg</strong></span><br /><br /><span style="color: #ff0000;"><em>frontend Cluster_web</em></span><br /><span style="color: #ff0000;"><em>     bind *:80</em></span><br /><span style="color: #ff0000;"><em>     mode http</em></span><br /><span style="color: #ff0000;"><em>     #bloc load Cluster site1 Web</em></span><br /><span style="color: #ff0000;"><em>     acl <strong>server_site1</strong> hdr_dom(host) -i <strong>site1.house.cpb</strong></em></span><br /><span style="color: #ff0000;"><em>     use_backend <strong>ClusterWEB</strong> if <strong>server_site1</strong></em></span><br /><span style="color: #ff0000;"><em>    description FrontEnd pour le Cluster WEB</em></span><br /><br /><span style="color: #ff0000;"><em>backend <strong>ClusterWEB</strong></em></span><br /><span style="color: #ff0000;"><em>    <strong> balance roundrobin</strong></em></span><br /><span style="color: #ff0000;"><em>     option httpchk GET /index.php</em></span><br /><span style="color: #ff0000;"><em>     server node01-webw node01-webw:80 check inter 3s fall 3 rise 2</em></span><br /><span style="color: #ff0000;"><em>     server node02-webw node02-webw:80 check inter 3s fall 3 rise 2</em></span><br /><span style="color: #ff0000;"><em>     server node03-webw node03-webw:80 check inter 3s fall 3 rise 2</em></span></pre>
<p><strong>Redémarrage haProxy (3 nœuds haProxy)</strong></p>
<pre>[root@node01-haw haproxy]#<span style="color: #ff0000;"><strong> systemctl restart haproxy</strong></span><br />[root@node02-haw haproxy]# <span style="color: #ff0000;"><strong>systemctl restart haproxy</strong></span><br />[root@node03-haw haproxy]# <span style="color: #ff0000;"><strong>systemctl restart haproxy</strong></span></pre>
<p><img loading="lazy" decoding="async" width="1404" height="480" class="wp-image-2623" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-684.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-684.png 1404w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-684-300x103.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-684-1024x350.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-684-768x263.png 768w" sizes="auto, (max-width: 1404px) 100vw, 1404px" /></p>
<p><strong>Rules Firewall (3 haProxy)</strong></p>
<pre>[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>firewall-cmd --zone=public --permanent --add-service=http</strong></span><br />[root@node01-haw haproxy]# <span style="color: #ff0000;"><strong>firewall-cmd --reload</strong></span></pre>
<h4><strong>Vérifions le RoundRobin via HaProxy</strong><br /><img loading="lazy" decoding="async" width="1067" height="580" class="wp-image-2625" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-685.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-685.png 1067w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-685-300x163.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-685-1024x557.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-685-768x417.png 768w" sizes="auto, (max-width: 1067px) 100vw, 1067px" /><br />On constate un roundrobin des accès sur les trois machines web à travers la machine Master node01-haw.</h4><p>Views: 32</p><p>L’article <a href="https://coffeebreak.en-images.info/modop-partie-5-installation-wordpress-en-ha-cluster-haproxy/">MODOP – PARTIE 5 – Installation WordPress en HA – Cluster HaProxy</a> est apparu en premier sur <a href="https://coffeebreak.en-images.info">CoffeeBreak Info</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://coffeebreak.en-images.info/modop-partie-5-installation-wordpress-en-ha-cluster-haproxy/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>MODOP &#8211; PARTIE 3 &#8211; Installation WordPress en HA – Cluster MySQL</title>
		<link>https://coffeebreak.en-images.info/modop-partie-3-installation-wordpress-en-ha-cluster-mysql/</link>
					<comments>https://coffeebreak.en-images.info/modop-partie-3-installation-wordpress-en-ha-cluster-mysql/#respond</comments>
		
		<dc:creator><![CDATA[chris]]></dc:creator>
		<pubDate>Sun, 27 Jun 2021 17:34:04 +0000</pubDate>
				<category><![CDATA[Infrastructure HA Web]]></category>
		<category><![CDATA[RedHat/Centos Linux]]></category>
		<category><![CDATA[Système]]></category>
		<category><![CDATA[AlmaLinux]]></category>
		<category><![CDATA[Cluster MySQL]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mysql]]></category>
		<guid isPermaLink="false">https://coffeebreak.en-images.info/?p=2359</guid>

					<description><![CDATA[<p>Mise en place d'un cluster Percona MySQL qui sera en charger de stocker les données site. les trois machines sont en mode MASTER-MASTER-MASTER par réplication de données.</p>
<p>L’article <a href="https://coffeebreak.en-images.info/modop-partie-3-installation-wordpress-en-ha-cluster-mysql/">MODOP &#8211; PARTIE 3 &#8211; Installation WordPress en HA – Cluster MySQL</a> est apparu en premier sur <a href="https://coffeebreak.en-images.info">CoffeeBreak Info</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3><strong>3 machines Mysql Percona (AlmaLinux 8)</strong></h3>
<ul>
<li>node01-sqlw 172.16.186.27</li>
<li>node02-sqlw 172.16.186.28</li>
<li>node03-sqlw 172.16.186.29</li>
</ul>
<p>Le Pool « Cluster_SQLW » va être composé de trois machines virtuelles</p>
<ul>
<li>Node01-sqlw -&gt; 172.16.186.27
<ul>
<li>2CPU, 2G RAM, 20Go Disk</li>
</ul>
</li>
<li>Node02-sqlw -&gt; 172.16.186.28
<ul>
<li>2CPU, 2G RAM, 20Go Disk</li>
</ul>
</li>
<li>Node03-sqlw -&gt; 172.16.186.29
<ul>
<li>2CPU, 2G RAM, 20Go Disk</li>
</ul>
</li>
</ul>
<h4><strong>Spécification des machines</strong></h4>
<p><img loading="lazy" decoding="async" width="909" height="296" class="wp-image-2365" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-592.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-592.png 909w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-592-300x98.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-592-768x250.png 768w" sizes="auto, (max-width: 909px) 100vw, 909px" /></p>
<p><img loading="lazy" decoding="async" width="1096" height="197" class="wp-image-2368" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-593.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-593.png 1096w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-593-300x54.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-593-1024x184.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-593-768x138.png 768w" sizes="auto, (max-width: 1096px) 100vw, 1096px" /></p>
<h3>1°) Désactivation du SElinux (3 nœuds sqlw)</h3>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">vi /etc/selinux/config</span></strong>
<span style="color: #ff0000;"><em>SELINUX=</em><strong><em>disabled</em></strong></span></pre>
<p><img loading="lazy" decoding="async" width="791" height="182" class="wp-image-2370" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-594.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-594.png 791w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-594-300x69.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-594-768x177.png 768w" sizes="auto, (max-width: 791px) 100vw, 791px" /></p>
<p>Redémarrer la machine.</p>
<pre>[root@node01-sqlw ~]#<strong><span style="color: #ff0000;"> reboot</span></strong></pre>
<h3><strong>2°) Désactiver l’IPV6 </strong>(3 nœuds sqlw)</h3>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">vi /etc/sysctl.conf</span></strong>
<span style="color: #ff0000;"><em>net.ipv6.conf.all.disable_ipv6 = 1</em></span>
<span style="color: #ff0000;"><em>net.ipv6.conf.all.autoconf = 0</em></span>
<span style="color: #ff0000;"><em>net.ipv6.conf.default.disable_ipv6 = 1</em></span>
<span style="color: #ff0000;"><em>net.ipv6.conf.default.autoconf = 0</em></span></pre>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">sysctl -p</span></strong></pre>
<h3>3°) Installation de paquets utiles(3 nœuds)</h3>
<pre>[root@node01-sqlw ~]#<strong><span style="color: #ff0000;"> yum update &amp;&amp; yum upgrade</span></strong>
[root@node01-sqlw ~]#] <span style="color: #ff0000;"><strong>yum -y install qemu-guest-agent</strong></span>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">yum -y install htop nmap net-tools</span></strong>
[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>yum -y install epel-release socat</strong></span></pre>
<p><strong>Suppression des lib inutiles.</strong></p>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">yum -y remove mariadb-libs</span></strong></pre>
<h3>4°) Installation Percona(3 nœuds)</h3>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">yum install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm</span></strong>
[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>yum makecache &amp;&amp; yum update</strong></span>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">yum install -y Percona-XtraDB-Cluster-client-57* Percona-XtraDB-Cluster-server-57*</span></strong>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">yum install -y Percona-XtraDB-Cluster-shared-57-debuginfo* Percona-XtraDB-Cluster-garbd-57-debuginfo*</span></strong>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">yum install -y mariadb-server-galera.x86_64</span></strong>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">yum install -y percona-toolkit</span></strong>
[root@node01-sqlw ~]#<strong><span style="color: #ff0000;"> yum install -y percona-xtrabackup-24</span></strong>

[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">systemctl enable --now mariadb.service</span></strong></pre>
<h3>5°) Ajout des Rules Firewall(3 nœuds)</h3>
<pre>[root@node01-sqlw ~]#<strong><span style="color: #ff0000;">firewall-cmd --permanent --add-port={3306,4444,4567,4568}/tcp</span></strong>
[root@node01-sqlw ~]#<strong><span style="color: #ff0000;">firewall-cmd --zone=public --add-port=4567/udp --permanent</span></strong>
[root@node01-sqlw ~]#<strong><span style="color: #ff0000;">firewall-cmd --reload</span></strong></pre>
<h3>6°)Installantion NTP(3 nœuds)</h3>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">dnf install chrony</span></strong>
[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>systemctl start chronyd</strong></span>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">systemctl enable chronyd</span></strong>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">systemctl status chronyd</span></strong>

[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">firewall-cmd --permanent --add-service=ntp</span></strong>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">firewall-cmd --reload</span></strong></pre>
<h3>7°) Configurer le nœud node01-sqlw</h3>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">systemctl stop mariadb</span></strong></pre>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">vi /etc/my.cnf</span></strong>
<span style="color: #ff0000;"><em>[mysqld]</em></span>
<span style="color: #ff0000;"><em>wsrep_cluster_address = gcomm://</em></span>
<span style="color: #ff0000;"><em>wsrep_provider = /usr/lib64/galera3/libgalera_smm.so</em></span>
<span style="color: #ff0000;"><em>wsrep_slave_threads = 8</em></span>
<span style="color: #ff0000;"><em>wsrep_cluster_name = SQL-Cluster</em></span>
<span style="color: #ff0000;"><em>wsrep_node_name = </em><strong><em>node01-sqlw</em></strong></span>
<span style="color: #ff0000;"><em>wsrep_node_address = </em><strong><em>node01-sqlw</em></strong></span>
<span style="color: #ff0000;"><em>wsrep_sst_method = xtrabackup-v2</em></span>
<span style="color: #ff0000;"><em>wsrep_sst_auth = </em><strong><em>mysql-cluster:mysql@2021</em></strong></span></pre>
<p><strong>Création du Cluster </strong></p>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">rm -rf /var/lib/mysql/*</span></strong>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">galera_new_cluster</span></strong>
[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">systemctl start mariadb &amp;&amp; systemctl enable mariadb</span></strong></pre>
<p><strong>Connexion à la base de données Percona Mariadb</strong></p>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">mysql -u root –p</span></strong>

MariaDB [(none)]&gt;<strong><span style="color: #ff0000;"> SHOW STATUS LIKE 'wsrep_local_state_comment';</span></strong></pre>
<p><img loading="lazy" decoding="async" width="686" height="180" class="wp-image-2371" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-595.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-595.png 686w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-595-300x79.png 300w" sizes="auto, (max-width: 686px) 100vw, 686px" /></p>
<pre>MariaDB [(none)]&gt; <strong><span style="color: #ff0000;">show global status like 'wsrep_cluster_size';</span></strong></pre>
<p><img loading="lazy" decoding="async" width="668" height="120" class="wp-image-2373" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-596.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-596.png 668w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-596-300x54.png 300w" sizes="auto, (max-width: 668px) 100vw, 668px" /></p>
<pre>MariaDB [(none)]&gt; <strong><span style="color: #ff0000;">show global status like 'wsrep%';</span></strong></pre>
<p><img loading="lazy" decoding="async" width="582" height="663" class="wp-image-2376" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-597.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-597.png 582w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-597-263x300.png 263w" sizes="auto, (max-width: 582px) 100vw, 582px" /></p>
<h3>7°) Configurer le root de Mariadb</h3>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">mysql_secure_installation</span></strong>
Enter current password for root (enter for none): <strong><span style="color: #ff0000;">« ENTER »</span></strong>
Set root password? [Y/n] <span style="color: #ff0000;"><strong>Y</strong></span>
New password: <strong><span style="color: #ff0000;">« Votre password »</span></strong>
Re-enter new password: <strong><span style="color: #ff0000;">« retaper password »</span></strong>
Remove anonymous users? [Y/n] <strong><span style="color: #ff0000;">Y</span></strong>
Disallow root login remotely? [Y/n] <strong><span style="color: #ff0000;">Y</span></strong>
Remove test database and access to it? [Y/n] <strong><span style="color: #ff0000;">Y</span></strong>
Reload privilege tables now? [Y/n] <strong><span style="color: #ff0000;">Y</span></strong></pre>
<h3>8°) Création des utilisateurs/Machines « mysql-cluster »</h3>
<pre>[root@node01-sqlw ~]#<strong><span style="color: #ff0000;">mysql -u root -p</span></strong>
mysql&gt; <strong><span style="color: #ff0000;">CREATE USER 'mysql-cluster'@'node01-sqlw' IDENTIFIED BY 'mysql@2021';</span></strong>
mysql&gt; <strong><span style="color: #ff0000;">CREATE USER 'mysql-cluster'@'node02-sqlw' IDENTIFIED BY 'mysql@2021';</span></strong>
mysql&gt; <strong><span style="color: #ff0000;">CREATE USER 'mysql-cluster'@'node03-sqlw' IDENTIFIED BY 'mysql@2021';</span></strong>

mysql&gt; <strong><span style="color: #ff0000;">GRANT ALL ON *.* TO 'mysql-cluster'@'node01-sqlw';</span></strong>
mysql&gt; <strong><span style="color: #ff0000;">GRANT ALL ON *.* TO 'mysql-cluster'@'node02-sqlw';</span></strong>
mysql&gt; <strong><span style="color: #ff0000;">GRANT ALL ON *.* TO 'mysql-cluster'@'node03-sqlw';</span></strong>

mysql&gt;<strong><span style="color: #ff0000;"> FLUSH PRIVILEGES;</span></strong></pre>
<p><img loading="lazy" decoding="async" width="1069" height="358" class="wp-image-2379" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-598.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-598.png 1069w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-598-300x100.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-598-1024x343.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-598-768x257.png 768w" sizes="auto, (max-width: 1069px) 100vw, 1069px" /></p>
<pre>MariaDB [(none)]&gt;<strong><span style="color: #ff0000;"> select * from mysql.user;</span></strong></pre>
<p><img loading="lazy" decoding="async" width="1261" height="296" class="wp-image-2381" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-599.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-599.png 1261w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-599-300x70.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-599-1024x240.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-599-768x180.png 768w" sizes="auto, (max-width: 1261px) 100vw, 1261px" /></p>
<p>Les utilisateurs autoriser à échanger entre les machines sont créer.</p>
<h3>9°) Configurer le nœud node02-sqlw</h3>
<pre>[root@node02-sqlw ~]#<strong><span style="color: #ff0000;"> systemctl stop mariadb</span></strong></pre>
<pre>
[root@node02-sqlw ~]# <strong><span style="color: #ff0000;">vi /etc/my.cnf</span></strong>
<span style="color: #ff0000;"><em>
[mysqld]</em></span>
<span style="color: #ff0000;"><em><strong>wsrep_cluster_address = gcomm://node01-sqlw,node03-sqlw</strong></em></span>
<span style="color: #ff0000;"><em>wsrep_provider = /usr/lib64/galera3/libgalera_smm.so</em></span>
<span style="color: #ff0000;"><em>wsrep_slave_threads = 8</em></span>
<span style="color: #ff0000;"><em>wsrep_cluster_name = SQL-Cluster</em></span>
<span style="color: #ff0000;"><em>wsrep_node_name = <strong>node02-sqlw</strong></em></span>
<span style="color: #ff0000;"><em>wsrep_node_address = <strong>node02-sqlw/strong&gt;
wsrep_sst_method = xtrabackup-v2
wsrep_sst_auth = <strong>mysql-cluster:mysql@2021</strong></strong></em></span></pre>
<pre>[root@node02-sqlw ~]#<span style="color: #ff0000;"><strong> systemctl start mariadb &amp;&amp; systemctl enable mariadb</strong></span></pre>
<p><strong>Vérifier sur node01-sqlw l’ajout du node02.</strong></p>
<pre>MariaDB [(none)]&gt; <strong><span style="color: #ff0000;">show global status like 'wsrep_cluster_size';</span></strong></pre>
<p><img loading="lazy" decoding="async" width="527" height="109" class="wp-image-2384" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-600.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-600.png 527w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-600-300x62.png 300w" sizes="auto, (max-width: 527px) 100vw, 527px" /></p>
<p><strong>Vérifier que le node02 est bien en mode synchronisé.</strong></p>
<pre>[root@node02-sqlw ~]#<strong><span style="color: #ff0000;"> mysql -u root –p</span></strong></pre>
<p>Ici la mot root est celui répliqué par la synchronisation de node01 =&gt; node02.</p>
<pre>MariaDB [(none)]&gt; <strong><span style="color: #ff0000;">SHOW STATUS LIKE 'wsrep_local_state_comment';</span></strong></pre>
<p><img loading="lazy" decoding="async" width="723" height="182" class="wp-image-2386" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-601.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-601.png 723w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-601-300x76.png 300w" sizes="auto, (max-width: 723px) 100vw, 723px" /></p>
<pre>MariaDB [(none)]&gt;<strong><span style="color: #ff0000;"> select * from mysql.user;</span></strong></pre>
<p><img loading="lazy" decoding="async" width="1121" height="298" class="wp-image-2387" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-602.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-602.png 1121w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-602-300x80.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-602-1024x272.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-602-768x204.png 768w" sizes="auto, (max-width: 1121px) 100vw, 1121px" /></p>
<p>Le nœud node02-sqlw est bien synchronisé au Cluster et à bien récupérer par la synchronisation les users de la table mysql.user.</p>
<h3>10°) Configurer le nœud node03-sqlw</h3>
<pre>[root@node03-sqlw ~]#<strong><span style="color: #ff0000;"> systemctl stop mariadb</span></strong></pre>
<pre>[root@node03-sqlw ~]#<strong><span style="color: #ff0000;"> vi /etc/my.cnf</span></strong>
<em><span style="color: #ff0000;">
[mysqld]</span></em>
<em><span style="color: #ff0000;"><strong>wsrep_cluster_address = gcomm://node01-sqlw,node02-sqlw</strong></span></em>
<em><span style="color: #ff0000;">wsrep_provider = /usr/lib64/galera3/libgalera_smm.so</span></em>
<em><span style="color: #ff0000;">wsrep_slave_threads = 8</span></em>
<em><span style="color: #ff0000;">wsrep_cluster_name = SQL-Cluster</span></em>
<em><span style="color: #ff0000;">wsrep_node_name = <strong>node03-sqlw</strong></span></em>
<em><span style="color: #ff0000;">wsrep_node_address = <strong>node03-sqlw</strong></span></em>
<em><span style="color: #ff0000;">wsrep_sst_method = xtrabackup-v2</span></em>
<em><span style="color: #ff0000;">wsrep_sst_auth = <strong>mysql-cluster:mysql@2021</strong></span></em></pre>
<pre><span style="color: #000000;">[root@node03-sqlw~ ~]#<span style="color: #ff0000;"><strong>systemctl start maria</strong></span></span><span style="color: #ff0000;"><strong>db &amp;&amp; systemctl enable mariadb</strong></span></pre>
<p><strong>Vérifier sur node01-sqlw l’ajout du node03.</strong></p>
<pre>MariaDB [(none)]&gt;<strong><span style="color: #ff0000;"> show global status like 'wsrep_cluster_size';</span></strong></pre>
<p><img loading="lazy" decoding="async" width="561" height="137" class="wp-image-2389" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-603.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-603.png 561w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-603-300x73.png 300w" sizes="auto, (max-width: 561px) 100vw, 561px" /></p>
<p><strong>Vérifier que le node03 est bien en mode synchronisé.</strong></p>
<pre>[root@node03-sqlw ~]# <strong><span style="color: #ff0000;">mysql -u root -p</span></strong></pre>
<p>Pareil pour ne node2 , le mot de passe devrait être celui défini sur le node01 et répliqué par la synchronisation des nœuds.</p>
<pre>MariaDB [(none)]&gt; <span style="color: #ff0000;"><strong>SHOW STATUS LIKE 'wsrep_local_state_comment';</strong></span></pre>
<p><img loading="lazy" decoding="async" width="677" height="151" class="wp-image-2392" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-604.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-604.png 677w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-604-300x67.png 300w" sizes="auto, (max-width: 677px) 100vw, 677px" /></p>
<pre>MariaDB [(none)]&gt;<strong><span style="color: #ff0000;"> select * from mysql.user;</span></strong></pre>
<p><img loading="lazy" decoding="async" width="1048" height="289" class="wp-image-2394" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-605.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-605.png 1048w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-605-300x83.png 300w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-605-1024x282.png 1024w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-605-768x212.png 768w" sizes="auto, (max-width: 1048px) 100vw, 1048px" /></p>
<p>A ce stade les trois machines Mysql/Percona sont bien synchronisées entre elles.</p>
<h3>11°) Reconfigurer node01-sqlw</h3>
<p>Il faut à présent reprendre la configuration de la machine node01-sqlw pour qu’elle synchronise avec les machines node02 et node03. En</p>
<pre>[root@node01-sqlw ~]# <span style="color: #ff0000;"><strong>systemctl stop mariadb</strong></span></pre>
<pre>
[root@node01-sqlw ~]#<strong><span style="color: #ff0000;"> vi /etc/my.cnf</span></strong>
<span style="color: #ff0000;"><em>
[mysqld]</em></span>
<span style="color: #ff0000;"><strong><em>#wsrep_cluster_address = gcomm://</em></strong></span>
<span style="color: #ff0000;"><strong><em>wsrep_cluster_address = gcomm://node02-sqlw,node03-sqlw</em></strong></span>
<span style="color: #ff0000;"><em>wsrep_provider = /usr/lib64/galera3/libgalera_smm.so</em></span>
<span style="color: #ff0000;"><em>wsrep_slave_threads = 8</em></span>
<span style="color: #ff0000;"><em>wsrep_cluster_name = SQL-Cluster</em></span>
<span style="color: #ff0000;"><em>wsrep_node_name = </em><strong><em>node01-sqlw</em></strong></span>
<span style="color: #ff0000;"><em>wsrep_node_address = </em><strong><em>node01-sqlw</em></strong></span>
<span style="color: #ff0000;"><em>wsrep_sst_method = xtrabackup-v2</em></span>
<span style="color: #ff0000;"><em>wsrep_sst_auth = </em><strong><em>mysql-cluster:mysql@2021</em></strong></span></pre>
<pre>[root@node01-sqlw ~]# <strong><span style="color: #ff0000;">systemctl start mariadb</span></strong></pre>
<h3><strong>12°)  Création de Base sur Node01 et réplication automatique sur les Node02 et Node03</strong></h3>
<pre>[root@<strong>node01-sqlw</strong> cp219538]# <span style="color: #ff0000;"><strong>mysql -u root –p</strong></span>
MariaDB [(none)]&gt; <strong><span style="color: #ff0000;">CREATE DATABASE Cluster_Test;</span></strong>
Query OK, 1 row affected (0.008 sec)</pre>
<pre>MariaDB [(none)]&gt;<strong><span style="color: #ff0000;"> SHOW DATABASES;</span></strong></pre>
<p><img loading="lazy" decoding="async" width="533" height="194" class="wp-image-2395" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-606.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-606.png 533w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-606-300x109.png 300w" sizes="auto, (max-width: 533px) 100vw, 533px" /></p>
<p><strong>Côté node02-sqlw et node03-sqlw</strong></p>
<pre>[root@node02-sqlw ~]# <strong><span style="color: #ff0000;">mysql -u root -p -e "SHOW DATABASES;"</span></strong></pre>
<p><img loading="lazy" decoding="async" width="578" height="347" class="wp-image-2397" src="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-607.png" srcset="https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-607.png 578w, https://coffeebreak.en-images.info/wp-content/uploads/2021/06/word-image-607-300x180.png 300w" sizes="auto, (max-width: 578px) 100vw, 578px" /></p>
<p>Views: 9</p>
<p>L’article <a href="https://coffeebreak.en-images.info/modop-partie-3-installation-wordpress-en-ha-cluster-mysql/">MODOP &#8211; PARTIE 3 &#8211; Installation WordPress en HA – Cluster MySQL</a> est apparu en premier sur <a href="https://coffeebreak.en-images.info">CoffeeBreak Info</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://coffeebreak.en-images.info/modop-partie-3-installation-wordpress-en-ha-cluster-mysql/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
