Apache Cassandra to wysoce skalowalna, wydajna rozproszona baza danych zaprojektowana do obsługi dużych ilości danych na wielu standardowych serwerach, zapewniająca wysoką dostępność bez pojedynczego punktu awarii. Jest znany z niezawodnej obsługi klastrów obejmujących wiele centrów danych, z asynchroniczną replikacją bez wzorca, zapewniającą niskie opóźnienia i prostotę operacyjną. Cassandra jest idealna do zastosowań wymagających dużej przepustowości zapisu, odporności na błędy i skalowalności liniowej.
Poniższy przewodnik zademonstruje kroki instalacji Apache Cassandra na Rocky Linux 9 lub 8 za pomocą poleceń wiersza poleceń. Proces ten obejmuje skonfigurowanie odpowiedniego repozytorium i skonfigurowanie systemu w celu zapewnienia optymalnej wydajności i niezawodności środowiska rozproszonej bazy danych.
Zaktualizuj system Rocky Linux przed instalacją Apache Cassandra
Po pierwsze, przed instalacją Apache Cassandra warto upewnić się, że wszystkie pakiety systemowe są aktualne, aby uniknąć potencjalnych problemów podczas instalacji bazy danych NoSQL.
W terminalu uruchom następujące polecenie i zaktualizuj wszystkie zaległe pakiety.
sudo dnf upgrade --refresh
Importuj repozytorium Apache Cassandra
Pierwszy krok polega na zaimportowaniu repozytorium dla Apache Cassandra. Na szczęście można to zrobić za pomocą jednego polecenia. Samouczek pokaże, jak zaimportować gałęzie 5.0, 4.0 lub 4.1. Ponieważ gałąź 3.xx dobiega końca, samouczek nie będzie zawierał instrukcji dotyczących ich dodawania.
Import RPM Apache Cassandra 4.0
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 Import 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
Import Apache Cassandra RPM 5.0
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
Zainstaluj Apache Cassandra za pomocą polecenia DNF
Możesz zainstalować Cassandrę za pomocą następującego polecenia; repozytorium zostało zaimportowane.
sudo dnf install cassandra -y
Potwierdź zainstalowaną wersję, uruchamiając następujące polecenie.
cassandra -v
Uwaga, jeśli zobaczysz następujący błąd podczas importowania kluczy 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'.
Zmień zasady dotyczące kryptowalut i ustaw je na STARSZE.
sudo update-crypto-policies --set LEGACY
Czasami może być konieczne ponowne uruchomienie komputera, aby ta zmiana została pomyślnie zastosowana. Uważam, że nie jest to konieczne, ale jest to zalecane.
reboot
Utwórz usługę Apache Cassandra Systemd
Po zakończeniu instalacji musisz utworzyć usługę systemd. Ponownie jest to proste zadanie; skopiuj i wklej następujące polecenie, aby utworzyć plik.
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
Aby rozpocząć korzystanie z usługi Cassandra, należy ponownie załadować demona i nie można pominąć tego kroku.
sudo systemctl daemon-reload
Teraz uruchom usługę Cassandra.
sudo systemctl start cassandra
Następnie sprawdź status systemctl Cassandry, aby upewnić się, że nie ma błędów.
systemctl status cassandra
Opcjonalnie możesz włączyć usługę Cassandra podczas automatycznego uruchamiania po uruchomieniu komputera lub serwera za pomocą następującego polecenia.
sudo systemctl enable cassandra
Zainstaluj klienta Apache Cassandra (cqlsh) na Rocky Linux
Zainstaluj Pythona
Przed zainstalowaniem klienta Cassandra upewnij się, że Python jest dostępny w Twoim systemie. Klient Apache Cassandra, cqlsh
, jest oparty na języku Python, co sprawia, że Python jest warunkiem wstępnym. Zainstaluj Python na Rocky Linux, wykonując:
sudo dnf install python3 -y
Zainstaluj PIP-a
Następnie zainstaluj PIP, menedżer pakietów Pythona, do zarządzania pakietami Pythona. PIP jest niezbędny do zainstalowania sterownika Cassandra Python. Jeśli PIP nie jest jeszcze zainstalowany w Twoim systemie, dodaj go, uruchamiając:
sudo dnf install python3-pip -y
Zainstaluj sterownik Cassandra Python
Sterownik Cassandra Python jest niezbędny do cqlsh
aby połączyć się z bazą danych Cassandra. Driver ten umożliwia komunikację pomiędzy klientem a bazą danych. Zainstaluj sterownik za pomocą PIP za pomocą polecenia:
pip install cassandra-driver
Instalowanie cqlsh
Po spełnieniu wymagań wstępnych możesz przystąpić do instalacji cqlsh
. Ten interfejs wiersza poleceń umożliwia interakcję z Apache Cassandra, umożliwiając wykonywanie zapytań i zarządzanie bazą danych. zainstalować cqlsh
wykonując:
pip install cqlsh
Na koniec połącz się z cqlsh za pomocą następującego polecenia.
cqlsh
Przykładowy wynik udanego połączenia:
[cqlsh 6.1.0 | Cassandra 4.1-alpha1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh>
Skonfiguruj Apache Cassandra
Konfigurowanie i personalizowanie Cassandry wymaga zmian w jej plikach konfiguracyjnych i wykorzystania niektórych narzędzi wiersza poleceń.
Konfiguracja podstawowa
Główne pliki konfiguracyjne Cassandry znajdują się w /etc/cassandra
. Tymczasem dzienniki i katalogi danych zwykle znajdują się pod adresem /var/log/cassandra
I /var/lib/cassandra
odpowiednio.
Aby uzyskać korekty na poziomie JVM, takie jak rozmiar sterty, należy spojrzeć w stronę /etc/cassandra/conf/cassandra-env.sh
plik. W tym pliku możesz dodać dodatkowe argumenty wiersza poleceń JVM do pliku JVM_OPTS
zmienna, którą Cassandra czyta podczas uruchamiania.
Włączanie uwierzytelniania użytkownika za pomocą Apache Cassandra
Przed aktywacją uwierzytelniania użytkownika warto utworzyć kopię zapasową pliku /etc/cassandra/conf/cassandra.yaml
plik:
sudo cp /etc/cassandra/conf/cassandra.yaml /etc/cassandra/conf/cassandra.yaml.backup
Następnie otwórz plik cassandra.yaml
plik:
sudo nano /etc/cassandra/conf/cassandra.yaml
W pliku warto wyszukać i zmodyfikować następujące parametry:
authenticator: org.apache.cassandra.auth.PasswordAuthenticator
authorizer: org.apache.cassandra.auth.CassandraAuthorizer
roles_validity_in_ms: 0
permissions_validity_in_ms: 0
Dostosuj inne ustawienia zgodnie ze swoimi potrzebami, a jeśli wydają się być skomentowane, pamiętaj o ich odkomentowaniu. Zakończ proces edycji, zapisując plik.
Następnie uruchom ponownie Cassandrę, aby zastosować modyfikacje:
sudo systemctl restart cassandra
Dodawanie administratora administratora dla Apache Cassandra
Po włączeniu uwierzytelniania konieczne jest skonfigurowanie użytkownika. Korzystając z narzędzia powłoki Cassandra Command, zaloguj się przy użyciu domyślnych poświadczeń użytkownika:
cqlsh -u cassandra -p cassandra
Zainicjuj nowego superużytkownika poprzez wymianę [username]
I [yourpassword]
z Twoimi danymi:
CREATE ROLE [username] WITH PASSWORD = '[yourpassword]' AND SUPERUSER = true AND LOGIN = true;
Następnie wyjdź i zaloguj się ponownie, podając nowe dane superużytkownika:
cqlsh -u username -p yourpassword
Zmniejsz podwyższone uprawnienia domyślnego konta Cassandra:
ALTER ROLE cassandra WITH PASSWORD = 'cassandra' AND SUPERUSER = false AND LOGIN = false;
REVOKE ALL PERMISSIONS ON ALL KEYSPACES FROM cassandra;
I przyznaj pełne uprawnienia swojemu superużytkownikowi:
GRANT ALL PERMISSIONS ON ALL KEYSPACES TO '[username]';
Zakończ tę sekcję wylogowując się.
Dostosowywanie konfiguracji konsoli
Cassandra Shell można dostosować do Twoich potrzeb. Odczytuje swoją konfigurację z pliku cqlshrc
plik znaleziony w ~/.cassandra
informator. Przykładowy plik zapewniający wgląd w możliwe ustawienia znajduje się pod adresem /etc/cassandra/conf/cqlshrc.sample
.
Zacznij od skopiowania tego przykładowego pliku:
sudo cp /etc/cassandra/conf/cqlshrc.sample ~/.cassandra/cqlshrc
Poprawić cqlshrc
uprawnienia pliku:
sudo chmod 600 ~/.cassandra/cqlshrc
sudo chown $USER:$USER ~/.cassandra/cqlshrc
Otwórz go do edycji:
nano ~/.cassandra/cqlshrc
Aby zautomatyzować logowanie przy użyciu poświadczeń superużytkownika, zlokalizuj i edytuj następującą sekcję:
[authentication]
username = [superuser]
password = [password]
Pamiętaj o zapisaniu po zakończeniu edycji. Teraz, gdy zalogujesz się do powłoki Cassandra, odzwierciedli to twoje zmiany:
cqlsh
Zmiana nazwy klastra
Aby ułatwić identyfikację systemu, warto zmienić nazwę klastra. Rozpocznij logując się do cqlsh
terminal:
cqlsh
Zastępować [new_name]
z żądaną nazwą klastra:
UPDATE system.local SET cluster_name = '[new_name]' WHERE KEY = 'local';
Wyjdź z terminala i otwórz /etc/cassandra/conf/cassandra.yaml
do dalszej edycji:
sudo nano /etc/cassandra/conf/cassandra.yaml
Zlokalizuj cluster_name
zmienną i zastąp jej wartość wybraną przez siebie nazwą. Zapisz zmiany.
Na koniec wyczyść pamięć podręczną systemu Cassandry:
nodetool flush system
Uruchom ponownie Cassandrę:
sudo systemctl restart cassandra
Kiedy zalogujesz się do powłoki, wyświetli się wybrana nazwa klastra.
Weryfikacja zmian konfiguracyjnych
Po wprowadzeniu zmian w konfiguracji zawsze dobrą praktyką jest upewnienie się, że odniosły one skutek, i sprawdzenie ogólnego stanu klastra Cassandra.
Weryfikacja nazwy klastra: Opublikuj proces zmiany nazwy po ponownym zalogowaniu się do cqlsh
powłoka:
cqlsh
Monit powinien teraz wyświetlać nowo ustawioną nazwę klastra.
Wniosek
W tym przewodniku omówiliśmy kroki instalacji Apache Cassandra w systemie Rocky Linux, obejmując obie wersje 9 i 8. Te instrukcje zapewniają solidne, skalowalne rozwiązanie bazodanowe na potrzeby dużych zbiorów danych. Regularnie sprawdzaj dostępność aktualizacji, aby Cassandra działała dobrze i była bezpieczna. Poćwicz korzystanie z Cassandry, aby w pełni opanować jej funkcje. Zanurz się, eksperymentuj i zobacz, jak może to zmienić Twoje zarządzanie danymi.