Rocky Linux 9/8에 Apache Cassandra를 설치하는 방법

Apache Cassandra는 많은 상용 서버에서 대량의 데이터를 처리하도록 설계된 확장성이 뛰어난 고성능 분산 데이터베이스로, 단일 장애 지점 없이 고가용성을 제공합니다. 여러 데이터 센터에 걸쳐 있는 클러스터에 대한 강력한 지원으로 유명하며, 비동기식 마스터리스 복제를 통해 낮은 대기 시간과 운영 단순성을 제공합니다. Cassandra는 높은 쓰기 처리량, 내결함성 및 선형 확장성을 요구하는 애플리케이션에 이상적입니다.

다음 가이드에서는 명령줄 명령을 사용하여 Rocky Linux 9 또는 8에 Apache Cassandra를 설치하는 단계를 보여줍니다. 이 프로세스에는 분산 데이터베이스 환경에 대한 최적의 성능과 안정성을 보장하기 위해 적절한 저장소를 설정하고 시스템을 구성하는 작업이 포함됩니다.

Apache Cassandra 설치 전에 Rocky Linux 시스템 업데이트

먼저, Apache Cassandra를 설치하기 전에 NoSQL 데이터베이스를 설치할 때 발생할 수 있는 문제를 방지하기 위해 모든 시스템 패키지가 최신 상태인지 확인하는 것이 좋습니다.

터미널에서 다음 명령을 실행하고 해결되지 않은 패키지를 업그레이드하세요.

sudo dnf upgrade --refresh

Apache Cassandra 저장소 가져오기

첫 번째 단계에서는 Apache Cassandra용 저장소를 가져오는 작업이 포함됩니다. 다행히도 단일 명령으로 이 작업을 수행할 수 있습니다. 튜토리얼에서는 5.0, 4.0 또는 4.1 분기를 가져오는 방법을 보여줍니다. 3.xx 브랜치가 거의 끝나가고 있으므로 튜토리얼에는 이를 추가하는 지침이 포함되어 있지 않습니다.

4.0 아파치 카산드라 RPM 가져오기

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 아파치 카산드라 RPM 가져오기

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 아파치 카산드라 RPM 가져오기

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

DNF 명령을 통해 Apache Cassandra 설치

다음 명령을 사용하여 Cassandra를 설치할 수 있습니다. 저장소를 가져왔습니다.

sudo dnf install cassandra -y

다음 명령을 실행하여 설치된 버전을 확인합니다.

cassandra -v

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

암호화 정책을 변경하고 정책을 LEGACY로 설정합니다.

sudo update-crypto-policies --set LEGACY

경우에 따라 이 변경 사항을 성공적으로 적용하려면 재부팅해야 할 수도 있습니다. 나는 당신이 필요하지 않다는 것을 알았지만 권장됩니다.

reboot

Apache Cassandra 시스템 서비스 생성

설치가 완료되면 systemd 서비스를 생성해야 합니다. 다시 한번 말하지만 이는 간단한 작업입니다. 다음 명령을 복사하여 붙여넣어 파일을 만듭니다.

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

Cassandra 서비스 사용을 시작하려면 데몬을 다시 로드해야 하며 이 단계를 건너뛸 수 없습니다.

sudo systemctl daemon-reload

이제 Cassandra 서비스를 시작합니다.

sudo systemctl start cassandra

다음으로 Cassandra의 systemctl 상태를 확인하여 오류가 없는지 확인하세요.

systemctl status cassandra

선택적으로 다음 명령을 사용하여 컴퓨터나 서버를 시작할 때 자동 시작 시 Cassandra 서비스를 활성화할 수 있습니다.

sudo systemctl enable cassandra

Rocky Linux에 Apache Cassandra 클라이언트(cqlsh) 설치

파이썬 설치

Cassandra 클라이언트를 설치하기 전에 시스템에서 Python을 사용할 수 있는지 확인하세요. Apache Cassandra의 클라이언트, cqlsh는 Python 기반이므로 Python이 전제 조건입니다. 다음을 실행하여 Rocky Linux에 Python을 설치합니다.

sudo dnf install python3 -y

PIP 설치

다음으로 Python 패키지 관리를 위해 Python의 패키지 관리자인 PIP를 설치합니다. Cassandra Python 드라이버를 설치하려면 PIP가 필수적입니다. PIP가 시스템에 아직 설치되지 않은 경우 다음을 실행하여 추가하십시오.

sudo dnf install python3-pip -y

Cassandra Python 드라이버 설치

Cassandra Python 드라이버는 다음 작업에 필요합니다. cqlsh Cassandra 데이터베이스에 연결합니다. 이 드라이버를 사용하면 클라이언트와 데이터베이스 간의 통신이 가능해집니다. 다음 명령으로 PIP를 사용하여 드라이버를 설치합니다.

pip install cassandra-driver

cqlsh 설치

필수 구성 요소가 준비되었으므로 이제 설치할 준비가 되었습니다. cqlsh. 이 명령줄 인터페이스를 사용하면 Apache Cassandra와의 상호 작용을 통해 쿼리를 실행하고 데이터베이스를 관리할 수 있습니다. 설치하다 cqlsh 다음을 실행하여:

pip install cqlsh

마지막으로 다음 명령을 사용하여 cqlsh에 연결합니다.

cqlsh

성공적인 연결의 출력 예:

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

Apache Cassandra 구성

Cassandra를 설정하고 개인화하려면 구성 파일을 변경하고 특정 명령줄 유틸리티를 활용해야 합니다.

기본 구성 설정

Cassandra의 주요 구성 파일은 다음 위치에 있습니다. /etc/cassandra. 한편, 로그 및 데이터 디렉터리는 일반적으로 다음 위치에 있습니다. /var/log/cassandra 그리고 /var/lib/cassandra 각기.

힙 크기와 같은 JVM 수준 조정의 경우 /etc/cassandra/conf/cassandra-env.sh 파일. 이 파일 내에서 보충 JVM 명령줄 인수를 추가할 수 있습니다. JVM_OPTS Cassandra가 시작 시 읽는 변수입니다.

Apache Cassandra로 사용자 인증 활성화

사용자 인증을 활성화하기 전에 백업을 생성하는 것이 좋습니다. /etc/cassandra/conf/cassandra.yaml 파일:

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

이어서, cassandra.yaml 파일:

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

파일 내에서 다음 매개변수를 검색하고 수정하려고 합니다.

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

필요에 따라 다른 설정을 조정하고, 주석 처리된 것으로 나타나면 주석 처리를 해제하세요. 파일을 저장하여 편집 프로세스를 완료합니다.

그런 다음 Cassandra를 재부팅하여 수정 사항을 적용합니다.

sudo systemctl restart cassandra

Apache Cassandra에 대한 관리 수퍼유저 추가

이제 인증이 활성화되었으므로 사용자를 구성하는 것이 필수적입니다. Cassandra Command 셸 유틸리티를 사용하여 기본 사용자 자격 증명을 사용하여 로그인합니다.

cqlsh -u cassandra -p cassandra

대체하여 새 수퍼유저를 시작합니다. [username] 그리고 [yourpassword] 당신의 구체적인 내용:

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

그런 다음 종료하고 새 수퍼유저 세부정보로 다시 로그인하세요.

cqlsh -u username -p yourpassword

기본 Cassandra 계정의 높은 권한을 줄입니다.

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

그리고 슈퍼유저에게 모든 권한을 부여하세요.

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

로그아웃하여 이 섹션을 마무리하세요.

콘솔 구성 사용자 정의

Cassandra Shell은 필요에 맞게 맞춤화할 수 있습니다. 이는 다음에서 구성을 읽습니다. cqlshrc 에서 찾은 파일 ~/.cassandra 예배 규칙서. 가능한 설정에 대한 통찰력을 제공하는 샘플 파일은 다음 위치에 있습니다. /etc/cassandra/conf/cqlshrc.sample.

다음 샘플 파일을 복사하여 시작하세요.

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

조정하다 cqlshrc 파일 권한:

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

편집을 위해 엽니다.

nano ~/.cassandra/cqlshrc

슈퍼유저 자격 증명으로 로그인을 자동화하려면 다음 섹션을 찾아서 편집하십시오.

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

편집을 완료한 후 저장하는 것을 잊지 마세요. 이제 Cassandra 셸에 로그인하면 변경 사항이 반영됩니다.

cqlsh

클러스터 이름 바꾸기

시스템을 더 쉽게 식별할 수 있도록 클러스터 이름을 바꿀 수도 있습니다. 로그인하여 시작하세요. cqlsh 단말기:

cqlsh

바꾸다 [new_name] 원하는 클러스터 이름으로:

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

터미널을 종료하고 엽니다. /etc/cassandra/conf/cassandra.yaml 추가 편집을 위해:

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

찾기 cluster_name 변수를 선택하고 해당 값을 선택한 이름으로 바꿉니다. 변경 사항을 저장합니다.

마지막으로 Cassandra의 시스템 캐시를 삭제합니다.

nodetool flush system

카산드라를 다시 시작합니다.

sudo systemctl restart cassandra

셸에 로그인하면 선택한 클러스터 이름이 표시됩니다.

구성 변경 확인

구성을 변경한 후에는 항상 해당 내용이 적용되었는지 확인하고 Cassandra 클러스터의 전반적인 상태를 확인하는 것이 좋습니다.

클러스터 이름 확인: 다시 로그인할 때 이름 변경 프로세스를 게시하세요. cqlsh 껍데기:

cqlsh

이제 프롬프트에 새로 설정된 클러스터 이름이 표시됩니다.

결론

이 가이드에서는 버전 9와 8을 모두 포함하여 Rocky Linux에 Apache Cassandra를 설치하는 단계를 안내했습니다. 이러한 지침은 빅 데이터 요구 사항에 맞는 강력하고 확장 가능한 데이터베이스 솔루션을 제공합니다. Cassandra의 성능과 보안을 유지하려면 정기적으로 업데이트를 확인하세요. Cassandra를 사용하여 기능을 완전히 익히는 연습을 해보세요. 자세히 알아보고, 실험하고, 데이터 관리를 어떻게 변화시킬 수 있는지 알아보세요.

Joshua James

코멘트를 남겨주세요