Comment installer Apache Cassandra sur Rocky Linux 9/8

Apache Cassandra est une base de données distribuée hautement évolutive et hautes performances, conçue pour gérer de grandes quantités de données sur de nombreux serveurs standard, offrant ainsi une haute disponibilité sans point de défaillance unique. Il est réputé pour sa prise en charge robuste des clusters répartis sur plusieurs centres de données, avec une réplication asynchrone sans maître permettant une faible latence et une simplicité opérationnelle. Cassandra est idéal pour les applications nécessitant un débit d'écriture élevé, une tolérance aux pannes et une évolutivité linéaire.

Le guide suivant démontrera les étapes pour installer Apache Cassandra sur Rocky Linux 9 ou 8 à l'aide de commandes de ligne de commande. Ce processus implique la mise en place du référentiel approprié et la configuration de votre système pour garantir des performances et une fiabilité optimales pour votre environnement de base de données distribuée.

Mettre à jour le système Rocky Linux avant l'installation d'Apache Cassandra

Tout d'abord, avant d'installer Apache Cassandra, c'est une bonne idée de s'assurer que tous les packages système sont à jour pour éviter tout problème potentiel lors de l'installation de la base de données NoSQL.

Dans votre terminal, exécutez la commande suivante et mettez à niveau tous les packages en attente.

sudo dnf upgrade --refresh

Importer le référentiel Apache Cassandra

La première étape consiste à importer le référentiel pour Apache Cassandra. Heureusement, vous pouvez y parvenir avec une seule commande. Le didacticiel montrera comment importer les branches 5.0, 4.0 ou 4.1. Étant donné que la branche 3.xx touche à sa fin, le didacticiel n'inclura pas d'instructions pour les ajouter.

4.0 Importation RPM Apache Cassandra

sudo tee /etc/yum.repos.d/cassandra-4.0.repo<<EOF
[cassandra]
name=Apache Cassandra 4.0
baseurl=https://redhat.cassandra.apache.org/41x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
EOF

4.1 Importation RPM Apache Cassandra

sudo tee /etc/yum.repos.d/cassandra-4.1.repo<<EOF
[cassandra]
name=Apache Cassandra 4.1
baseurl=https://redhat.cassandra.apache.org/41x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
EOF

5.0 Importation RPM Apache Cassandra

sudo tee /etc/yum.repos.d/cassandra-5.0.alpha.repo<<EOF
[cassandra]
name=Apache Cassandra 5.0
baseurl=https://redhat.cassandra.apache.org/50x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
EOF

Installez Apache Cassandra via la commande DNF

Vous pouvez installer Cassandra avec la commande suivante : le référentiel a été importé.

sudo dnf install cassandra -y

Confirmez la version installée en exécutant la commande suivante.

cassandra -v

Notez si vous voyez l’erreur suivante lors de l’importation des clés GPG.

Key import failed (code 2). Failing package is: cassandra-4.1~alpha1-1.noarch
 GPG Keys are configured as: https://www.apache.org/dist/cassandra/KEYS
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.

Modifiez les politiques de chiffrement et définissez la politique sur LEGACY.

sudo update-crypto-policies --set LEGACY

Parfois, vous devrez peut-être redémarrer pour que cette modification se produise correctement. J'ai trouvé que ce n'était pas nécessaire, mais c'est conseillé.

reboot

Créer le service Apache Cassandra Systemd

Une fois l'installation terminée, vous devez créer le service systemd. Encore une fois, c'est une tâche simple ; copiez et collez la commande suivante pour créer le fichier.

sudo tee /etc/systemd/system/cassandra.service<<EOF
[Unit]
Description=Apache Cassandra
After=network.target

[Service]
Type=simple
PIDFile=/var/run/cassandra/cassandra.pid
User=cassandra
Group=cassandra

ExecStart=/usr/sbin/cassandra -f -p /var/run/cassandra/cassandra.pid
Restart=always

[Install]
WantedBy=multi-user.target
EOF

Vous devez recharger le démon pour commencer à utiliser le service Cassandra et vous ne pouvez pas ignorer cette étape.

sudo systemctl daemon-reload

Maintenant, démarrez le service Cassandra.

sudo systemctl start cassandra

Ensuite, vérifiez l’état systemctl de Cassandra pour vous assurer qu’il n’y a pas d’erreurs.

systemctl status cassandra

En option, vous pouvez activer le service Cassandra au démarrage automatique lorsque vous démarrez votre ordinateur ou votre serveur à l'aide de la commande suivante.

sudo systemctl enable cassandra

Installer le client Apache Cassandra (cqlsh) sur Rocky Linux

Installer Python

Avant d'installer le client Cassandra, assurez-vous que Python est disponible sur votre système. Le client d'Apache Cassandra, cqlsh, est basé sur Python, ce qui fait de Python un prérequis. Installez Python sur Rocky Linux en exécutant :

sudo dnf install python3 -y

Installer PIP

Ensuite, installez PIP, le gestionnaire de packages de Python, pour gérer les packages Python. PIP est essentiel pour installer le pilote Cassandra Python. Si PIP n'est pas déjà installé sur votre système, ajoutez-le en exécutant :

sudo dnf install python3-pip -y

Installer le pilote Cassandra Python

Le pilote Cassandra Python est nécessaire pour cqlsh pour vous connecter à la base de données Cassandra. Ce pilote permet la communication entre le client et la base de données. Installez le pilote en utilisant PIP avec la commande :

pip install cassandra-driver

Installation de cqlsh

Une fois les prérequis remplis, vous êtes maintenant prêt à installer cqlsh. Cette interface de ligne de commande permet d'interagir avec Apache Cassandra, vous permettant d'exécuter des requêtes et de gérer votre base de données. Installer cqlsh en exécutant :

pip install cqlsh

Enfin, connectez-vous à cqlsh à l'aide de la commande suivante.

cqlsh

Exemple de résultat de votre connexion réussie :

[cqlsh 6.1.0 | Cassandra 4.1-alpha1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh> 

Configurer Apache Cassandra

La configuration et la personnalisation de Cassandra nécessitent des modifications dans ses fichiers de configuration et l'utilisation de certains utilitaires de ligne de commande.

Configuration de la configuration de base

Les principaux fichiers de configuration de Cassandra se trouvent dans /etc/cassandra. Pendant ce temps, les journaux et les répertoires de données sont généralement situés à /var/log/cassandra et /var/lib/cassandra respectivement.

Pour les ajustements au niveau de la JVM, tels que la taille du tas, vous devez vous tourner vers le /etc/cassandra/conf/cassandra-env.sh déposer. Dans ce fichier, vous pouvez ajouter des arguments de ligne de commande JVM supplémentaires au JVM_OPTS variable que Cassandra lit au démarrage.

Activation de l'authentification utilisateur avec Apache Cassandra

Avant d'activer l'authentification des utilisateurs, il est judicieux de créer une sauvegarde du /etc/cassandra/conf/cassandra.yaml déposer:

sudo cp /etc/cassandra/conf/cassandra.yaml /etc/cassandra/conf/cassandra.yaml.backup

Ensuite, ouvrez le cassandra.yaml déposer:

sudo nano /etc/cassandra/conf/cassandra.yaml

Dans le fichier, vous souhaiterez rechercher et modifier ces paramètres :

authenticator: org.apache.cassandra.auth.PasswordAuthenticator
authorizer: org.apache.cassandra.auth.CassandraAuthorizer
roles_validity_in_ms: 0
permissions_validity_in_ms: 0

Ajustez les autres paramètres en fonction de vos besoins et s'ils apparaissent commentés, assurez-vous de les supprimer. Terminez le processus d'édition en enregistrant le fichier.

Ensuite, redémarrez Cassandra pour appliquer vos modifications :

sudo systemctl restart cassandra

Ajout d'un superutilisateur administratif pour Apache Cassandra

L'authentification étant désormais activée, il est indispensable de configurer un utilisateur. À l'aide de l'utilitaire shell Cassandra Command, connectez-vous à l'aide des informations d'identification utilisateur par défaut :

cqlsh -u cassandra -p cassandra

Initier un nouveau superutilisateur en remplaçant [username] et [yourpassword] avec vos précisions :

CREATE ROLE [username] WITH PASSWORD = '[yourpassword]' AND SUPERUSER = true AND LOGIN = true;

Après cela, quittez et reconnectez-vous avec vos nouveaux détails de superutilisateur :

cqlsh -u username -p yourpassword

Réduisez les autorisations élevées du compte Cassandra par défaut :

ALTER ROLE cassandra WITH PASSWORD = 'cassandra' AND SUPERUSER = false AND LOGIN = false;
REVOKE ALL PERMISSIONS ON ALL KEYSPACES FROM cassandra;

Et accordez toutes les autorisations à votre superutilisateur :

GRANT ALL PERMISSIONS ON ALL KEYSPACES TO '[username]';

Terminez cette section en vous déconnectant.

Personnalisation de la configuration de la console

Le Cassandra Shell peut être adapté à vos besoins. Il lit sa configuration à partir du cqlshrc fichier trouvé dans le ~/.cassandra annuaire. Un exemple de fichier fournissant un aperçu des paramètres possibles se trouve à l'adresse /etc/cassandra/conf/cqlshrc.sample.

Commencez par copier cet exemple de fichier :

sudo cp /etc/cassandra/conf/cqlshrc.sample ~/.cassandra/cqlshrc

Ajuste le cqlshrc autorisations du fichier :

sudo chmod 600 ~/.cassandra/cqlshrc
sudo chown $USER:$USER ~/.cassandra/cqlshrc

Ouvrez-le pour le modifier :

nano ~/.cassandra/cqlshrc

Pour automatiser la connexion avec les informations d'identification du superutilisateur, recherchez et modifiez la section suivante :

[authentication]
username = [superuser]
password = [password]

N'oubliez pas de sauvegarder après avoir terminé vos modifications. Désormais, lorsque vous vous connecterez au shell Cassandra, vos modifications seront reflétées :

cqlsh

Renommer le cluster

Vous souhaiterez peut-être renommer le cluster pour rendre le système plus identifiable. Commencez en vous connectant à cqlsh Terminal:

cqlsh

Remplacer [new_name] avec le nom de cluster souhaité :

UPDATE system.local SET cluster_name = '[new_name]' WHERE KEY = 'local';

Quittez le terminal et ouvrez /etc/cassandra/conf/cassandra.yaml pour une édition ultérieure :

sudo nano /etc/cassandra/conf/cassandra.yaml

Localisez le cluster_name variable et remplacez sa valeur par le nom que vous avez choisi. Enregistrez vos modifications.

Enfin, videz le cache système de Cassandra :

nodetool flush system

Redémarrez Cassandra :

sudo systemctl restart cassandra

Lorsque vous vous connectez au shell, il affichera le nom du cluster que vous avez choisi.

Vérification des modifications de configuration

Après avoir apporté des modifications à la configuration, il est toujours conseillé de s'assurer qu'elles ont pris effet et de vérifier l'état de santé général du cluster Cassandra.

Vérification du nom du cluster : publiez le processus de changement de nom lorsque vous vous reconnectez au cqlsh coquille:

cqlsh

L'invite devrait maintenant afficher le nom du cluster nouvellement défini.

Conclusion

Dans ce guide, nous avons parcouru les étapes d'installation d'Apache Cassandra sur Rocky Linux, couvrant les versions 9 et 8. Ces instructions vous fournissent une solution de base de données robuste et évolutive pour les besoins du Big Data. Vérifiez régulièrement les mises à jour pour que Cassandra continue de fonctionner correctement et en toute sécurité. Entraînez-vous à utiliser Cassandra pour maîtriser pleinement ses fonctionnalités. Plongez, expérimentez et voyez comment cela peut transformer votre gestion des données.

Joshua James
Suis-moi
Les derniers articles par Joshua James (tout voir)

Laissez un commentaire