본문 바로가기

리눅스

Kafka(Zookeeper)를 systemd를 사용하여 시작, 중지 및 관리하는 방법

728x90

Kafka(Zookeeper)를 systemd를 사용하여 시작, 중지 및 관리하는 방법

Kafka(Zookeeper)를 Systemd로 관리하기 위해 새로운 Systemd Unit 파일을 생성합니다.

systemd 유닛 파일 생성

  • zookeeper
vim /etc/systemd/system/zookeeper.service
[Unit]
Requires=network.target remote-fs.target
After=network.target remote-fs.target

[Service]
Type=simple
User=root
Group=root
ExecStart=/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties
ExecStop=/usr/local/kafka/bin/zookeeper-server-stop.sh
Restart=on-abnormal

[Install]
WantedBy=multi-user.target
  • kafka
vim /etc/systemd/system/kafka.service
[Unit]
Requires=network.target remote-fs.target zookeeper.service
After=network.target remote-fs.target zookeeper.service

[Service]
Type=simple
User=root
Group=root
#ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties
ExecStart=/bin/sh -c '/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties > /usr/local/kafka/kafka.log 2>&1'
ExecStop=/usr/local/kafka/bin/kafka-server-stop.sh
Restart=on-abnormal

[Install]
WantedBy=multi-user.target
728x90

systemd 유닛 파일 설정 적용

systemd에 유닛 파일을 다시 로드합니다.

systemctl daemon-reload

서비스를 시작 및 시스템 부팅 시 자동 시작 설정

systemctl --now enable zookeeper.service
systemctl --now enable kafka.service

서비스 상태 확인

Kafka(Zookeeper) 서비스의 현재 상태를 표시합니다. 'Active: active (running)'와 같은 메시지가 표시되어야 합니다.

sudo systemctl status zookeeper
sudo systemctl status kafka

 

Kafka(Zookeeper)를 Systemd Unit 파일로 설치하고 서비스로 시작하면 시스템 부팅 시에도 Kafka가 자동으로 시작되므로 관리 및 유지 보수가 더 편리해집니다.

 

728x90