安装规划

zookeeper安装到zdh41上面,单机模式
10.43.159.41 zdh41 ZDH.COM

安装用户

zookeeper/zdh1234
useradd -g hadoop -s /bin/bash -md /home/zookeeper zookeeper

安装zookeeper集群,并且开启kerberos认证

1.获取Zookeeper安装包

scp garrison@zdh-237:/home/garrison/backup/zookeeper-3.5.1-alpha.tar.gz .
解压zookeeper包
tar -zxvf zookeeper-3.5.1-alpha.tar.gz
在zookeeper-3.5.1-alpha/conf/目录执行
mv zoo_sample.cfg zoo.cfg
修改zoo.cfg文件:
dataDir=/home/zookeeper/zookeeper-3.5.1-alpha/dataDir
clientPort=2181
文件最后添加,配置zookeeper集群通信端口:
server.1=zdh-237:12888:13888

创建一个dataDir文件夹:
mkdir ~/zookeeper-3.5.1-alpha/dataDir
再创建一个空文件:
touch /dataDir/myid

最后向该文件写入ID:
echo 1 > /dataDir/myid

配置环境变量方便以后操作:
export ZOOKEEPER_HOME=:~/zookeeper-3.5.1-alpha
export PATH=ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf

2.在zte-krb上,使用root用户,在/root/keytabs目录下,创建Zookeeper的principal

kadmin.local
addprinc -randkey zookeeper/zdh41@ZDH.COM
xst -k zookeeper.keytab zookeeper/zdh41@ZDH.COM
exit
scp zookeeper.keytab storm@zdh41:/home/storm/zookeeper-3.5.1-alpha/conf

3.修改zoo.cfg,添加以下内容

authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
jaasLoginRenew=3600000
kerberos.removeHostFromPrincipal=true
kerberos.removeRealmFromPrincipal=true

4.在conf目录创建java.env文件,添加以下内容

export JVMFLAGS="-Djava.security.auth.login.config=/home/zookeeper/zookeeper-3.5.1-alpha/conf/jaas.conf"
下面这句zkClient单独部署的时候可以用
export CLIENT_JVMFLAGS="-Djava.security.auth.login.config=/home/zookeeper/zookeeper-3.5.1-alpha/conf/jaas.conf"

5.在conf目录创建jaas.conf文件

Server {com.sun.security.auth.module.Krb5LoginModule requireduseKeyTab=truekeyTab="/home/zookeeper/zookeeper-3.5.1-alpha/conf/zookeeper.keytab"storeKey=trueuseTicketCache=falseprincipal="zookeeper/zdh41@ZDH.COM";
};
Client {com.sun.security.auth.module.Krb5LoginModule requireduseKeyTab=truekeyTab="/home/zookeeper/zookeeper-3.5.1-alpha/conf/zookeeper.keytab"storeKey=trueuseTicketCache=falseprincipal="zookeeper/zdh41@ZDH.COM";
};

注意:如果修改jaas.conf配置,则一定要重启zkServer,否则会导致zkClient连不上,
可能是因为zkClinet和zkServer使用同一个配置,实际zkClient应该配置自己的keytab用于访问。

6.启动zookeeper

进入到 zookeeper-3.4.5/bin/
./zkServer.sh start
查看状态:
./zkServer.sh status
停止zookeeper:
./zkServer.sh stop

7.验证开启Kerberos

客户端能够登陆开启Kerberos的zkServer
./zkCli.sh -server zdh41:12181
注意不能使用zkCli.sh -server 10.43.159.41:12181登陆,
会导致鉴权失败,zdh41和10.43.159.41在Kerberos服务器看来是不一样的principle

但是无法删除不是自己的storm
deleteall /storm
Authentication is not valid : /storm/leader-lock

其他IP的客户端未使用kerberos的也能登陆并且查看,
但是应该无法修改有权限的节点:
zkCli.sh -server 10.43.159.41:12181
zkCli.sh -server zdh41:12181

create /znode1 sasl:zookeeper/zdh41@ZDH.COM:cdwra
getAcl /znode1
delete /test
列出目录:
ls /

Zookeeper单机安装(开启kerberos)相关推荐

  1. Zookeeper集群安装(开启kerberos)

    安装规划 zookeeper集群模式,安装到如下三台机器 10.43.159.237 zdh-237 10.43.159.238 zdh-238 10.43.159.239 zdh-239 Kerbe ...

  2. Ranger-AdminServer安装(开启Kerberos)

    Ranger-AdminServer安装, 同时开启Kerberos安全模式, 基于ranger版本0.7.0. 安装规划 10.43.159.240 zdh-240 10.43.159.245 zd ...

  3. zookeeper单机安装

    安装zookeeper步骤: 1,下载zookeeper http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/ 2,放到合适目录,解压 ...

  4. Storm集群安装Version1.0.1开启Kerberos

    Storm集群安装,基于版本1.0.1, 同时开启Kerberos安全认证, 使用apache-storm-1.0.1.tar.gz安装包. 1.安装规划 角色规划 IP/机器名 安装软件 运行进程 ...

  5. Kafka单机安装Version1.0.1(自带Zookeeper)

    1.说明 Kafka单机安装,基于版本1.0.1, 使用kafka_2.12-1.0.1.tgz安装包, 其中2.12是编译工具Scala的版本. 而且不需要另外安装Zookeeper服务, 使用Ka ...

  6. Zookeeper 开启kerberos配置

    一. 前言 这两天需要搞一个开启kerberos的zookeeper环境用于测试. 顺手记录一下. 二. 安装步骤 2.1 前置环境准备 JDK : jdk1.8 服务器 : CentOS 7.5 软 ...

  7. Ⅰ:zookeeper的单机安装 - 详细教程

    2021年Zookeeper最新系列 ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ❤️ ...

  8. 单机安装ZooKeeper

    2019独角兽企业重金招聘Python工程师标准>>> zookeeper下载.安装以及配置环境变量 本节介绍单机的zookeeper安装,官方下载地址如下: https://arc ...

  9. 7 centos ssh 单机_centos7单机安装kafka

    基础要求操作系统:CentOS 7x 64位 kafka版本:kafka_2.11-0.8.2.1 #安装使用的jdk以及kafka的包我放到百度云了,需要自取. # 链接:https://pan.b ...

最新文章

  1. @ini_get php,php中get_cfg_var()和ini_get()的用法及区别_php技巧_脚本之家
  2. 模型神器组合,yyds!
  3. bcb中使用pas文件
  4. python的基本语术_Python中的基本语句详细资料说明
  5. 手机端召唤Debug
  6. 出现问题Debug Assertion Failed!
  7. CAD图纸上面缺失的线条如何将其进行补充?
  8. 出现java.lang.NoSuchMethodError错误的原因
  9. 主题:小菜一碟可以怎样说
  10. LoadRunner教程(19)-LoadRunner 性能图表分析
  11. 浏览器提示“此网站的安全证书有问题“,你还敢继续访问吗?
  12. splitter将winform窗体分为三列
  13. 2009 year English Inprovement for IT developments
  14. 网易(weather)天气预报接口
  15. php 判断来源 微信客户端_使用PHP判断是否为微信、支付宝等移动设备访问代码...
  16. ReentrantLock的Condition条件实现精确唤醒某个线程
  17. 关于 Word 如何创建临时文件的说明
  18. 基于NB-IoT的智慧路灯监控系统(NB-IoT专栏—实战篇3:云端部署及AI模型训练)
  19. 我的世界服务器地图网站,我的世界真正的SAO服务器地图
  20. 思科 WS-C4500X-32寄存值配置和相关值介绍

热门文章

  1. Lua学习笔记(5): 表
  2. php学习----运算符
  3. 购买域名和GitHub映射
  4. python 基础 列表生成式
  5. jQuery中的动画理论干货
  6. PHP 查找链表倒数第i个节点
  7. [Vue.js] 基础 -- Vue实例
  8. vue devtools 插件安装
  9. PAT乙级 1038 统计同成绩学生(map的解法)
  10. java异常处理机制--常见异常汇总