update-hubble-target
수집 대상 클러스터 추가
아래와 같은 주소에 ZooKeeper ensemble이 신규로 구동되었다고 가정합니다.
새로 구동된 클러스터를 Arcus Hubble V3의 수집 대상으로 추가하려면, Arcus Exporter, ZooKeeper Exporter를 새로 구동하고 필요 시 각 장비에 Node Exporter를 구동해야 합니다. 그리고 Prometheus, Orbiter를 재구동해주어야 합니다.
Arcus Exporter 구동 (Memcached 서버 메트릭 수집)
설정 파일(/INSTALL_DIR/arcus_exporter/conf/new.json
) 작성
/INSTALL_DIR/arcus_exporter/conf/new.json
) 작성listen
: 기존에 사용 중인 port와 중복되지 않도록 설정합니다.ensemble
: ZK 도메인 또는 서버 목록을 입력합니다.log.filename
: 설정파일과 동일한 이름으로 설정하는 것을 권장합니다.기타 설정은 arcus_exporter config 참고 바랍니다.
구동
ZooKeeper Exporter 구동 (ZooKeeper 서버 메트릭 수집)
만약 ZooKeeper Exporter를 구동 중인 상태에서 ZK DNS 변경이 발생했다면 자동 반영되지 않으므로 재구동이 필요합니다.
설정 파일(/INSTALL_DIR/zookeeper_exporter/conf/new.env
) 작성
/INSTALL_DIR/zookeeper_exporter/conf/new.env
) 작성LISTEN_PORT
: 기존에 사용 중인 port와 중복되지 않도록 설정합니다.ZK_DOMAIN
orZK_SERVERS
: domain 주소를 입력하거나, 각 서버 주소를 입력합니다.
구동
Node Exporter 구동 (호스트 장비 메트릭 수집)
수집 대상 장비에 Node Exporter 구동
각 캐시 장비마다 node_exporter 설치 후 구동합니다.
NODE_EXPORTER_TARGET
: node exporter를 띄울 host를 설정합니다.
Prometheus 설정 변경 및 reload
설정 변경
Arcus Exporter 설정 파일(
/INSTALL_DIR/prometheus/conf/exporter/arcus_exporter.json
)에 새로 구동한 arcus_exporter 주소를 추가합니다.
ZooKeeper Exporter 설정 파일(
/INSTALL_DIR/prometheus/conf/exporter/zookeeper_exporter.json
)에 새로 구동한 ZooKeeper Exporter 주소를 추가합니다.
Node Exporter 설정 파일(
/INSTALL_DIR/prometheus/conf/exporter/node_exporter.json
)에 새로 구동한 Node Exporter 주소를 추가합니다.
설정 파일 reload
아래와 같이 HTTP 요청을 보내 Prometheus 프로세스를 리로드합니다.
Orbiter 설정 변경 및 reload
설정 변경
Orbiter 설정 파일(
/INSTALL_DIR/orbiter/config.json
)에 새로 구동한 ZooKeeper ensemble의 이름과 주소를 추가합니다.
설정 파일 reload
아래와 같이 HTTP 요청을 보내 Orbiter 프로세스를 리로드합니다.
수집 대상 클러스터 제거
아래와 같은 주소에 구동되어 있던 ZooKeeper ensemble을 제거하기 위해 수집 대상에서 먼저 제거한다고 가정합니다.
클러스터를 Arcus Hubble V3의 수집 대상에서 제거하려면, Orbiter, Prometheus를 재구동하고 Arcus Exporter, Node Exporter, ZooKeeper Exporter를 종료해야 합니다.
Orbiter 설정 변경 및 reload
설정 변경
Orbiter 설정 파일(
/INSTALL_DIR/orbiter/config.json
)에서 수집이 필요 없어진 ZooKeeper ensemble의 이름과 주소를 제거합니다.
설정 파일 reload
아래와 같이 HTTP 요청을 보내 Orbiter 프로세스를 리로드합니다.
Prometheus 설정 변경 및 reload
설정 변경
Arcus Exporter 설정 파일(
/INSTALL_DIR/prometheus/conf/exporter/arcus_exporter.json
)에서 제거 대상인 ZooKeeper ensemble 캐시 서버들의 지표를 수집 중인 Arcus Exporter 주소를 제거합니다.
ZooKeeper Exporter 설정 파일(
/INSTALL_DIR/prometheus/conf/exporter/zookeeper_exporter.json
)에서 제거 대상인 ZooKeeper ensemble의 지표를 수집 중인 ZooKeeper Exporter 주소를 제거합니다.
node_exporter (
/INSTALL_DIR/prometheus/conf/exporter/node_exporter.json
)에서 제거 대상인 ZooKeeper ensemble 장비의 지표를 수집 중인 Node Exporter 주소를 제거합니다.
설정 파일 reload
아래와 같이 HTTP 요청을 보내 Prometheus 프로세스를 리로드합니다.
Arcus Exporter, ZooKeeper Exporter 프로세스 종료
ps -ef
와grep
명령어를 사용해 제거될 ZooKeeper ensemble의 주소를 담은 exporter 프로세스들의 PID를 찾고 종료시킵니다.
ps -ef | grep hubble | grep new
kill <pid>
캐시 장비 Node Exporter 프로세스 종료
각 ZooKeeper, Arcus 캐시 서버가 구동되었던 장비에 있던 Node Exporter 프로세스의 PID를 찾고 종료시킵니다.
ssh <cache host> "ps -ef | grep node_exporter"
ssh <cache host> "kill <pid>"
Service code 단위 수집 대상 추가/제거
Arcus Exporter는 기본적으로 하나의 ZooKeeper ensemble에 등록된 모든 클러스터 정보를 수집합니다.
일부 클러스터에 대한 메트릭만 수집하려면
serviceCodes
설정에 수집하려는 클러스터의 service code 목록을 지정합니다.그 외 구성 요소의 설정은 상단의 수집 대상 추가/제거 항목을 참고하여 진행합니다.
ZooKeeper Exporter
Node Exporter
Orbiter
Prometheus
Last updated