*********************************配置主机名,通过主机名连接机器*********************************

比如说,已经有了三台主机

1,在linux上设置hostname,通过hostname来访问linux虚拟机

1.1. 修改hosts文件

vim /etc/hosts#/etc/hosts 的内容一般有如下类似内容:
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.202.156    node1
192.168.202.157    node2
192.168.202.158    node3

node1我当时没有专门加这一行,而是直接在127.0.0.1后面,把localhost.localdomain修改为 node1

1.2. 修改network

修改配置文件/etc/sysconfig/network
修改HOSTNAME=yournameNETWORKING=yes
HOSTNAME=node1

然后三台机器重启,reboot

重启后,ssh node2 ,发现能通过主机名字,连上

*********************************不同机器间,免密访问*********************************

通过secureCRT,send commands to all sessions,可以达到一个输入,在多个linux中响应

免密访问可以看 http://blog.chinaunix.net/uid-26284395-id-2949145.html

1、ssh-keygen

2、ssh-copy-id -i  /root/.ssh/id_rsa.pub node1  (更换node2、3,然后一共重复三遍,将每台机器的publickey放到三台机器中)

最后,可以查看 cat /root/.ssh/authorized_keys 是否有node1、2、3,有的话就是可以

通过ssh node1、2、3,可以分别连上三台机器。

*********************************安装clustershell*********************************

我的linux是CentOS6.5

去下载包 clustershell-1.6-1.el6.noarch.rpm — RPM RHEL6/CentOS6/SL6

https://github.com/cea-hpc/clustershell/downloads

执行命令,安装:rpm -ivh clustershell-1.6-1.el6.noarch.rpm

安装成功后,

vim /etc/clustershell/groups在groups里面加一个组kafka: node[1-3]

这样就把node[1-3] 加入到kafka这个组里面。

这样,clustershell 安装成功

clush  -g kafka -c /opt/kafka

可以将/opt/kafka复制到集群中这个组中去

*********************************安装zookeeper,并启动*********************************

cd zookeeper-3.4.10cd conf/cp zoo_sample.cfg zoo.cfgvim zoo.cfg
加入:
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888clush -g kafka -c zoo.cfg clush -g kafka mkdir /tmp/zookeeperecho "1" > /tmp/zookeeper/myid[root@node1 conf]# clush -g kafka cat /tmp/zookeeper/myid
node3: 3
node2: 2
node1: 1[root@node1 zookeeper-3.4.10]# clush -g kafka "/opt/kafka/zookeeper-3.4.10/bin/zkServer.sh start /opt/kafka/zookeeper-3.4.10/conf/zoo.cfg "
node1: ZooKeeper JMX enabled by default
node1: Using config: /opt/kafka/zookeeper-3.4.10/conf/zoo.cfg
node2: ZooKeeper JMX enabled by default
node3: ZooKeeper JMX enabled by default
node2: Using config: /opt/kafka/zookeeper-3.4.10/conf/zoo.cfg
node3: Using config: /opt/kafka/zookeeper-3.4.10/conf/zoo.cfg
node1: Starting zookeeper ... STARTED
node2: Starting zookeeper ... STARTED
node3: Starting zookeeper ... STARTED[root@node1 zookeeper-3.4.10]# clush -g kafka "/opt/kafka/zookeeper-3.4.10/bin/zkServer.sh status /opt/kafka/zookeeper-3.4.10/conf/zoo.cfg "通过看各个节点的状态,验证zookeeper集群是否启动成功也可以通过看 2181/2888/3888这几个端口是否都被占用来验证

如果没有启动成功,那就可能是防火墙的问题,吧防火墙关了即可

clush -g kafka service iptables stop

接下来,可以看看三台机器数据是不是同步的:
在 node1 上,用 zookeeper 的客户端工具,连接服务器
bin/zkCli.sh -server node1:2181
#
#
#
#
ls /
会看到 / 下面的一些东西
也可以创建一个节点,并给他一个值hello:
create /test hello
ls / 可以看一下
然后在 node2 上,如果可以看到node1 创建的数据,说明数据是同步一致的:
bin/zkCli.sh -server node1:2181get /test 可以看到刚才输入的hello通过quit可以退出

*********************************安装kafka,并启动*********************************

安装:
修改server.properties
broker.id=1
zookeeper.connect=node1:2181,node2:2181,node3:2181
修改完成后,分发到集群中
并单独修改broker.id=2 、3 之类在三台机器上启动:bin/kafka-server-start.sh -daemon config/server.properties启动后,查看9092端口是否被监听lsof -i:9092
在node1上创建消费者,接收消息

创建一个topic:
[root@node1 kafka_2.10-0.10.2.1]# bin/kafka-topics.sh --zookeeper node1:2181 --topic topic1 --create --partitions 3 --replication-factor 2
Created topic "topic1".
查看这个topic
[root@node1 kafka_2.10-0.10.2.1]# bin/kafka-topics.sh --zookeeper node1:2181 --topic topic1 --describe
Topic:topic1    PartitionCount:3        ReplicationFactor:2     Configs:Topic: topic1   Partition: 0    Leader: 1       Replicas: 1,3   Isr: 1,3Topic: topic1   Partition: 1    Leader: 2       Replicas: 2,1   Isr: 2,1Topic: topic1   Partition: 2    Leader: 3       Replicas: 3,2   Isr: 3,2
创建一个consumer,去接收生产者的消息
[root@node1 kafka_2.10-0.10.2.1]#  bin/kafka-console-consumer.sh --zookeeper node1:2181 --topic topic1
Using the ConsoleConsumer with old consumer is deprecated and will be removed in a future major release. Consider using the new consumer by passing [bootstrap-server] instead of [zookeeper].1
hello

在node2上创建生产者,生产消息
[root@node2 kafka_2.10-0.10.2.1]# bin/kafka-console-producer.sh --broker-list node2:9092 --topic topic1
1
hello

查看已有的topic
bin/kafka-topics.sh --list --zookeeper node1:2181

Furthermore, ConsumerOffestChecker shows a row for each topic partition. Your topic topic5 does have some partitions.
  • Pid: partition ID
  • Offset: the latest committed offset for a partition for the corresponding consumer group
  • logSize: the number of messages stored in the partition
  • Lag: the number of not yet consumed message for a partition for the corresponding consumer group (ie, lag = logSize - offset)
  • Owner: unique ID of the running consumer thread
[orco@node1 kafka_2.10-0.10.1.1]$ bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper node1 --topic topic5 --group group1
[2017-07-26 11:39:16,748] WARN WARNING: ConsumerOffsetChecker is deprecated and will be dropped in releases following 0.9.0. Use ConsumerGroupCommand instead. (kafka.tools.ConsumerOffsetChecker$)
Group           Topic                          Pid Offset          logSize         Lag             Owner
group1          topic5                         0   0               0               0               none
group1          topic5                         1   10              10              0               none
group1          topic5                         2   0               0               0               none

有点记不清,eclipse中使用java api 调用kafka服务,好像额外需要在service.properties中修改下面这个

#listeners=PLAINTEXT://:9092

listeners=PLAINTEXT://192.168.202.156:9092

或者是

listeners=PLAINTEXT://node1:9092

不同机器,不同的node2 node3等等

转载于:https://www.cnblogs.com/orco/p/6844757.html

linux下kafka与zookeeper集群部署相关推荐

  1. linux双物理机weblogic集群,linux下weblogic多机器集群部署要点

    weblogic在部署单台物理的多节点服务器(受管服务器)集群时候,只要根据提示下一步下一步都能完成. 最近帮测试部部署一个简单的双物理机weblogic集群(下简称多机集群) 1.在部署多机集群时, ...

  2. Linux下搭建 kafka集群 + zookeeper集群部署 安装、启动、停止

    文章目录 一.环境部署总览 1. 软件版本选型 2. 服务器软件部署总览 二.软件部署手册 2.1. JDK 2.2. kafka 2.3. Kafka Eagle 2.4. mysql 2.5. z ...

  3. Kubernetes 搭建 Kafka 和 Zookeeper 集群(完整教程)

    推荐阅读 Helm3(K8S 资源对象管理工具)视频教程:https://edu.csdn.net/course/detail/32506 Helm3(K8S 资源对象管理工具)博客专栏:https: ...

  4. Linux下搭建Lotus Domino集群

    Linux下搭建Lotus Domino 集群 本文内容是Linux平台下Lotus Domino服务器部署案例(http://chenguang.blog.51cto.com/350944/1334 ...

  5. LINUX 下 配置MySQL数据库集群

    LINUX 下 配置MySQL数据库集群 MySQL数据库集群进行正确配置步骤(1) 此文章主要向大家讲述的是对MySQL数据库集群进行正确配置的实际操作步骤,以及对其概念的讲述,如果你对其相关的实际 ...

  6. linux下离线安装k8s集群1.19.4附带nfs存储(kubeadm方式)

    linux下离线安装k8s集群1.19.4附带nfs存储 活动地址:毕业季·进击的技术er  一,环境简介 kubernetes-1.19.4集群部署计划 序号 服务器配置 IP地址 操作系统 备注 ...

  7. mysql数据库的pxc工具_CentOS7 下 MySQL 数据库 PXC 集群部署操作指导

    背景 最近在进行 MySQL 的 PXC 集群搭建使用和研究 前期已完成了一篇记录文章 : [CentOS7 下 MySQL 之 PXC 集群部署[Docker+多机多节点]] 但是,毕竟不是所有人都 ...

  8. linux下离线配置voltdb集群

    linux下离线配置voltdb集群 系统环境:centos7.5最小化安装,因为是内网环境所以配置了私有yum源. 同一网络下的三台服务器,192.168.1.10.192.168.1.11.192 ...

  9. 大数据生态(六)zookeeper集群部署(Linux和Windows[含一键启动脚本])

    目录 前言 1.解压安装Zookeeper到/e3base/zookeeper目录下 2 .创建$E3_INFO_HOME/zookeeper目录 3 .创建数据目录和日志目录 4.配置环境变量 4. ...

最新文章

  1. [Spring mvc 深度解析(一)] 详解Servlet
  2. 中断按键c语言程序设计,单片机C语言代码:外部中断,按下中断按键LED不亮,LED1正常亮...
  3. 满屋花网页代码_成为更好的程序猿!2020年给网页开发人员的32条建议
  4. java 转换为maven_Java工程转换为Maven工程
  5. JVM GC调优一则--增大Eden Space提高性能
  6. 2019中国软件业务收入前百家企业名单公布
  7. Hybrid APP的离线存储总结
  8. 2.2基本共射放大电路的工作原理
  9. 如何使用Kdiff3作为GIT merge图形化工具
  10. Synergy Mac和Win键盘映射
  11. Unity不规则碰撞
  12. 【leetcode】字符串(KMP、滑动窗口)
  13. 智能电话机器人介绍(AI语音机器人)
  14. python+selenium打印当前页面的titl和url
  15. 广和通携手中国联通研究院、中科创达现网验证全球首例5G模组端到端多切片方案
  16. 【Android】google plus、Facebook登陆sdk集成打包出aar的使用步骤
  17. 【2022年上半年信息系统管理综合知识】
  18. 程序员完全没时间提升自己该怎么办?
  19. [C++] memset函数用法理解
  20. 脑控电脑正在成为现实,但重大障碍仍然存在

热门文章

  1. vim的模式及常用命令
  2. 旅途中的人物之一:卖菜老人
  3. php 命令行 php.ini,php web环境和命令行环境下查找php.ini的方法分享
  4. ads s参数拟合_ADS S参数仿真介绍
  5. python 画布包括不了全部组件?_试验程序:画布版九键琴
  6. 无法在源表中获得一组稳定的行_行输出变压器的结构、符号及电路分析
  7. 国开mysql答案_国开MySQL数据库应用形考任务.doc
  8. java web 线程数_Java Web应用调优线程池
  9. formatter java_Java编程中的Java Formatter是什么?
  10. mysql时间排序_mysql – 按日期和时间降序排序?