This repository has been archived by the owner on Feb 8, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 45
Kafka Configuration
Ajay Paratmandali edited this page Jul 28, 2021
·
2 revisions
- Configure cortx-py-utils RPM
- Basic Configuration
yum install -y yum-utils
yum-config-manager --add-repo "${CORTX_RELEASE_REPO}/3rd_party/"
yum-config-manager --add-repo "${CORTX_RELEASE_REPO}/cortx_iso/"
rpm --import "${CORTX_RELEASE_REPO}/cortx_iso/RPM-GPG-KEY-Seagate"
- Install Kafka
yum install -y kafka* --nogpgcheck
- /etc/hosts
<NODE-1 eth2> srvnode-1
- message bus conf
- Create file /etc/cortx/message_bus.conf
{
"message_broker": {
"type": "kafka",
"cluster": [
{
"server": "srvnode-1",
"port": "9092"
}
]
}
}
- Check configuration of zookeeper
- Check /opt/kafka/config/zookeeper.properties
clientPort=2181
tickTime=2000
initLimit=10
syncLimit=5
dataLogDir=/var/log/zookeeper
dataDir=/var/lib/zookeeper
server.1=<CURRENT_NODE>:2888:3888
autopurge.snapRetainCount=3
autopurge.purgeInterval=24
4lw.commands.whitelist=*
- Check configuration of kafka
- Check /opt/kafka/config/server.properties
broker.id=1
listeners=PLAINTEXT://srvnode-1:9092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/var/log/kafka
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=srvnode-1:2181
zookeeper.connection.timeout.ms=18000
group.initial.rebalance.delay.ms=0
- Add broker id (same as in point 4)
echo "1" > /var/lib/zookeeper/myid
- Add Permission
mkdir -p /var/log/zookeeper /var/lib/zookeeper /var/log/kafka
chown -R kafka:kafka /var/log/zookeeper
chown -R kafka:kafka /var/lib/zookeeper
chown -R kafka:kafka /var/log/kafka
- Enable service
systemctl daemon-reload
systemctl enable kafka-zookeeper
systemctl enable kafka
- Start service
systemctl start kafka-zookeeper
sleep 5 # (kafka service needs zookeeper service to be up and running.)
systemctl start kafka
- /etc/hosts
<NODE-1 eth2> srvnode-1
<NODE-2 eth2> srvnode-2
<NODE-3 eth2> srvnode-3
- message bus conf
- Create file /etc/cortx/message_bus.conf
{
"message_broker": {
"type": "kafka",
"cluster": [
{
"server": "srvnode-1",
"port": "9092"
},
{
"server": "srvnode-2",
"port": "9092"
},
{
"server": "srvnode-3",
"port": "9092"
}
]
}
}
- Check configuration of zookeeper
- Check /opt/kafka/config/zookeeper.properties
clientPort=2181
tickTime=2000
initLimit=10
syncLimit=5
dataLogDir=/var/log/zookeeper
dataDir=/var/lib/zookeeper
server.1=srvnode-1:2888:3888
server.2=srvnode-2:2888:3888
server.3=srvnode-3:2888:3888
autopurge.snapRetainCount=3
autopurge.purgeInterval=24
4lw.commands.whitelist=*
- Check configuration of kafka
- Check /opt/kafka/config/server.properties
- Keep broker.id different for each node
- Update listeners name to current node name
broker.id=1
listeners=PLAINTEXT://srvnode-1:9092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/var/log/kafka
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=3
transaction.state.log.replication.factor=3
transaction.state.log.min.isr=2
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=srvnode-1:2181,srvnode-2:2181,srvnode-3:2181
zookeeper.connection.timeout.ms=18000
group.initial.rebalance.delay.ms=0
default.replication.factor=3
- Add broker id (same as in point 4)
echo "1" > /var/lib/zookeeper/myid
- Add Permission
mkdir -p /var/log/zookeeper /var/lib/zookeeper /var/log/kafka
chown -R kafka:kafka /var/log/zookeeper
chown -R kafka:kafka /var/lib/zookeeper
chown -R kafka:kafka /var/log/kafka
- Enable service
systemctl daemon-reload
systemctl enable kafka-zookeeper
systemctl enable kafka
- Start service
systemctl start kafka-zookeeper
sleep 5 # (kafka service needs zookeeper service to be up and running.)
systemctl start kafka
- Cleanup
rm -rf /opt/kafka/config/server.properties
rm -rf /opt/kafka/config/zookeeper.properties
rm -rf /etc/cortx/message_bus.conf
rm -rf /var/log/zookeeper /var/lib/zookeeper /var/log/kafka
yum remove -y kafka* --nogpgcheck
/opt/kafka/bin/kafka-topics.sh --create --topic alerts --bootstrap-server srvnode-1:9092
/opt/kafka/bin//kafka-topics.sh --delete --topic alerts --bootstrap-server srvnode-1:9092
/opt/kafka/bin/kafka-console-consumer.sh --topic alerts --from-beginning --bootstrap-server srvnode-1:9092