关于部署 Kafka 的一些所得
前记
最近在做日志模块。
其中用到的日志信息传输的中间工具用的是的 Kafka,在自己的摸索中总是有一些问题的,在这里记录下来。
Kafka 环境搭建
首先是下载需要的安装软件。
JDK、Zookeeper、Kafka(下载最新的安装文件即可)。
首先安装JDK,因为Zookeeper是需要Java的环境;安装完成后要设置好环境变量。
接下来安装Zookeeper,所谓的安装就是解压下载的文件到你自己的目录(这里就是安装的目录),把这个目录设置环境变量。
最后安装Kafka,这里和上一步Zookeeper的一样。
安装在这里进简述,如果有不明白的可以参考这里“Windows上搭建Kafka运行环境”。
Zookeeper服务和Kafka批处理
由于Zookeeper和Kafka每次开启和关闭都需要命令行,操作多了就会感觉挺麻烦的。
所以就寻找,看有没有直接用服务的方式进行操作的。
在苦苦寻找下,只找到了Zookeeper做成服务的方法,对于Kafka呢就用了批处理来操作。
首先是Zookeeper的服务:
下载prunsrv ,下载地址:http://archive.apache.org/dist/commons/daemon/binaries/windows/
解压文件下的“prunsrv.exe”、“prunmgr.exe”’到Zookeeper目录下的“bin”,如果64位的到amd64文件下解压。
在上面的文件夹下新建“stopZookeeper.cmd”和“install.cmd”文件。
stopZookeeper.cmd 代码如下所示(这个是结束服务的操作):
@echo off
setlocal
TASKLIST /svc | findstr /c:"%ZOOKEEPER_SERVICE%" > %ZOOKEEPER_HOME%\zookeeper_svc.pid
FOR /F "tokens=2 delims= " %%G IN (%ZOOKEEPER_HOME%\zookeeper_svc.pid) DO (
@set zkPID=%%G
)
taskkill /PID %zkPID% /T /F
del %ZOOKEEPER_HOME%/zookeeper_svc.pid
endlocal
install.cmd 代码如下所示(这个是注册服务的操作):
prunsrv.exe "//IS//%ZOOKEEPER_SERVICE%" ^
--DisplayName="Zookeeper (%ZOOKEEPER_SERVICE%)" ^
--Description="Zookeeper (%ZOOKEEPER_SERVICE%)" ^
--Startup=auto --StartMode=exe ^
--StartPath=%ZOOKEEPER_HOME% ^
--StartImage=%ZOOKEEPER_HOME%\bin\zkServer.cmd ^
--StopPath=%ZOOKEEPER_HOME%\ ^
--StopImage=%ZOOKEEPER_HOME%\bin\zkServerStop.cmd ^
--StopMode=exe --StopTimeout= ^
--LogPath=%ZOOKEEPER_HOME% --LogPrefix=zookeeper-wrapper ^
--PidFile=zookeeper.pid --LogLevel=Info --StdOutput=auto --StdError=auto
上面代码中的“ZOOKEEPER_SERVICE”是环境变量,可以根据自己需求添加设置。
运行“install.bat”就可以了,在服务界面就可以找到。启动服务就可以。
如果服务有问题,或者感觉不好,可以删除服务注册:开始”——“运行”——“regedit”)然后依次打开HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services
找到你注册的服务删除即可。
Kafka 批处理
新建两个批处理文件“startKafka.bat”、“stopKafka.bat”,这里面用的是“call”没有用“start”,因为在调用完成后直接就退出窗口了。
两个代码分别为:startKafka.bat
@echo off
echo start Kafka
call 安装路径\bin\windows\kafka-server-start 安装路径\config\server.properties
echo end Kafka
stopKafka.bat
@echo off echo stop Kafka call 安装路径\bin\windows\kafka-server-stop echo end stop Kafka
Windows 下一些问题
1、Kafka 服务会无故的的停止,不能正常工作,但是也不报错很奇怪。也找不到问题;
2、对于上面说的问题,重启 Kafka、Zookeeper 服务就可以。如果还不行的话,删除所有数据。还有就是重启机器(Kafka 服务器、生产者服务器都需要重启)
关于部署 Kafka 的一些所得的更多相关文章
- 基于Kubernetes在AWS上部署Kafka时遇到的一些问题
作者:Jack47 转载请保留作者和原文出处 欢迎关注我的微信公众账号程序员杰克,两边的文章会同步,也可以添加我的RSS订阅源. 交代一下背景:我们的后台系统是一套使用Kafka消息队列的数据处理管线 ...
- CentOS 7部署Kafka和Kafka集群
CentOS 7部署Kafka和Kafka集群 注意事项 需要启动多个shell脚本交互客户端进行验证,运行中的客户端不要停止. 准备工作: 安装java并设置java环境变量,在`/etc/prof ...
- windows 下部署kafka 日记 转
windows 下部署kafka 日记 转一.下载去apache 的官网(http://kafka.apache.org/downloads.html)下载最新的二进制版的压缩包.目前的最新版本是ka ...
- k8s部署kafka集群
一.概述 在k8s里面部署kafka.zookeeper这种有状态的服务,不能使用deployment和RC,k8s提供了一种专门用来部署这种有状态的服务的API--statefulset,有状态简单 ...
- Kafka实战(七) - 优雅地部署 Kafka 集群
既然是集群,必然有多个Kafka节点,只有单节点构成的Kafka伪集群只能用于日常测试,不可能满足线上生产需求. 真正的线上环境需要考量各种因素,结合自身的业务需求而制定.看一些考虑因素(以下顺序,可 ...
- [转]【kafka】用 Docker 部署 Kafka
ref : https://www.jianshu.com/p/7635ea96e53f 用 Docker 部署 Kafka Kafka 简介 作为一个消息中间件,Kafka 以高扩展性.高吞吐量 ...
- 使用Cloudera Manager部署Kafka消息队列
使用Cloudera Manager部署Kafka消息队列 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.下载需要安装的Kafka版本 1>.查看Cloudera Dis ...
- Linux下部署Kafka分布式集群,安装与测试
注意:部署Kafka之前先部署环境JAVA.Zookeeper 准备三台CentOS_6.5_x64服务器,分别是:IP: 192.168.0.249 dbTest249 Kafka IP: 192. ...
- 精讲 使用ELK堆栈部署Kafka
使用ELK堆栈部署Kafka 通过优锐课的java架构学习分享,在本文中,我将展示如何使用ELK Stack和Kafka部署建立弹性数据管道所需的所有组件. 在发生生产事件后,恰恰在你最需要它们时,日 ...
随机推荐
- spaces的坑
spacemacs的坑,改镜像源,不能使用退格 emacs25以上可以装spacemacs 目前在mac上装emacs26.1 使用spacemacs的时候会有melpa.org访问慢或者访问不了的问 ...
- 洛谷 题解 UVA12661 【有趣的赛车比赛 Funny Car Racing】
[题意] 在一个赛车比赛中,赛道有\(n(n<=300)\)个交叉点和\(m(m<=50000)\)条单向道路.有趣的是,每条道路都是周期性关闭的.每条道路用5个整数\(u,v,a,b,t ...
- [转]PHP程序员的技术成长规划
转自:http://blog.leanote.com/post/darker/PHP%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84%E6%8A%80%E6%9C%AF%E6% ...
- pytorch1.0神经网络保存、提取、加载
pytorch1.0网络保存.提取.加载 import torch import torch.nn.functional as F # 包含激励函数 import matplotlib.pyplot ...
- 039 Android ShareSDK实现分享功能
1.参考文献: https://blog.csdn.net/augfun/article/details/86551294 http://wiki.mob.com/sdk-share-android- ...
- D1. Docker: win7 环境下安装 Docker
[下载与安装] win7.win8 等需要利用 docker toolbox 来安装,国内可以使用阿里云的镜像来下载,下载地址:http://mirrors.aliyun.com/docker-too ...
- nginx location 路由的几个配置纪要
1:网上没有查到在线测试 nginx location 规则的网址 在服务器上可以通过 return 返回测试比如 把#号去掉 # location /admin\.php(.*) # { #def ...
- [C++] 习题 2.14 用队列实现桶排序
目录 前置技能 队列(已在上篇提到栈的时候顺便提到了,不再赘述) 桶排序 具体实现 由用户输入n个10以内的数,每输入i(0≤i≤9),就把它插入第i号队列中,最后把10个队列中的非空队列,按队列号从 ...
- ORA-01618 ORA-19809: limit exceeded for recovery files
由于DB_RECOVERY_FILE_DEST_SIZE 参数设置太小,导致redo只能创建一组,无法创建节点二的日志组,节点二数据库无法启动,如下图: 修改参数后,节点二无法启动到mount模式,无 ...
- 调用WebService时加入身份验证,以拒绝未授权的访问
众所周知,WebService是为企业需求提供的在线应用服务,其他公司或应用软件能够通过Internet来访问并使用这项在线服务.但在有些时候的某些应用服务不希望被未授权访问,那么此时我们可以一下几种 ...