Apache Cassandra is een zeer schaalbare, krachtige gedistribueerde database die is ontworpen om grote hoeveelheden gegevens op veel standaardservers te verwerken, waardoor een hoge beschikbaarheid wordt geboden zonder enig storingspunt. Het staat bekend om zijn robuuste ondersteuning voor clusters die meerdere datacenters omspannen, met asynchrone masterless replicatie die een lage latentie en operationele eenvoud mogelijk maakt. Cassandra is ideaal voor toepassingen die een hoge schrijfdoorvoer, fouttolerantie en lineaire schaalbaarheid vereisen.
De volgende gids demonstreert de stappen om Apache Cassandra op Rocky Linux 9 of 8 te installeren met behulp van opdrachtregelopdrachten. Dit proces omvat het opzetten van de juiste repository en het configureren van uw systeem om optimale prestaties en betrouwbaarheid voor uw gedistribueerde databaseomgeving te garanderen.
Update het Rocky Linux-systeem vóór de installatie van Apache Cassandra
Voordat u Apache Cassandra installeert, is het eerst een goed idee om ervoor te zorgen dat alle systeempakketten up-to-date zijn om mogelijke problemen bij het installeren van de NoSQL-database te voorkomen.
Voer in uw terminal de volgende opdracht uit en upgrade eventuele openstaande pakketten.
sudo dnf upgrade --refresh
Apache Cassandra-repository importeren
De eerste stap omvat het importeren van de repository voor Apache Cassandra. Gelukkig kun je dit met één enkele opdracht bereiken. De tutorial laat zien hoe u de 5.0-, 4.0- of 4.1-takken importeert. Omdat de 3.xx branch zijn einde nadert, zal de tutorial geen instructies bevatten om deze toe te voegen.
4.0 Apache Cassandra RPM-import
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 Apache Cassandra RPM-import
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 Apache Cassandra RPM-import
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
Installeer Apache Cassandra via DNF-opdracht
Je kunt Cassandra installeren met de volgende opdracht; de repository is geïmporteerd.
sudo dnf install cassandra -y
Bevestig de geïnstalleerde versie door de volgende opdracht uit te voeren.
cassandra -v
Let op als u de volgende fout ziet bij het importeren van GPG-sleutels.
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'.
Wijzig het cryptobeleid en stel het beleid in op LEGACY.
sudo update-crypto-policies --set LEGACY
Soms moet u mogelijk opnieuw opstarten om deze wijziging succesvol door te voeren. Ik vond dat dit niet nodig was, maar het is wel aan te raden.
reboot
Maak Apache Cassandra Systemd-service
Nadat de installatie is voltooid, moet u de systemd-service maken. Nogmaals, dit is een eenvoudige taak; kopieer en plak de volgende opdracht om het bestand te maken.
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
U moet de daemon opnieuw laden om de Cassandra-service te kunnen gebruiken, en u kunt deze stap niet overslaan.
sudo systemctl daemon-reload
Start nu de Cassandra-service.
sudo systemctl start cassandra
Controleer vervolgens de systemctl-status van Cassandra om er zeker van te zijn dat er geen fouten zijn.
systemctl status cassandra
Optioneel kunt u de Cassandra-service automatisch inschakelen wanneer u uw computer of server opstart met de volgende opdracht.
sudo systemctl enable cassandra
Installeer Apache Cassandra Client (cqlsh) op Rocky Linux
Python installeren
Voordat u de Cassandra-client installeert, moet u ervoor zorgen dat Python beschikbaar is op uw systeem. Apache Cassandra's cliënt, cqlsh
, is gebaseerd op Python, waardoor Python een vereiste is. Installeer Python op Rocky Linux door het volgende uit te voeren:
sudo dnf install python3 -y
PIP installeren
Installeer vervolgens PIP, de pakketbeheerder van Python, voor het beheren van Python-pakketten. PIP is essentieel voor het installeren van het Cassandra Python-stuurprogramma. Als PIP nog niet op uw systeem is geïnstalleerd, voegt u het toe door het volgende uit te voeren:
sudo dnf install python3-pip -y
Installeer het Cassandra Python-stuurprogramma
Hiervoor is het Cassandra Python-stuurprogramma nodig cqlsh
om verbinding te maken met de Cassandra-database. Dit stuurprogramma maakt communicatie tussen de client en de database mogelijk. Installeer het stuurprogramma met behulp van PIP met de opdracht:
pip install cassandra-driver
Cclsh installeren
Nu aan de vereisten is voldaan, bent u nu klaar om te installeren cqlsh
. Deze opdrachtregelinterface maakt interactie met Apache Cassandra mogelijk, waardoor u query's kunt uitvoeren en uw database kunt beheren. Installeren cqlsh
door het uitvoeren van:
pip install cqlsh
Maak ten slotte verbinding met cqlsh met behulp van de volgende opdracht.
cqlsh
Voorbeelduitvoer van uw succesvolle verbinding:
[cqlsh 6.1.0 | Cassandra 4.1-alpha1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh>
Configureer Apache Cassandra
Het instellen en personaliseren van Cassandra vereist wijzigingen in de configuratiebestanden en het gebruik van bepaalde opdrachtregelhulpprogramma's.
Basisconfiguratie instellen
De belangrijkste configuratiebestanden voor Cassandra bevinden zich in /etc/cassandra
. Ondertussen bevinden logs en gegevensmappen zich doorgaans op /var/log/cassandra
En /var/lib/cassandra
respectievelijk.
Voor aanpassingen op JVM-niveau, zoals de heapgrootte, kijk je naar de /etc/cassandra/conf/cassandra-env.sh
bestand. Binnen dit bestand kunt u aanvullende JVM-opdrachtregelargumenten toevoegen aan het JVM_OPTS
variabele die Cassandra leest bij het opstarten.
Gebruikersauthenticatie inschakelen met Apache Cassandra
Voordat u gebruikersauthenticatie activeert, is het verstandig om een back-up te maken van de /etc/cassandra/conf/cassandra.yaml
bestand:
sudo cp /etc/cassandra/conf/cassandra.yaml /etc/cassandra/conf/cassandra.yaml.backup
Open vervolgens de cassandra.yaml
bestand:
sudo nano /etc/cassandra/conf/cassandra.yaml
Binnen het bestand wilt u deze parameters zoeken en wijzigen:
authenticator: org.apache.cassandra.auth.PasswordAuthenticator
authorizer: org.apache.cassandra.auth.CassandraAuthorizer
roles_validity_in_ms: 0
permissions_validity_in_ms: 0
Pas andere instellingen aan uw behoeften aan, en als ze zonder commentaar verschijnen, zorg er dan voor dat u de opmerkingen verwijdert. Voltooi het bewerkingsproces door het bestand op te slaan.
Start Cassandra daarna opnieuw op om uw wijzigingen toe te passen:
sudo systemctl restart cassandra
Een administratieve superuser toevoegen voor Apache Cassandra
Nu authenticatie is geactiveerd, is het essentieel om een gebruiker te configureren. Met behulp van het Cassandra Command shell-hulpprogramma logt u in met de standaardgebruikersreferenties:
cqlsh -u cassandra -p cassandra
Start een nieuwe superuser door deze te vervangen [username]
En [yourpassword]
met uw gegevens:
CREATE ROLE [username] WITH PASSWORD = '[yourpassword]' AND SUPERUSER = true AND LOGIN = true;
Sluit daarna af en log opnieuw in met uw nieuwe superuser-gegevens:
cqlsh -u username -p yourpassword
Verminder de verhoogde rechten van het standaard Cassandra-account:
ALTER ROLE cassandra WITH PASSWORD = 'cassandra' AND SUPERUSER = false AND LOGIN = false;
REVOKE ALL PERMISSIONS ON ALL KEYSPACES FROM cassandra;
En verleen volledige rechten aan uw superuser:
GRANT ALL PERMISSIONS ON ALL KEYSPACES TO '[username]';
Sluit dit gedeelte af door uit te loggen.
De consoleconfiguratie aanpassen
De Cassandra Shell kan worden aangepast aan uw behoeften. Het leest de configuratie van de cqlshrc
bestand gevonden in de ~/.cassandra
map. Een voorbeeldbestand dat inzicht geeft in mogelijke instellingen ligt op /etc/cassandra/conf/cqlshrc.sample
.
Begin met het kopiëren van dit voorbeeldbestand:
sudo cp /etc/cassandra/conf/cqlshrc.sample ~/.cassandra/cqlshrc
Pas de .... aan cqlshrc
bestandsrechten:
sudo chmod 600 ~/.cassandra/cqlshrc
sudo chown $USER:$USER ~/.cassandra/cqlshrc
Open het voor bewerking:
nano ~/.cassandra/cqlshrc
Om het inloggen met superuser-referenties te automatiseren, zoekt en bewerkt u de volgende sectie:
[authentication]
username = [superuser]
password = [password]
Vergeet niet om op te slaan nadat u uw bewerkingen hebt voltooid. Wanneer u nu inlogt op de Cassandra-shell, worden uw wijzigingen weergegeven:
cqlsh
De naam van het cluster wijzigen
Mogelijk wilt u de naam van het cluster wijzigen om het systeem beter identificeerbaar te maken. Begin door in te loggen op de cqlsh
terminal:
cqlsh
Vervangen [new_name]
met uw gewenste clusternaam:
UPDATE system.local SET cluster_name = '[new_name]' WHERE KEY = 'local';
Verlaat de terminal en open /etc/cassandra/conf/cassandra.yaml
voor verdere bewerking:
sudo nano /etc/cassandra/conf/cassandra.yaml
Zoek de cluster_name
variabele en vervang de waarde ervan door de door u gekozen naam. Sla uw wijzigingen op.
Wis ten slotte de systeemcache van Cassandra:
nodetool flush system
Cassandra opnieuw opstarten:
sudo systemctl restart cassandra
Wanneer u zich aanmeldt bij de shell, wordt de door u gekozen clusternaam weergegeven.
Configuratiewijzigingen verifiëren
Nadat u configuratiewijzigingen hebt aangebracht, is het altijd een goede gewoonte om ervoor te zorgen dat deze van kracht worden en de algehele status van het Cassandra-cluster te controleren.
Verificatie van clusternaam: Post het hernoemingsproces wanneer u zich opnieuw aanmeldt bij de cqlsh
schelp:
cqlsh
De prompt zou nu de nieuw ingestelde clusternaam moeten weergeven.
Conclusie
In deze handleiding hebben we de stappen doorlopen om Apache Cassandra op Rocky Linux te installeren, waarbij versie 9 en 8 aan bod komen. Deze instructies bieden u een robuuste, schaalbare database-oplossing voor big data-behoeften. Controleer regelmatig of er updates zijn om ervoor te zorgen dat Cassandra goed en veilig blijft presteren. Oefen met het gebruik van Cassandra om de functies ervan volledig onder de knie te krijgen. Duik erin, experimenteer en zie hoe het uw gegevensbeheer kan transformeren.