Le diagramme suivant affiche une utilisation standard de l'appliance MYSQLR64 dans une application Web s'exécutant dans plusieurs installations. Avec cette configuration, vous pouvez avoir plusieurs applications identiques s'exécutant sur différentes installations dont la base de données est répliquée sur toutes les applications dans une configuration maître-maître. Cette configuration est utile dans deux cas :
Application maître

Application esclave

Appliances en cours d'utilisation :
La requête client arrive sur la passerelle utilisateur. Cette dernière envoie les requêtes à l'équilibreur de charge web_lb, qui les transmet à un des serveurs Web web1 et web2. Les serveurs Web accèdent à la base de données maître. L'appliance maître se connecte à l'application (esclave) distante. La seule différence étant le server_id de l'esclave et la configuration réseau) pour répliquer la base de données. L'application distante se connecte à l'appliance maître via la passerelle vpn qui est configurée pour n'autoriser la connexion que de la passerelle vpn de l'application distante. Les appliances maître et esclave des deux applications s'exécutent dans une configuration maître-maître afin que leurs données soient toujours identiques.
Exemple de configuration de propriétés (les propriétés qui ne figurent pas dans les tableaux ci-dessous doivent être définies sur leurs valeurs par défaut) :
L'accès Web au maître et à l'esclave est disponible via la passerelle admin sur le port 8080.
Maître
|
Nom de propriété |
Valeur |
Remarques |
|
auto_create |
1 |
Crée la base de données si les volumes sont vides. |
|
error_log_filename |
master-db.error |
Nom de fichier journal d'erreurs qui doit être stocké sur le volume de données des journaux. |
|
error_log_level |
error |
Niveau de journalisation des erreurs |
|
server_id |
1 |
Serveur maître (la valeur ne doit pas forcément être 1, elle doit cependant être différente de celle de server_id sur l'esclave). |
|
rpl_mode |
Maître |
Ecrit des journaux binaires pour effectuer la réplication. |
VPN maître
|
Nom de propriété |
Valeur |
Remarques |
|
mode |
serveur |
Fonctionne en tant que serveur. |
|
tunnel |
Certificats |
utilisation des certificats SSL. |
|
tcp_ports |
3306,22 |
Autorise les ports nécessaires à MYSQLR64. |
|
ip_addr |
master_vpn_ip |
Adresse IP du VPN dans l'application maître. |
|
remote_host |
slave_vpn_ip |
Adresse IP du VPN dans l'application esclave. |
Esclave
|
Nom de propriété |
Valeur |
Remarques |
|
auto_create |
1 |
Crée la base de données si les volumes sont vides. |
|
error_log_filename |
slave-db.error |
Nom de fichier journal d'erreurs qui doit être stocké sur le volume de données des journaux. |
|
error_log_level |
error |
Niveau de journalisation des erreurs |
|
server_id |
2 |
Serveur esclave (la valeur ne doit pas forcément être 2, elle doit cependant être différente de celle de server_id sur le maître). |
|
rpl_mode |
Esclave |
Se connecte au maître. |
VPN esclave
|
Nom de propriété |
Valeur |
Remarques |
|
mode |
client |
Fonctionne en tant que client. |
|
tunnel |
Certificats |
Utilisation des certificats SSL. |
|
auth_path |
"client1" |
Chemin d'accès au fichier de certificat SSL. |
|
ip_addr |
slave_vpn_ip |
Adresse IP du VPN dans l'application esclave. |
|
remote_host |
master_vpn_ip |
Adresse IP du VPN dans l'application maître. |
L'application distante est une copie exacte. La seule différence est la configuration réseau de l'utilisateur, de l'administrateur et des appliances VPN. Les connexions entre l'appliance VPN et le maître=/=esclave, et le server_id de l'appliance maître=/=esclave (doit être unique).
Pour effectuer une migration de MYSQLR vers MYSQLR64 (et vice versa), vous ne devez pas uniquement utiliser les volumes de l'appliance 32 bits sur l'appliance 64 bits (ou inversement) car les données seront alors corrompues. Pour ce faire, nous vous recommandons de vider la base de données sur l'ancienne appliance, en transférant le fichier vidé vers la nouvelle appliance, puis en important la base de données dans la nouvelle appliance.
Vous pouvez utiliser la même procédure pour migrer une base de données à partir d'une appliance de base de données plus ancienne (MYSQL, MYSQL5, MYSQL64) ou une base de données MYSQL ne s'exécutant pas sur une appliance CA AppLogic.
Pour migrer la base de données :
Mise en garde :
Important : Lors de la création d'utilisateurs pour la base de données, vérifiez que tous les utilisateurs sont créés sans restriction sur l'hôte à partir duquel ils se connectent. Par exemple :
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%'
-> IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
MYSQLR64 utilise les packages Open Source tiers suivants en plus des packages Open Source tiers utilisés par sa classe de base LUX64.
|
Logiciel |
Version |
Modifié |
Licence |
Commentaires |
|
aspell |
0.60.3-7.1 |
Non |
LGPLv2.1 |
N/D |
|
aspell-en |
6.0-2.1 |
Non |
LGPLv2.1 |
N/D |
|
curl |
7.15.5-2 |
Non |
MIT |
N/D |
|
device-mapper-event |
1.02.32-1 |
Non |
GPLv2 |
N/D |
|
freetype |
1.02.32-1 |
Non |
FTL |
N/D |
|
gmp |
4.1.4-10.el5 |
Non |
LGPLV2.1 |
N/D |
|
libidn |
0.6.5-1.1 |
Non |
LGPLv2.1 |
N/D |
|
libjpeg |
6b-37 |
Non |
Distribuable |
N/D |
|
libpng |
1.2.10-7.0.2 |
Non |
zlib/libpng |
N/D |
|
lvm2 |
2.6.26-2.1.2.8 |
Non |
GPLv2.0 |
N/D |
|
MySQL |
5.0.77-3.el5 |
Non |
GPL |
N/D |
|
mysql-server |
5.0.77-3.el5 |
Non |
GPLv2 |
N/D |
|
perl-DBD-MySQL |
3.0007-2.el5 |
Non |
Artistic |
N/D |
|
perl-DBI |
1.52-2.el5 |
Non |
Artistic |
N/D |
|
php-cli |
5.1.6-23.el5 |
Non |
PHPv3.01 |
N/D |
|
php-common |
5.1.6-23.el5 |
Non |
PHPv3.01 |
N/D |
|
php-gd |
5.1.6-23.el5 |
Non |
PHPv3.01 |
N/D |
|
php-mbstring |
5.1.6-23.el5 |
Non |
PHPv3.01 |
N/D |
|
php-mysql |
5.1.6-23.el5 |
Non |
PHPv3.01 |
N/D |
|
php-pdo |
5.1.6-23.el5 |
Non |
PHPv3.01 |
N/D |
|
rsync |
2.6.8-3.1 |
Non |
GPLv2 |
N/D |
|
samba-client |
3.0.28-1.el5_2.1 |
Non |
GPLv2 |
N/D |
|
samba-common |
3.0.28-1.el5_2.1 |
Non |
GPLv2 |
N/D |
|
sudo |
1.6.8p12-10 |
Non |
ISC |
N/D |
|
lighttpd |
1.4.18-1.el5.rf |
Non |
BSD |
N/D |
|
perl-IPC-Run |
0.84-1.el5.rf |
Non |
Artistic |
N/D |
|
perl-Time-Duration |
1.06-1.el5.rf |
Non |
Artistic |
N/D |
|
phpMyAdmin |
2.11.10-1 |
Non |
GPLv2 |
N/D |
L'appliance MYSQLR se fige au redémarrage
A partir de MYSQLR 1.6.2, vous pouvez définir/modifier un mot de passe pour le compte root de base de données. Toutefois, l'appliance MSYQLR dispose de quelques comptes root avec des noms d'hôte différents. Lorsque vous définissez/modifier un mot de passe, utilisez toujours le compte root@%. Le compte root@% est le compte auprès duquel s'authentifient les appliances connectées au terminal in de MYSQLR. Les autres comptes root ne sont utilisés que par des utilisateurs locaux. Un mot de passe ne doit jamais être défini pour ces derniers, sinon l'appliance MYSQLR ne parvient pas à démarrer.
Remarque : Si vous ne définissez pas de mot de passe pour le compte root@localhost, la sécurité n'est pas compromise car ce compte peut uniquement être utilisé par des utilisateurs locaux sur l'appliance et quiconque qui a accès à l'appliance peut modifier le mot de passe.
Récupérer une appliance MYSQLR qui ne parvient plus à démarrer à la suite de la modification du mot de passe root de la base de données
Pour récupérer une appliance qui ne parvient plus à démarrer parce que le mot de passe root de la base de données a été modifié, procédez comme suit :
comp start main.MYSQLR --debug
app start --debug
Vous devriez pouvoir vous connecter à l'appliance quelques secondes après l'avoir démarrée. Il n'est pas nécessaire d'attendre que le délai d'expiration de l'appliance soit atteint.
mysql -p -e "update mysql.user set Password='' where User='root'"
mysqladmin -p flush-privileges
mysql -e 'update mysql.user set password=PASSWORD("NEWPASSWORD") where User="root" and Host="%"'
mysqladmin flush-privileges
| Copyright © 2012 CA. Tous droits réservés. |
|