kafka使用——安装配置(2)

基础环境配置

Kafka是用Scala语言开发的,鱼腥在JVM上,因此在安装Kafka之前需要安装JDK

JDK安装

最新版本的Kafka需要运行在JDK1.7以上,Kafka官方网站推荐使用JDK1.8,所以应用的JDK环境采用JDK1.8。

Windows安装

  1. 下载并安装。首先在oracle官方网站https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html下载JDK1.8安装文件,根据操作系统类型选择相应的JDK版本。

  2. 环境变量配置。在系统变量中新增变量名JAVA_HOME,变量值为JDK1.8安装路径。新增变量名CLASSPATH变量值为%JAVA_HOME%\lib\dt.jar,%JAVA_HOME%\lib\tools.jar。

  3. 验证。环境变量配置完成后,在Windows在cmd终端输入人查看Java版本的命令,以此来验证JDK安装配置是否成功。

    #查看版本
    java -version
    

Linux安装JDK

  1. 下载并安装。首先在oracle官方网站https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html下载JDK1.8安装文件,根据操作系统类型选择相应的JDK版本。

    tar -xzvf jdk-8u201-linux-x64.gz
    

    将安装包解压后就安装完成JDK。

  2. 配置环境变量。在/etc/profile文件中添加JDK和HRE的路径,并添加到Path中。

    添加内容

    export JAVA_HOME=/usr/local/software/Java/jdk/jdk1.8.0_201
    export JRE_HOME=/usr/local/software/Java/jdk/jdk1.8.0_201/jre
    export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
    

    新安装的JDK替换系统自带的OpenJDK

    • 将Java添加到bin

      update-alternatives --install /usr/local/software/Java/jdk/jdk1.8.0_201 300
      
    • 将Javac添加到bin

      update-alternatives —install /usr/bin/Javac Javac /usr/local/software/Java/jdk/jdk1.8.0_201/bin/Javac 300
      
    • 选择JDK版本

      update-alternatives —config Java
      

      执行该命令会出现JDK版本选择界面,选择重新安装的JDK版本即可。

  3. 验证。输入查看JDK版本命令,查看环境变量配置是否成功

    #查看版本
    java -version
    

SSH安装配置

对Kafka集群本身来讲,配置SSH免密钥登录并不是必须的步骤,单作为分布式系统,一般会由多台机器构成,为了方便操作管理,如通过SSH方式启动句群代理等。

  1. 在跟目录下查看是否存在一个影藏文件夹.ssh。若没有改文件夹,则在确保机器联网条件下执行以下命令安装SSH

    #安装ssh
    sudo apt-get install ssh
    
  2. 进入.ssh目录,生成密钥对

    #生成密钥
    ssh-keygen -t rsa
    

    在~/.ssh目录下生成id_rsa和id_rsa.pub两个文件,其中id_rsa为死要文件,id_rsa.pub为公钥文件。依次在集群机器上完成步骤1、2

  3. 将id_rsa.pub文件内容追加到授权的key文件夹中

    #追加公钥到授权文件中
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    

    若是单机环境,则已经完成配置。

  4. 将第一台机器的authorized_keys文件复制到第二胎机器上,并将第二胎机器的公钥也追加到authorized_keys文件中

    # 复制第一台机器的授权文件到第二胎机器
    scp authorized_keys root@ip:~/.ssh/
    # 在第二胎机器上执行此命令,将第二胎机器的公钥主驾到授权文件中
    cat ~/.ssh/id_rsa_.pub >> ~/.ssh/authorized_keys
    

ZooKeeper环境

ZooKeeper是一个分布式应用程序协调服务框架,分布式应用程序可以基于ZooKeeper来实现同步服务、配置维护、命名服务等,Zookeeper能提供基于类似于文件系统的目录节点树方式的数据存储,通过监控各节点数据状态的变化,达到基于数据的集群管理。

Kafka依赖Zookeeper,通过Zookeeper来对代理、消费者上下线管理、集群、分区元数据管理等。

进入Zookeeper官方网站https://www.apache.org/dyn/closer.cgi/zookeeper/下载Zookeeper,然后将下载文件解压到指定目录。

windows安装Zookeeper

  1. 解压安装。首先将Zookeeper安装包Zookeeper安装包解压到相对应的目录下,然后进入Zookeeper安装路径conf目录下,会看到Zookeeper提供一个zoo_sample.cfg的配置模板,将该文件重命名为zoo.cfg。zoo.cfg文件中只需要修改dataDir和dataLogDir配置,其他配置使用默认值。

    dataDir=F:\\zookeeper\\data
    dataLogDir=F:\\zookeeper\\logs
    
  2. 验证。执行启动Zookeeper命令。

    # windows 下启动Zookeeper
    zkServer.cmd
    

    若输出没有任何错误,通过jps命令可以看到Zookeeper相关进程。

    # 查看java进程命令
    jps
    

    也可以进入Zookeeper安装路径bin目录下,通过Zookeeper客户端连接到Zookeeper服务,执行以下命令进一步验证Zookeeper是否安装成功。

    zkCLi.cmd -server 127.0.0.1:2181
    

Linux搭建Zookeeper环境

  1. 解压安装。首先在3台服务器上分别解压到/usr/local/software/zookeeper目录,进入解压后的zookeeper/conf目录,将zoo.sample.cfg重命名为zoo.cfg,修改配置。

    dataDir=/opt/data/zookeeper/data
    dataLogDir=/opt/data/zookeeper/logs
    
  2. 集群配置。在其中一台机器的Zookeeper安装路径conf目录进行配置。

    server.1=server1:2888:3888
    server.2=server2:2888:3888
    server.3=server3:2888:3888
    

    在dataDir路径下创建一个myid文件。myid里面存放的值就是服务器的编号,Zookeeper在启动时会读取myid文件中的值与zoo.cfg文件中的配置信息进行比较,以确定服务器。

    设置Zookeeper安装路径,在、etc/profile相关环境变量配置中添加信息

    export ZOOKEEPER_HOME=/usr/local/software/zookeeper
    path=$PATH:$ZOOKEEPER_HOME/bin
    
  3. 验证。由于配置了Zookeeper环境变量,因此无需进入Zookeeper安装路径bin目录。

    # 启动Zookeeper服务
    zkServer.sh start
    

Docker部署

这个使用的是个人push到阿里云容器服务商的镜像

docker run --name zookeeper \
-p 2181:2181 \
-v /zookeeper/conf:/conf \
-v /zookeeper/data:/data \
-v /zookeeper/datalog:/datalog \
-v /zookeeper/logs:/logs \
-d registry.cn-hangzhou.aliyuncs.com/mikrotik/zookeeper:latest
  • -p:对外暴露的端口
  • -v:关联的数据卷
  • -d:后台启动容器

Kafka单机部署

Windows环境安装Kafka

  1. 下载及安装。进入Kafka官方网站http://kafka.apache.org/downloads下载。Kafka安装包并没有区分Windows安装包还是Linux安装包,仅在bin目录下降windows环境执行Kafka的相关脚本放在/bin/windows目录下。配置环境变量KAFKA_HOME
  2. 启动KafkaServer验证。安装好Kafka后,启动KafkaServer。坐在启动Kafka之前,需要启动Zookeeper。若Zookeeper服务不是本地服务,应该修改Kafka安装目录下/config/server.properties文件zookeeper.connect配置项,然后进入¥KAFKA_HOME/bin/windows目录启动kafkaServer。

Linux环境安装kafka

  1. 解压安装。先将Kafka解压到指定目录。

    指定Kafka安装路径

    export KAFKA_HOME=/usr/local/software/kafka
    

    将Kafka bin目录加到Path。

    export PATH=$PATH:$KAFKA_HOME/bin
    
  2. 修改配置。修改$KAFKA_HOME/config目录下的server.properties文件,broker.id需要唯一。

    broker.id=1
    log.dirs=/opt/data/kafka-logs
    
  3. 验证。

    启动Kafka,要保证Zookeeper已正常启动,进入Kafka安装路径$KAFKA_HOME/bin目录下,启动KafkaServer

    # 启动kafka
    kafka-server-start.sh -daemon ../config/server.properties
    

Docker部署

这个使用的是个人push到阿里云容器服务商的镜像

docker run --name kafka \ 
-p 9092:9092 \
-v /kafka/conf:/opt/kafka/config \
--link zookeeper:zookeeper
-e KAFKA_ADVERTISED_PORT=9092 \
-e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \
-e KAFKA_ADVERTISED_HOST_NAME=kafka \
-d registry.cn-hangzhou.aliyuncs.com/mikrotik/kafka:latest
  • -v:数据卷关联,方便修改配置文件
  • –link:关联的容器
  • -e:参数
  • -d:后台启动容器

集群环境部署

只需修改server.properties文件中Kafka连接Zookeeper的配置,将Kafka连接到Zookeeper集群,配置格式为Zookeeper服务器IP:Zookeeper的客户端端口,多个Zookeeper机器之间用逗号分隔。

猜你喜欢

转载自blog.csdn.net/qq_16782189/article/details/88628896