Nous allons mettre en place un VM avec OpsCenter pour gérer et superviser un cluster Cassandra (Cf: tutorial sur l'installation d'un cluster Cassandra).
1 - Installation de la VM OpsCenter
1.1 - Configuration de la VM
Paramètres VM :
- - 2 CPU
- - 2 Go RAM
- - 20 Go DD
Config Réseau :
- - host : ops-center-srv
- - IP : 192.168.0.100
- - masque : 255.255.255.0
- - passerelle : 192.168.0.254
- - dns : 192.168.0.1
1.2 - Installation de Java 8
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886
apt-get update
apt-get install oracle-java8-installer
1.3 - Installation d'OpsCenter
Ajout du repository :
nano /etc/apt/sources.list.d/datastax.community.list
Ajouter :
deb http://debian.datastax.com/community stable main
Ajout de la clé du repository :
curl -L https://debian.datastax.com/debian/repo_key | sudo apt-key add -
Installation :
apt-get update apt-get install opscenter
Démarrage :
service opscenterd start
On se connectera plus tard l'interface de gestion une fois les agents déployés.
2 - Configuration des noeuds du cluster
On va réaliser les opérations suivantes sur chaque noeud du cluster.
2.1 - Activation de l'authentification JMX :
nano /etc/cassandra/cassandra-env.sh
Modifier :
LOCAL_JMX=no
Copier le fichier jmxremote.password.template dans le dossier de config de Cassandra :
cp /usr/lib/jvm/java-8-oracle/jre/lib/management/jmxremote.password.template /etc/cassandra/jmxremote.password
Affectation des droits et permissions :
chown cassandra:cassandra /etc/cassandra/jmxremote.password chmod 400 /etc/cassandra/jmxremote.password
Edition du fichier password :
nano /etc/cassandra/jmxremote.password
Ajouter en fin de fichier le nom d'utilisateur et mot de passe et décommenter monitorRole et controlRole :
monitorRole QED controlRole R&D cassandra "votre mot de passe"
Edition du fichier jmxremote.access :
nano /usr/lib/jvm/java-8-oracle/jre/lib/management/jmxremote.access
Remplacer les directives existantes et ajouter les nouvelles :
monitorRole readonly
cassandra readwrite
controlRole readwrite \
create javax.management.monitor.*,javax.management.timer.* \
unregister
Décommenter la ligne suivante du fichier cassandra-env.sh:
nano /etc/cassandra/cassandra-env.sh
# add this if you're having trouble connecting:
JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname="
Remplacer <public name>, par l'ip du noeud.
Redémarrage de Cassandra :
service cassandra restart
Vérifier que le cluster répond :
nodetool -h 192.168.0.251 -u cassandra -pw qqq status
2.2 - Installation du Datastax Agent
Ajout du repository :
nano /etc/apt/sources.list.d/datastax.community.list
Ajouter :
deb http://debian.datastax.com/community stable main
Ajout de la clé du repository :
curl -L https://debian.datastax.com/debian/repo_key | sudo apt-key add -
Installation du packet :
apt-get update
apt-get install datastax-agent
2.3 - Configuration et démarrage
Editer le fichier /var/lib/datastax-agent/conf/address.yaml :
nano /var/lib/datastax-agent/conf/address.yaml
Ajouter :
stomp_interface: 192.168.0.100 thrift_user: cassandra thrift_pass: "votre mot de passe"
Edition du fichier cassandra.yaml :
nano /etc/cassandra/cassandra.yaml
Modifier la directive suivante :
start_rpc: true
Ajout de l'utilisateur cassandra au groupe sudo :
apt-get install sudo
passwd cassandra "votre mot de passe"
adduser cassandra sudo
Démarrage :
L'ordre de démarrage des machines est important, sinon le serveur de supervision risque de ne pas pouvoir contacter correctement les machines du cluster.
1 - Suppression des anciens keyspace :
rm -rf /var/lib/cassandra/*
- 2 - Démarrage de Cassandra et du Datastax agent sur le serveur seed du cluster.
service cassandra start service datastax-agent start
3 - Ajout du cluster dans OpsCenter.
4 - Démarrage de cassandra et du datastax agent sur les autres noeuds du cluster.
5 - Création du keyspace demo (exemple pour l'installation du cluster, cf tutorial installation d'un cluster Cassandra).
3 - Interface d'administation
Connectez-vous via votre navigateur à l'adresse : http://ops-center-srv.fresh.local:8888.
Ajouter un nouveau cluster en ajoutant les ip des noeuds Cassandra.
On a maintenant accès à la supervision et gestion du clusterRessources :
http://www.malinga.me/building-a-cassandra-cluster-with-datastax-opscenter-centos/ http://serverfault.com/questions/714618/opscenter-can-not-connect-to-the-nodes