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.