/opt/kafka
ディレクトリにKafkaをダウンロードしました。ユーザー名を持つユーザーを作成し、そのユーザーをグループkafkaadmin
に追加してユーザーとして実行できるようにしました。次に、Zookeeperをsystemdサービスとして設定し、以下に 。以下は構成ですwheel
root
zookeeper.service
/etc/systemd/system/zookeeper.properties
[Unit]
Requires=network.target remote-fs.target
After=network.target remote-fs.target
[Service]
Type=simple
User=kafkaadmin
ExecStart=/opt/kafka/bin/zookeeper-server-start.sh -daemon /opt/kafka/config/zookeeper.properties
ExecStop=/opt/kafka/bin/zookeeper-server-stop.sh
Restart=on-abnormal
[Install]
WantedBy=multi-user.target
実行すると、systemctl start zookeeper
サービスjournalctl -u zookeeper
が終了したことを示すメッセージが表示されます。
-- Logs begin at Sat 2021-05-08 12:48:37 UTC, end at Sat 2021-05-08 12:55:59 UTC. --
-- Logs begin at Sat 2021-05-08 12:48:37 UTC, end at Sat 2021-05-08 12:55:59 UTC. --
-- Logs begin at Sat 2021-05-08 12:48:37 UTC, end at Sat 2021-05-08 12:55:59 UTC. --
May 08 12:48:47 kafka-node systemd[1]: Started zookeeper.service.
May 08 12:48:51 kafka-node systemd[1]: zookeeper.service: Control process exited, code=exited status=1
May 08 12:48:51 kafka-node systemd[1]: zookeeper.service: Failed with result 'exit-code'.
May 08 12:51:49 kafka-node systemd[1]: Started zookeeper.service.
May 08 12:51:49 kafka-node zookeeper-server-start.sh[2171]: OpenJDK 64-Bit Server VM warning: Cannot open file /opt/kafka/bin/../logs/zookeeper-gc.log due to Permission denied
May 08 12:51:50 kafka-node zookeeper-server-start.sh[2171]: log4j:ERROR setFile(null,true) call failed.
May 08 12:51:50 kafka-node zookeeper-server-start.sh[2171]: java.io.FileNotFoundException: /opt/kafka/bin/../logs/server.log (Permission denied)
May 08 12:51:50 kafka-node zookeeper-server-start.sh[2171]: at java.io.FileOutputStream.open0(Native Method)at org.apache.log>lines 1-20at org.apache.log>lines 1-20
今すぐ実行しようとすると、systemctl start zookeeper
上記のエラーが発生します。これはkafkaadmin
rootユーザーです。このユーザーのサービスを開始するにはどうすればよいですか?私はどこで間違っていますか?