0


kafka_3.7.0(sasl+acl)+管理工具redpanda

一、环境说明
IP操作系统服务192.168.11.100CentOs 7kafka , kowl192.168.11.101CentOs 7kafka192.168.11.102CentOs 7kafka
二、安装docker
略。。。

三、安装kafka

  1. path=/data/kafka
  2. mkdir-p${path}/{data,etc,log}chown-R5000${path}cat>${path}/etc/sasl_config.properties<<'EOF'
  3. sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="gohangout" password="Gohangout#XXXX";
  4. security.protocol=SASL_PLAINTEXT
  5. sasl.mechanism=PLAIN
  6. EOF# KAFKA_NODE_ID、 KAFKA_CFG_ADVERTISED_LISTENERS 、 KAFKA_CFG_CONTROLLER_QUORUM_VOTERS 根据实际情况填写cat>${path}/start.sh <<'EOF'
  7. #!/bin/bash
  8. cd `dirname $0`
  9. docker rm -f kafka
  10. docker run -d \
  11. --name kafka \
  12. --restart=always \
  13. --net host \
  14. --user 5000 \
  15. --add-host=logaudit_kafka_01:192.168.11.100 \
  16. --add-host=logaudit_kafka_02:192.168.11.101 \
  17. --add-host=logaudit_kafka_03:192.168.11.102 \
  18. -e KAFKA_NODE_ID=1 \
  19. -e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://logaudit_kafka_01:9092 \
  20. -e KAFKA_DAEMON_USER=5000 \
  21. -e KAFKA_DAEMON_GROUP=5000 \
  22. -e KAFKA_HEAP_OPTS="-Xmx512m -Xms512m" \
  23. -e KAFKA_CFG_PROCESS_ROLES=broker,controller \
  24. -e KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER \
  25. -e KAFKA_CFG_SASL_MECHANISM_CONTROLLER_PROTOCOL=PLAIN \
  26. -e KAFKA_CONTROLLER_USER=contr0ller \
  27. -e KAFKA_CONTROLLER_PASSWORD=Contr0ller#XXXX \
  28. -e KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:SASL_PLAINTEXT,CONTROLLER:SASL_PLAINTEXT \
  29. -e KAFKA_CFG_LISTENERS=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093 \
  30. -e KAFKA_ENABLE_KRAFT=yes \
  31. -e KAFKA_KRAFT_CLUSTER_ID="Aqvf7RVETX-DInZbNUXXXXXXX" \
  32. -e KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@192.168.11.100:9093,2@192.168.11.101:9093,3@192.168.11.102:9093 \
  33. -e ALLOW_PLAINTEXT_LISTENER=yes \
  34. -e KAFKA_TLS_CLIENT_AUTH=none \
  35. -e KAFKA_CFG_SASL_ENABLED_MECHANISMS=PLAIN \
  36. -e KAFKA_CLIENT_LISTENER_NAME=PLAINTEXT \
  37. -e KAFKA_CLIENT_USERS=gohangout \
  38. -e KAFKA_CLIENT_PASSWORDS=Gohangout#XXXX \
  39. -e KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true \
  40. -e KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR=3 \
  41. -e KAFKA_CFG_TRANSACTION_STATE_LOG_REPLICATION_FACTOR=3 \
  42. -e KAFKA_CFG_TRANSACTION_STATE_LOG_MIN_ISR=2 \
  43. -e KAFKA_CFG_ALLOW_EVERYONE_IF_NO_ACL_FOUND=true \
  44. -e KAFKA_CFG_SUPER_USERS=User:gohangout \
  45. -e KAFKA_CFG_AUTHORIZER_CLASS_NAME=org.apache.kafka.metadata.authorizer.StandardAuthorizer \
  46. -v `pwd`/etc/sasl_config.properties:/opt/bitnami/kafka/config/sasl_config.properties \
  47. -v `pwd`/data:/bitnami/kafka/ \
  48. -v /etc/localtime:/etc/localtime \
  49. bitnami/kafka:3.7.0
  50. EOFbash${path}/start.sh

四、 kafka测试

  1. dockerexec-it kafka bash#创建topic
  2. kafka-topics.sh --create --bootstrap-server 192.168.11.100:9092,192.168.11.101:9092,192.168.11.102:9092 --topictest --command-config /opt/bitnami/kafka/config/sasl_config.properties
  3. #生产
  4. kafka-console-producer.sh --bootstrap-server 192.168.11.100:9092,192.168.11.101:9092,192.168.11.102:9092 --topictest--producer.config /opt/bitnami/kafka/config/sasl_config.properties
  5. #消费
  6. kafka-console-consumer.sh --bootstrap-server 192.168.11.100:9092,192.168.11.101:9092,192.168.11.102:9092 --topictest--consumer.config /opt/bitnami/kafka/config/sasl_config.properties
  7. #扩容分区
  8. kafka-topics.sh --bootstrap-server 192.168.11.100:9092,192.168.11.101:9092,192.168.11.102:9092 --alter--topic log-smartgate --partitions3 --replication-factor 1 --command-config /opt/bitnami/kafka/config/sasl_config.properties
  9. #查询分区
  10. kafka-topics.sh --describe --bootstrap-server 192.168.11.100:9092,192.168.11.101:9092,192.168.11.102:9092 --topictest --command-config /opt/bitnami/kafka/config/sasl_config.properties
  1. #acl ,需要在添加启动参数
  2. kafka-acls.sh --bootstrap-server 192.168.11.100:9092,192.168.11.101:9092,192.168.11.102:9092 --add --allow-principal User:gohangout --operation ALL --topictest --command-config /opt/bitnami/kafka/config/sasl_config.properties
  3. Adding ACLs for resource `ResourcePattern(resourceType=TOPIC, name=test, patternType=LITERAL)`:(principal=User:gohangout, host=*, operation=ALL, permissionType=ALLOW)
  4. Current ACLs for resource `ResourcePattern(resourceType=TOPIC, name=test, patternType=LITERAL)`:(principal=User:gohangout, host=*, operation=ALL, permissionType=ALLOW)#这三台配置是与ALC有关#-e KAFKA_CFG_ALLOW_EVERYONE_IF_NO_ACL_FOUND=true \#-e KAFKA_CFG_SUPER_USERS=User:gohangout \#-e KAFKA_CFG_AUTHORIZER_CLASS_NAME=org.apache.kafka.metadata.authorizer.StandardAuthorizer \#ACL有以下权限
  5. Describe
  6. DescribeConfigs
  7. Alter
  8. IdempotentWrite
  9. Read
  10. Delete
  11. Create
  12. ClusterAction
  13. All
  14. CreateTokens
  15. DescribeTokens
  16. Write
  17. AlterConfigs
  18. #查看ACL授权
  19. kafka-acls.sh --bootstrap-server 192.168.11.103:9092 --list --command-config /opt/bitnami/kafka/config/sasl_config.properties
  20. Current ACLs for resource `ResourcePattern(resourceType=TOPIC, name=test, patternType=LITERAL)`:(principal=User:gohangout, host=*, operation=ALL, permissionType=ALLOW)

四、安装redpanda

  1. path=/data/kowl
  2. mkdir-p${path}/etc
  3. cat>${path}/etc/console.yaml <<'EOF'
  4. server:
  5. # listenAddress:
  6. listenPort: 19002
  7. logger:
  8. level: info
  9. analytics:
  10. enabled: false
  11. EOFcat>${path}/start.sh <<'EOF'
  12. docker rm -f kowl
  13. cd $(dirname $0)
  14. docker run -itd \
  15. --restart=always \
  16. --network host \
  17. --name kowl \
  18. --user 5000 \
  19. --add-host=logaudit_kafka_01:192.168.11.100 \
  20. --add-host=logaudit_kafka_02:192.168.11.101 \
  21. --add-host=logaudit_kafka_03:192.168.11.102 \
  22. -v /etc/localtime:/etc/localtime \
  23. -v `pwd`/etc/console.yaml:/app/console.yaml \
  24. -e KAFKA_BROKERS="logaudit_kafka_01:9092,logaudit_kafka_02:9092,logaudit_kafka_03:9092" \
  25. -e KAFKA_TLS_ENABLED=false \
  26. -e KAFKA_SASL_ENABLED=true \
  27. -e KAFKA_SASL_USERNAME=gohangout \
  28. -e KAFKA_SASL_PASSWORD="Gohangout#XXXX" \
  29. redpandadata/console:v2.4.5 \
  30. -config.filepath /app/console.yaml
  31. EOFbash${path}/start.sh

在这里插入图片描述

标签: kafka

本文转载自: https://blog.csdn.net/u010533742/article/details/136616708
版权归原作者 蓝~天~ 所有, 如有侵权,请联系我们删除。

“kafka_3.7.0(sasl+acl)+管理工具redpanda”的评论:

还没有评论