반응형
카산드라를 사용하면서 초기 설정 시에 해야할 내용을 정리
환경
OS : ubuntu
docker-compose 로 yml 파일을 정의하여 가동시킴
ersion: '3.9'
services:
cassandra:
image: cassandra:4.0
ports:
- 7000:7000
- 9042:9042
volumes:
- /data/apps/cassandra:/var/lib/cassandra
environment:
- CASSANDRA_CLUSTER_NAME=test
- CASSANDRA_USER=user
- CASSANDRA_PASSWORD=password
- CASSANDRA_DC=datacenter1
- CASSANDRA_RACK=rack0
컨테이너 접근
docker exec -it container_id /bin/bash
ubuntu vim install
apt-get update
apt-get install vim
/etc/cassandra/cassandra.yaml 수정
- :110 번줄로 이동
- 편집 상태로 변경하여 다음으로 수정 및 저장
#authenticator: AllowAllAuthenticator
authenticator: PasswordAuthenticator
재시작
컨테이너 접근을 빠져나와서 재시작
docker-compose -f cassandra.yml up -d
재시작을 한다고 위의 설정이 초기화되는 것은 아니다.
다만 yml 경로를 바꾸던가 컨테이너 아이디가 바뀐다면 새로운 컨테이너라서 다시 설정해줘야함.
컨테이너 재접근 및 cqlsh 접속
컨테이너 접근 후 다음을 실행하여 또 다른 수퍼유저를 생성하고 계정전환을 한 뒤 기존 수퍼유저를 삭제한다.
하는 김에 일반 유저도 하나 생성
test@asdfqewr123: cqlsh -u cassandra -p cassandra
user@cqlsh> CREATE USER testadmin WITH PASSWORD 'iamroot' SUPERUSER;
user@cqlsh> exit;
test@asdfqewr123: cqlsh -u testadmin -p iamroot
testadmin@cqlsh> drop user cassandra;
testadmin@cqlsh> CREATE USER user WITH PASSWORD 'password' NOSUPERUSER;
testadmin@cqlsh> LIST USERS;
제대로 생성되었다면 접근하는 곳 모두 계정정보를 통해 접근하게된다.
기존의 AllowAllAuthenticator
설정은 모두가 접근 가능한 상태이므로 보안상 좋지않다.
출처: https://jhproject.tistory.com/46 [JH PROJECT:티스토리]
반응형
'Database > Cassandra' 카테고리의 다른 글
Cassandra Backup & Restore Snapshot From Server To AWS S3 (0) | 2022.08.02 |
---|