Apprenez les commandes pour installer Apache Cassandra sur le serveur Rocky Linux ou AlmaLinux 8 en utilisant votre terminal donné dans ce tutoriel.
Apache Cassandra est la base de données orientée colonnes NoSQL la plus populaire et est écrite en Java, contrairement à MongoDB (C++) et HBase. En raison de ses propriétés architecturales, Cassandra est souvent utilisée dans les projets Big Data, mais peut également être bien utilisée pour des applications Web complexes en coopération avec un serveur/framework d'applications.
Cassandra est un système de gestion de base de données distribué conçu pour gérer de très grandes quantités de données structurées et appartient à la classe des systèmes de base de données NoSQL,
En plus d'être utilisée comme base de données distribuée dans les réseaux sociaux, la base de données est également utilisée, par exemple, par l'agrégateur de nouvelles sociales Reddit et le fournisseur de signets sociaux Digg.
Étapes pour installer Apache Cassandra sur Rocky Linux 8 | AlmaLinux 8
Les étapes indiquées ici seront les mêmes pour les autres distributions Linux basées sur RedHat telles que CentOS 8 et Oracle Linux…
1. Exécuter la mise à jour DNF
Exécutons d'abord la commande de mise à jour du système pour nous assurer que les packages installés sur le système sont à jour et cela actualisera également leur cache de référentiel.
sudo dnf update
Activez également EPEL et PowerTools :
sudo dnf install yum-utils
sudo dnf install epel-release
sudo dnf config-manager --set-enabled powertools
2. Installer OpenJDK-Java par défaut
Comme Apache Cassandra a été écrit en Java, nous en avons donc besoin; le kit de développement Java qui offre également un environnement d'exécution disponible via le référentiel de base par défaut d'Amalinux et de Rocky en utilisant le gestionnaire de packages DNF comme OpenJDK.
Les versions de Java prises en charge par Cassandra lors de la rédaction de cet article étaient :Java 8 ou Java 11.
Par conséquent, installons d'abord le même :
sudo dnf install java-11-openjdk
3. Ajouter le référentiel Cassandra Rocky | Almalinux 8
Les packages à installer ne peuvent pas être installés à l'aide de la base de dépôt par défaut de Rocky Linux ou d'AlmaLinux 8, nous devons donc l'ajouter manuellement. L'avantage d'utiliser un référentiel pour installer Cassandra est que nous pouvons facilement obtenir les futures mises à jour de la base de données en exécutant la commande de mise à jour du système. Vous pouvez confirmer la dernière version sur le site officiel .
sudo dnf install nano -y
Créez un fichier de référentiel :
sudo nano /etc/yum.repos.d/cassandra.repo
Remarque :La dernière version majeure lors de la rédaction de l'article était 4.0 et le nom de distribution correspondant est 40x (avec un "x" comme suffixe). Pour les versions plus anciennes, utilisez 311x pour la série C* 3.11, 30x pour {30_version}, 22x pour {22_version} et 21x pour {21_version}. Par exemple, pour ajouter le dépôt pour la version 4.0 (40x) :
Copiez-Collez les lignes suivantes :
[cassandra] name=Apache Cassandra baseurl=https://downloads.apache.org/cassandra/redhat/40x/ gpgcheck=1 repo_gpgcheck=1 gpgkey=https://downloads.apache.org/cassandra/KEYS
Enregistrer le fichier en utilisant Ctrl+O , appuyez sur Entrée Clé, puis quittez par Ctrl+X .
Exécutez la commande de mise à jour pour mettre à jour le cache du référentiel.
sudo dnf update -y
4. Installez la dernière version d'Apache Cassandra sur Almalinux | Rocheux 8
Une fois le référentiel ajouté, nous pouvons facilement installer la dernière version d'Apache Cassandra sur Rocky Linux 8 ou AlmaLinux 8 à l'aide du gestionnaire de packages DNF.
sudo dnf install cassandra -y
5. Démarrer et activer le service Cassandra
Eh bien, nous avons déjà terminé l'installation avec succès, nous devons maintenant démarrer le service de cette base de données NoSQL, et si vous voulez qu'il démarre automatiquement avec le démarrage du système ou en cas de plantage, n'oubliez pas d'activer le service.
sudo service cassandra start
sudo systemctl enable cassandra
Pour vérifier que le service est activé avec succès, exécutez :
sudo systemctl is-enabled cassandra.service
Pour vérifier l'état actuel :
sudo systemctl status cassandra
6. Vérifier que Cassandra est en cours d'exécution
Pour vous assurer que la base de données est en cours d'exécution et fonctionne correctement à 127.0.0.1:7199
, exécutez la commande indiquée :
nodetool status
Vous obtiendrez la sortie comme indiqué dans la capture d'écran.
7. Fichiers de configuration des clés
Le répertoire où les données Apache Cassandra sont stockées - /var/lib/cassandra
alors que les fichiers de configuration sont dans /etc/cassandra
et start-up Java les options peuvent être configurées dans le /etc/default/cassandra
fichier.
Par défaut, la base de données ne peut écouter que localhost, cependant, si vous souhaitez utiliser le client pour connecter Cassandra à distance, nous devons le configurer en modifiant :
sudo nano /etc/cassandra/default.conf/cassandra.yaml
8. Langage de requête Cassandra
Utilisez l'outil de ligne de commande appelé cqlsh
est fourni avec le package Cassandra pour l'interroger à l'aide du terminal. Pour l'utiliser, le système doit avoir au moins un package python 2 installé.
Si vous n'avez pas Python sur votre système, exécutez :
sudo dnf install python2
Pour obtenir le shell CQL, exécutez :
cqlsh
9. Changer le nom du cluster
Pour mettre à jour le nom du cluster, passez à CQL Shell à l'aide de la commande ci-dessus, puis exécutez celle-ci :
UPDATE system.local SET cluster_name = 'H2s Cluster' WHERE KEY = 'local';
Quittez ensuite le shell :
exit;
Après cela, modifiez le fichier de configuration YAML :
sudo nano /etc/cassandra/default.conf/cassandra.yaml
Remplacer le cluster de test avec le nom que vous avez défini pour votre cluster.
Après cela, videz le cache et redémarrez le service Cassandra :
nodetool flush system
sudo systemctl restart cassandra
Pour confirmer que le nom du cluster a été mis à jour :
cqlsh
DESC CLUSTER
Pour gérer Cassandra à l'aide de l'interface graphique, consultez ce projet GitHub
10. Activer l'authentification utilisateur
Sauvegardez votre fichier de configuration actuel pour vous assurer qu'en cas de problème, nous pouvons restaurer le fichier d'origine.
sudo cp /etc/cassandra/conf/cassandra.yaml /etc/cassandra/conf/cassandra.yaml.backup
Modifier le fichier yml :
sudo nano /etc/cassandra/conf/cassandra.yaml
Recherchez la ligne suivante dans le fichier et modifiez leurs valeurs comme indiqué ci-dessous :
authenticator: org.apache.cassandra.auth.PasswordAuthenticator authorizer: org.apache.cassandra.auth.CassandraAuthorizer roles_validity_in_ms: 0 permissions_validity_in_ms: 0
Enregistrez le fichier que vous avez terminé avec l'édition en utilisant Ctrl+O , appuyez sur Entrée Clé, puis Ctlr+X .
Par exemple, voir la capture d'écran :
Redémarrer le service Cassandra :
sudo systemctl restart cassandra
11. Ajouter un utilisateur administrateur pour votre base de données
Modifiez l'utilisateur et le mot de passe par défaut comme vous le souhaitez :
cqlsh -u cassandra -p cassandra
CREATE ROLE myusername WITH PASSWORD = 'mypassword' AND SUPERUSER = true AND LOGIN = true;
Remarque :Remplacez- monnom d'utilisateur et monmotdepasse avec ce que vous voulez définir.
Quittez le Command Shell de Cassandra :
exit;
Maintenant, reconnectez-vous en utilisant votre nouvel utilisateur et votre nouveau mot de passe.
Désactivez les droits SuperUser ou Admin pour l'utilisateur Cassandra par défaut après la connexion avec l'utilisateur nouvellement créé :
ALTER ROLE cassandra WITH PASSWORD = 'cassandra' AND SUPERUSER = false AND LOGIN = false;
Accorder toutes les autorisations à votre utilisateur :
GRANT ALL PERMISSIONS ON ALL KEYSPACES TO 'myusername';
exit;
Une fois l'utilisateur d'authentification et d'administration créé, vous en avez toujours besoin pour vous connecter et utiliser la commande Shell de Cassandra. Sans authentification de l'utilisateur, vous obtiendrez le résultat suivant :
Erreur de connexion :("Impossible de se connecter à tous les serveurs", {'127.0.0.1:9042' :AuthenticationFailed('L'extrémité distante nécessite une authentification',)})
12. Comment mettre à jour Cassandra sur AlamLinux ou Rocky Linux
Comme nous avons installé cette base de données NoSQL en ajoutant son référentiel, l'exécution de la commande de mise à jour et de mise à niveau du système récupérera et installera également la dernière mise à jour de la version.
sudo dnf update && sudo dnf upgrade
13. Désinstaller ou supprimer
Il s'agit d'une étape facultative, et utilisez-la lorsque vous souhaitez supprimer Cassandra de votre système.
sudo dnf remove cassandra
Supprimer le dépôt
sudo rm /etc/yum.repos.d/cassandra.repo