kafka三实例集群环境搭建及测试使用

单机搭建分为两部分:1. 软件安装启动 2. 软件配置

软件安装启动:

# 切换到目录
cd /app
# 获取kafka最新安装包,这边使用的是镜像地址,可以去官方网站获得最新地址版本号使用kafka_2.11-1.1.0.tgz,可以自己下载上传上去
wget http://mirrors.hust.edu.cn/apache/kafka/0.11.0.1/kafka_2.11-0.11.0.1.tgz
# 解压软件包
tar -zxvf kafka_2.11-1.1.0.tgz
# 创建软连接
ln -s kafka_2.11-1.1.0 kafka
# 进入配置文件
cd /app/kafka/config
mkdir -p /app/kafka/logdirs
# 启动kafka之前先保证zookeeper是启动的,保证java环境是安装的,修改丢应的配置
vim server.properties
# 启动kafka服务
/app/kafka/bin/kafka-server-start.sh -daemon /app/kafka/config/server.properties
# 添加主题
bin/kafka-topics.sh --create --zookeeper 172.16.48.129:2181 --replication-factor 1 --partitions 1 --topic test
# 得到Created topic "test"成功的提示
# 添加生产者
bin/kafka-console-producer.sh --broker-list 172.16.48.129:9092 --topic test
# 输入文字:This is a message
# 添加生产者
bin/kafka-console-consumer.sh --bootstrap-server 172.16.48.129:9092 --topic test --from-beginning
# 收到文字:This is another message
# 生成者发送消息,消费者收到消息即可

单机配置

配置kafka的server.properties的配置文件
# 修改zookeeper连接地址
zookeeper.connect=172.16.48.129:2181
# 修改kafka日志地址
log.dirs=/app/kafka/logdirs
# 在broker.id=0下面添加端口以及ip绑定的功能,内网ip地址
host.name=172.16.48.129

集群搭建

集群配置:server.properties

# 设定服务标记id,每一台的id需要不相同当前分别对应1、2、3
broker.id=1
# 设定绑定的host名称,绑定对应自己的内网ip地址
host.name=172.19.131.247
# 设定主体同步数量和集群数量相同
offsets.topic.replication.factor=3
transaction.state.log.replication.factor=3
transaction.state.log.min.isr=3
# 配置参数设定在log.retention.hours下面
message.max.byte=5242880
default.replication.factor=3
replica.fetch.max.bytes=5242880
# zookeeper配置地址
zookeeper.connect=172.16.48.129:2181,172.16.48.130:2181,172.16.48.131:2181
# 允许删除主题
delete.topic.enable=true

高可用测试:

虚拟机1 虚拟机2 虚拟机3
172.16.48.129 172.16.48.130 172.16.48.131
kafka1 kafka2 kafka3
# 创建测试主题
/app/kafka/bin/kafka-topics.sh --create --zookeeper 172.16.48.129:2181,172.16.48.130:2181,172.16.48.131:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
# 结果:Created topic "my-replicated-topic".
# 检查主题状态
/app/kafka/bin/kafka-topics.sh --describe --zookeeper 172.16.48.129:2181,172.16.48.130:2181,172.16.48.131:2181 localhost:2181 --topic my-replicated-topic
# 结果:Topic:my-replicated-topic PartitionCount:1 ReplicationFactor:3 Configs:
# Topic: my-replicated-topic Partition: 0 Leader: 3 Replicas: 3,1,2 Isr: 3,1,2
# 一个生产者
/app/kafka/bin/kafka-console-producer.sh --broker-list 172.16.48.129:9092,172.16.48.130:9092,172.16.48.131:9092 --topic my-replicated-topic
# 三个消费者:
/app/kafka/bin/kafka-console-consumer.sh --bootstrap-server 172.16.48.129:9092,172.16.48.130:9092,172.16.48.131:9092 --from-beginning --topic my-replicated-topic

通过监控集群以及生产和消费,来判断高可用情况的测试

# 通过主题状态监控集群的leader和Replicas和Isr
/app/kafka/bin/kafka-topics.sh --describe --zookeeper 172.16.48.129:2181,172.16.48.130:2181,172.16.48.131:2181 localhost:2181 --topic my-replicated-topic
# 分别停止leader的服务的kafka服务,来检查是否可以生产和消费的情况
/app/kafka/bin/kafka-server-start.sh -daemon /app/kafka/config/server.properties
/app/kafka/bin/kafka-server-stop.sh

结论:kafka环境在zookeeper没有挂的情况下,允许只剩下一台还能够工作。

常用操作

配置路径

常用配置:/app/kafka/config

日志路径

日志路径:/app/kafka/logs

【运维技术】kafka三实例集群环境搭建及测试使用的更多相关文章

  1. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(三)安装spark2.2.1

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

  2. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十一)定制一个arvo格式文件发送到kafka的topic,通过Structured Streaming读取kafka的数据

    将arvo格式数据发送到kafka的topic 第一步:定制avro schema: { "type": "record", "name": ...

  3. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十一)NIFI1.7.1安装

    一.nifi基本配置 1. 修改各节点主机名,修改/etc/hosts文件内容. 192.168.0.120 master 192.168.0.121 slave1 192.168.0.122 sla ...

  4. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十)安装hadoop2.9.0搭建HA

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

  5. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(九)安装kafka_2.11-1.1.0

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

  6. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(八)安装zookeeper-3.4.12

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

  7. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十三)kafka+spark streaming打包好的程序提交时提示虚拟内存不足(Container is running beyond virtual memory limits. Current usage: 119.5 MB of 1 GB physical memory used; 2.2 GB of 2.1 G)

    异常问题:Container is running beyond virtual memory limits. Current usage: 119.5 MB of 1 GB physical mem ...

  8. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十二)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网。

    Centos7出现异常:Failed to start LSB: Bring up/down networking. 按照<Kafka:ZK+Kafka+Spark Streaming集群环境搭 ...

  9. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二)安装hadoop2.9.0

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

随机推荐

  1. linux下jdk,tomcat的安装

    一.安装jdk 1.jdk下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.ht ...

  2. 动态调整UITableViewCell高度的实现方法

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPa ...

  3. nested exception is org.springframework.beans.factory.BeanCreationException: 不能注入对象 创建对象失败 spring

    [出现错误的背景] 在使用Spring+SpringMVC+Mybatis SSM集成框架时,服务器启动就会报错. [错误根源] XML配置错误. [解决方案] 第一步.查找springmvc.xml ...

  4. AndroidWear开发之下载SDK[Android W/Android L]

    Android L Developer Preview SDK发布了,但是天朝还是无法更新到.打开SDK Manager依旧一成不变,这时候就需要利器了. 第一步: 打开Goagent,不要说不知道什 ...

  5. 配置maven使用nexus

    本文简单介绍使用配置maven使用nexus仓库,在团队中使用nexus,避免每个人都从中央仓库去下载依赖,节省带宽,提高下载速度,同时也减少了中央仓库的压力 配置在maven中使用nexus很简单( ...

  6. Portal是用来干什么的?

    portal是指一个门户网站 例如sina就采用了Portal技术 他是.net的一个开源的网站模版什么是Portal?英文字面是“入口”,国内有叫“门户”技术的,但我觉得“集成”技术更能表达它的意思 ...

  7. 【BZOJ3529】[Sdoi2014]数表 莫比乌斯反演+树状数组

    [BZOJ3529][Sdoi2014]数表 Description 有一张N×m的数表,其第i行第j列(1 < =i < =礼,1 < =j < =m)的数值为能同时整除i和 ...

  8. KM算法(最优匹配)

    hdu2255 奔小康赚大钱 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  9. nginx解决带_的head内容丢失

    若请求 Head 信息中存在自定义信息并且以 "_" 下划线间隔,则必须配置underscores_in_headers 否则 Head 无法向 Tomcat 转发 解决办法: 在 ...

  10. Educational Codeforces Round 29

    A. Quasi-palindrome 题目链接:http://codeforces.com/contest/863/problem/A 题目意思:问一个数可不可以在不上一些前缀0以后变成一个回文数. ...