简要介绍本文档重点介绍软件部署步骤,并不涉及软件源码编译步骤。文档中使用的软件都是从官网下载获取,这类软件多基于x86环境编译得到,软件内如果包含非跨平台语言(如C/C++)实现的模块,直接在TaiShan服务器上使用会出现不兼容的问题,需下载对应软件源码包进行编译,然后部署。但不管软件包是在哪种环境下编译得到,部署步骤都是一致的。建议的版本软件版本获取方法OpenJDKjdk8u252-b09Arm: cid:link_2x86: cid:link_3ZooKeeper3.4.6在官网下载所需版本的软件包。下载地址:cid:link_5Kafka2.11-2.2.0在官网下载所需版本的软件包。下载地址:cid:link_6硬件要求最低配置:任意CPU、一根内存(大小不限)、一块硬盘(大小不限)。具体配置视实际应用场景而定。操作系统要求适用于CentOS 7.4~7.6、openEuler 20.03~22.03操作系统。依次登录所有节点,将节点的主机名分别修改为server1、agent1、agent2、agent3。hostnamectl set-hostname 主机名 --static登录所有节点,添加集群所有节点的“地址-主机名”映射关系。打开“/etc/hosts”文件。vi /etc/hosts按“i”进入编辑模式,在hosts文件中添加以下内容。IPaddress1 server1
讯享网
IPaddress2 agent1 IPaddress3 agent2 IPaddress4 agent3按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。登录所有节点,关闭防火墙。systemctl stop firewalld.service systemctl disable firewalld.service登录所有节点,配置SSH免密登录。生成密钥,遇到提示时,按“Enter”。ssh-keygen -t rsa在每台机器上配置SSH免密登录(包括配置自身节点的免密)。ssh-copy-id -i ~/.ssh/id_rsa.pub root@节点IP登录所有节点,安装OpenJDK。下载OpenJDK并解压到“/usr/local”目录。ARM:wget cid:link_2 tar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz -C /usr/localx86:wget cid:link_3 tar -zxf OpenJDK8U-jdk_x64_linux_hotspot_8u252b09.tar.gz -C /usr/local将解压后的JDK目录的所属用户、所属用户组变更为“root”。chown -R root /usr/local/jdk8u252-b09 chgrp -R root /usr/local/jdk8u252-b09配置环境变量。打开“/etc/profile”文件。vi /etc/profile按“i”进入编辑模式,添加以下内容。export JAVA_HOME=/usr/local/jdk8u252-b09 export PATH=\(JAVA_HOME/bin:\)PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。使环境变量生效。source /etc/profile检查OpenJDK是否安装成功。java -version回显如下所示即为安装成功。下载并解压ZooKeeper登录agent1节点,进入“/usr/local”目录,下载zookeeper-3.4.6.tar.gz,并解压。cd /usr/local wget http://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz tar -zxvf zookeeper-3.4.6.tar.gz建立软链接,便于后期版本更换。ln -s zookeeper-3.4.6 zookeeper添加ZooKeeper到环境变量登录agent1节点,打开配置文件。vi /etc/profile按“i”进入编辑模式,添加ZooKeeper到环境变量。export ZOOKEEPER_HOME=/usr/local/zookeeper export PATH=\(ZOOKEEPER_HOME/bin:\)PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。修改ZooKeeper配置文件登录agent1节点,进入ZooKeeper所在目录。cd /usr/local/zookeeper/conf拷贝配置文件。cp zoo_sample.cfg zoo.cfg修改通用配置。打开文件。vi zoo.cfg按“i”进入编辑模式,修改数据目录。dataDir=/usr/local/zookeeper/tmp可选:添加AdminServer配置。(此配置项于ZooKeeper 3.5.0版本引入,低于此版本可跳过此步骤)admin.enableServer=false在文件末尾添加如下代码,其中server.1~server.3是部署ZooKeeper的节点。server.1=agent1:2888:3888 server.2=agent2:2888:3888 server.3=agent3:2888:3888按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。添加JMX配置。编辑文件zkServer.sh。vi /usr/local/zookeeper/bin/zkServer.sh按“i”进入编辑模式,添加JMX配置至图示位置。JMXDISABLE=true说明若使用ZooKeeper 3.6及以上版本,则可在“/usr/local/zookeeper/conf”目录下新建文件zookeeper-env.sh,将JMX配置设置在此文件中,便于后续配置调整。按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。可选:添加JVM配置。说明若使用ZooKeeper 3.6及以上版本,相关配置已预先设置完毕,可跳过此步骤。编辑文件zkEnv.sh。vi /usr/local/zookeeper/bin/zkEnv.sh按“i”进入编辑模式,添加如下配置至文件末尾。# default heap for zookeeper server ZK_SERVER_HEAP=“\({ZK_SERVER_HEAP:-10000}" export SERVER_JVMFLAGS="-Xmx\){ZK_SERVER_HEAP}m $SERVER_JVMFLAGS”
default heap for zookeeper client
ZK_CLIENT_HEAP=“\({ZK_CLIENT_HEAP:-256}" export CLIENT_JVMFLAGS="-Xmx\){ZK_CLIENT_HEAP}m \(CLIENT_JVMFLAGS"按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。创建“tmp”目录作数据目录。mkdir /usr/local/zookeeper/tmp在“tmp”目录中创建一个空文件,并向该文件写入myid内容。touch /usr/local/zookeeper/tmp/myid echo 1 > /usr/local/zookeeper/tmp/myid配置文件权限。chmod 750 /usr/local/zookeeper find /usr/local/zookeeper/bin -name "*.sh" | xargs -i chmod 500 {} find /usr/local/zookeeper/conf -name "*" -type f | xargs -i chmod 600 {} chown -R root /usr/local/zookeeper-3.4.6 chgrp -R root /usr/local/zookeeper-3.4.6同步配置到其它节点登录agent1节点,将配置好的ZooKeeper拷贝到其它节点。scp -r /usr/local/zookeeper-3.4.6 root@agent2:/usr/local scp -r /usr/local/zookeeper-3.4.6 root@agent3:/usr/local登录agent2、agent3,创建软链接并修改myid内容。agent2:cd /usr/local ln -s zookeeper-3.4.6 zookeeper echo 2 > /usr/local/zookeeper/tmp/myidagent3:cd /usr/local ln -s zookeeper-3.4.6 zookeeper echo 3 > /usr/local/zookeeper/tmp/myid使环境变量生效。source /etc/profile在agent2和agent3节点重复执行1~4,配置ZooKeeper的环境变量。请参见《Kafka 移植指南(CentOS&openEuler)》编译出Kafka软件部署包。将Kafka软件部署包放置于agent1节点的“/usr/local”目录下,并解压。mv kafka_2.11-2.2.0.tgz /usr/local tar -zxvf kafka_2.11-2.2.0.tgz说明若Kafka软件部署包名称不是kafka_2.11-2.2.0.tgz,请根据实际情况修改命令。建立软链接,便于后期版本更换。ln -s kafka_2.11-2.2.0 kafka说明若Kafka软件目录名称不是kafka_2.11-2.2.0,请根据实际情况修改命令。打开配置文件。vi /etc/profile按“i”进入编辑模式,添加Kafka到环境变量。export KAFKA_HOME=/usr/local/kafka export PATH=\)KAFKA_HOME/bin:\(PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。环境变量生效。source /etc/profile说明Kafka所有的配置文件都在“\)KAFKA_HOME/config”目录下,修改以下配置文件前,需要切换到“\(KAFKA_HOME/config”目录。cd \)KAFKA_HOME/config修改server.properties文件。打开文件。vi server.properties按“i”进入编辑模式,内容修改如下。broker.id=0 port=6667 host.name=agent1 log.dirs=/data/data1/kafka,/data/data2/kafka,/data/data3/kafka,/data/data4/kafka,/data/data5/kafka,/data/data6/kafka,/data/data7/kafka,/data/data8/kafka,/data/data9/kafka,/data/data10/kafka,/data/data11/kafka,/data/data12/kafka zookeeper.connect=agent1:2181,agent2:2181,agent3:2181说明其中,参数host.name可填写agent1对应的IP地址,log.dirs为实际的存储数据路径。按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。同步配置到其它节点。拷贝kafka_2.11-0.10.1.1到agent2、3的“/usr/local”目录下。scp -r /usr/local/kafka_2.11-2.2.0 root@agent2:/usr/local scp -r /usr/local/kafka_2.11-2.2.0 root@agent3:/usr/local登录到agent2、agent3节点,为kafka_2.11-2.2.0建立软链接。cd /usr/local ln -s kafka_2.11-2.2.0 kafka修改节点相关参数。登录agent2,修改server.properties。vi server.properties按“i”进入编辑模式,内容修改如下。broker.id=1 host.name=agent2 #可填对应的IP地址按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。登录agent3,修改server.properties。vi server.properties按“i”进入编辑模式,内容修改如下。broker.id=2 host.name=agent3 #可填对应的IP地址按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。分别在agent1~3上启动Kafka。cd /usr/local/kafka/bin https://developer.huaweicloud.com/tags//kafka-server-start.sh -daemon https://developer.huaweicloud.com/tags/config/server.properties观察进程是否都正常启动。jps说明agent节点应启动的进程以agent1为准,server无进程。分别在agent1~3上停止Kafka。cd /usr/local/kafka/bin https://developer.huaweicloud.com/tags//kafka-server-stop.sh

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/201021.html