生产环境要用到kafka,记录一下安装过程,其实最重要的不是安装,而是使用。
时间节点是2022年7月10日,zookeeper的版本是3.4.14:
wget https://mirrors.cnnic.cn/apache/zookeeper/stable/zookeeper-3.4.14.tar.gz kafka的版本是3.2,注意前面的2.13是scala的版本
wget http://archive.apache.org/dist/kafka/3.2.0/kafka_2.13-3.2.0.tgz 软件都下载好以后,找三台服务器,软件都放到 /usr/local 路径下:
服务器的ip是:
172.18.31.50 172.18.31.51 172.18.31.52 移动软件:
tar zxvf zookeeper-3.4.14.tar.gz mv apache-zookeeper-3.6.3-bin /usr/local tar zxvf kafka_2.13-3.2.0.tgz mv kafka_2.13-3.2.0 /usr/local 然后得装 java 了,centos 版本
yum -y install epel-release yum -y install java-11-openjdk-devel 首先去编辑zookeeper的配置文件,然后启动
cp /usr/local/apache-zookeeper-3.6.3-bin/conf/zoo_sample.cfg /usr/local/apache-zookeeper-3.6.3-bin/conf/zoo.cfg 编辑zoo.cfg,增加几行
dataDir=/data/zookeeper metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider metricsProvider.httpPort=7000 metricsProvider.exportJvmInfo=true server.0=172.18.31.50:20881:30881 server.1=172.18.31.51:20881:30881 server.2=172.18.31.52:20881:30881 注意上面,我们的数据目录是在/data/zookeeper,所以要先建立好目录结构
然后有三台服务器么,把各自的id放到文件中,然后20881是三台服务器之间的通讯端口,30881是选举端口
mkdir /data/zookeeper -p echo 0 >/data/zookeeper/myid 三台服务器分别启动
/usr/local/apache-zookeeper-3.6.3-bin/bin/zkServer.sh start 验证一下
/usr/local/apache-zookeeper-3.6.3-bin/bin/zkCli.sh [zk: localhost:2181(CONNECTED) 1] ls / [admin, brokers, cluster, config, consumers, controller, controller_epoch, feature, isr_change_notification, latest_producer_id_block, log_dir_event_notification, zookeeper] 看看 / 下有东西就行了,上面是已经装好了 kafka 和 cruisecontrol的情形,东西就比较多了
...