Hur man installerar Apache Cassandra på Rocky Linux 9/8

Apache Cassandra är en mycket skalbar, högpresterande distribuerad databas utformad för att hantera stora mängder data över många råvaruservrar, vilket ger hög tillgänglighet utan en enda felpunkt. Det är känt för sitt robusta stöd för kluster som spänner över flera datacenter, med asynkron masterless replikering som tillåter låg latens och enkel drift. Cassandra är idealisk för applikationer som kräver hög skrivkapacitet, feltolerans och linjär skalbarhet.

Följande guide kommer att demonstrera stegen för att installera Apache Cassandra på Rocky Linux 9 eller 8 med hjälp av kommandoradskommandon. Denna process innebär att du ställer in lämpligt arkiv och konfigurerar ditt system för att säkerställa optimal prestanda och tillförlitlighet för din distribuerade databasmiljö.

Uppdatera Rocky Linux System före installation av Apache Cassandra

Först, innan du installerar Apache Cassandra, är det en bra idé att se till att alla systempaket är uppdaterade för att undvika eventuella problem när du installerar NoSQL-databasen.

Kör följande kommando i din terminal och uppgradera eventuella utestående paket.

sudo dnf upgrade --refresh

Importera Apache Cassandra Repository

Det första steget innebär att importera arkivet för Apache Cassandra. Lyckligtvis kan du åstadkomma detta med ett enda kommando. Handledningen visar hur man importerar 5.0-, 4.0- eller 4.1-grenarna. Eftersom 3.xx-grenen närmar sig slutet kommer handledningen inte att innehålla instruktioner för att lägga till dessa.

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

Installera Apache Cassandra via DNF Command

Du kan installera Cassandra med följande kommando; förvaret har importerats.

sudo dnf install cassandra -y

Bekräfta den installerade versionen genom att köra följande kommando.

cassandra -v

Observera om du ser följande fel när du importerar GPG-nycklar.

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'.

Ändra kryptopolicyerna och ställ in policyn på LEGACY.

sudo update-crypto-policies --set LEGACY

Ibland kan du behöva starta om för att denna ändring ska ske framgångsrikt. Jag upptäckte att du inte behövde det, men det rekommenderas.

reboot

Skapa Apache Cassandra Systemd Service

När installationen är klar måste du skapa systemd-tjänsten. Återigen, detta är en enkel uppgift; kopiera och klistra in följande kommando för att skapa filen.

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

Du måste ladda om demonen för att börja använda Cassandra-tjänsten, och du kan inte hoppa över detta steg.

sudo systemctl daemon-reload

Starta nu Cassandra-tjänsten.

sudo systemctl start cassandra

Kontrollera sedan systemctl-statusen för Cassandra för att säkerställa att det inte finns några fel.

systemctl status cassandra

Alternativt kan du aktivera Cassandra-tjänsten vid automatisk start när du startar din dator eller server med följande kommando.

sudo systemctl enable cassandra

Installera Apache Cassandra Client (cqlsh) på Rocky Linux

Installera Python

Innan du installerar Cassandra-klienten, se till att Python är tillgängligt på ditt system. Apache Cassandras klient, cqlsh, är Python-baserat, vilket gör Python till en förutsättning. Installera Python på Rocky Linux genom att köra:

sudo dnf install python3 -y

Installera PIP

Installera sedan PIP, Pythons pakethanterare, för hantering av Python-paket. PIP är viktigt för att installera Cassandra Python-drivrutinen. Om PIP inte redan är installerat på ditt system, lägg till det genom att köra:

sudo dnf install python3-pip -y

Installera Cassandra Python-drivrutinen

Cassandra Python-drivrutinen är nödvändig för cqlsh för att ansluta till Cassandra-databasen. Denna drivrutin möjliggör kommunikation mellan klienten och databasen. Installera drivrutinen med PIP med kommandot:

pip install cassandra-driver

Installerar cqlsh

Med förutsättningarna på plats är du nu redo att installera cqlsh. Detta kommandoradsgränssnitt möjliggör interaktion med Apache Cassandra, vilket gör att du kan köra frågor och hantera din databas. Installera cqlsh genom att utföra:

pip install cqlsh

Slutligen, anslut till cqlsh med följande kommando.

cqlsh

Exempel på utdata för din lyckade anslutning:

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

Konfigurera Apache Cassandra

Att ställa in och anpassa Cassandra kräver ändringar i dess konfigurationsfiler och användning av vissa kommandoradsverktyg.

Ställa in grundläggande konfiguration

De huvudsakliga konfigurationsfilerna för Cassandra finns i /etc/cassandra. Under tiden är loggar och datakataloger vanligtvis placerade på /var/log/cassandra och /var/lib/cassandra respektive.

För justeringar på JVM-nivå, såsom högstorlek, skulle du titta mot /etc/cassandra/conf/cassandra-env.sh fil. I den här filen kan du lägga till kompletterande JVM-kommandoradsargument till JVM_OPTS variabel som Cassandra läser av vid start.

Aktiverar användarautentisering med Apache Cassandra

Innan du aktiverar användarautentisering är det klokt att skapa en säkerhetskopia av /etc/cassandra/conf/cassandra.yaml fil:

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

Öppna sedan cassandra.yaml fil:

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

I filen vill du söka efter och ändra dessa parametrar:

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

Justera andra inställningar efter dina behov, och om de verkar kommenterade, se till att du avkommenterar dem. Slutför redigeringsprocessen genom att spara filen.

Efteråt, starta om Cassandra för att tillämpa dina ändringar:

sudo systemctl restart cassandra

Lägga till en administrativ superanvändare för Apache Cassandra

Med autentisering nu aktiverad är det viktigt att konfigurera en användare. Logga in med hjälp av Cassandra Command shell-verktyget med standardanvändaruppgifterna:

cqlsh -u cassandra -p cassandra

Initiera en ny superanvändare genom att ersätta [username] och [yourpassword] med dina detaljer:

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

Efter det, avsluta och logga in igen med dina nya superanvändaruppgifter:

cqlsh -u username -p yourpassword

Minska standard Cassandra-kontots förhöjda behörigheter:

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

Och ge fullständiga behörigheter till din superanvändare:

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

Avsluta detta avsnitt genom att logga ut.

Anpassa konsolkonfigurationen

Cassandra Shell kan skräddarsys efter dina behov. Den läser dess konfiguration från cqlshrc fil som finns i ~/.cassandra katalog. En exempelfil som ger insikter i möjliga inställningar finns på /etc/cassandra/conf/cqlshrc.sample.

Börja med att kopiera denna exempelfil:

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

Justera cqlshrc filens behörigheter:

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

Öppna den för redigering:

nano ~/.cassandra/cqlshrc

För att automatisera inloggning med superanvändaruppgifter, lokalisera och redigera följande avsnitt:

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

Kom ihåg att spara efter att du har slutfört dina redigeringar. Nu, när du loggar in på Cassandra-skalet, kommer det att återspegla dina ändringar:

cqlsh

Byter namn på klustret

Du kanske vill byta namn på klustret för att göra systemet mer identifierbart. Börja genom att logga in på cqlsh terminal:

cqlsh

Byta ut [new_name] med ditt önskade klusternamn:

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

Gå ur terminalen och öppna /etc/cassandra/conf/cassandra.yaml för ytterligare redigering:

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

Leta upp cluster_name variabel och ersätt dess värde med ditt valda namn. Spara dina ändringar.

Rensa slutligen Cassandras systemcache:

nodetool flush system

Starta om Cassandra:

sudo systemctl restart cassandra

När du loggar in på skalet kommer det att visa ditt valda klusternamn.

Verifierar konfigurationsändringar

Efter att ha gjort konfigurationsändringar är det alltid bra att se till att de har trätt i kraft och kontrollera Cassandra-klustrets allmänna hälsa.

Verifiering av klusternamn: Lägg upp byteprocessen när du loggar in igen på cqlsh skal:

cqlsh

Prompten ska nu visa det nyinställda klusternamnet.

Slutsats

I den här guiden har vi gått igenom stegen för att installera Apache Cassandra på Rocky Linux, som täcker både version 9 och 8. Dessa instruktioner ger dig en robust, skalbar databaslösning för big data-behov. Kontrollera regelbundet efter uppdateringar för att Cassandra ska fungera bra och säkert. Öva på att använda Cassandra för att behärska dess funktioner fullt ut. Dyk in, experimentera och se hur det kan förändra din datahantering.

Joshua James
Följ mig
Senaste inläggen av Joshua James (se alla)

Lämna en kommentar