CentOS 6.5中部署Zeppelin并配置账号密码验证

2022-07-24 11:33:55 浏览数 (1)

1.安装Java Zeppelin支持的操作系统如下图所示。在安装Zeppelin之前,你需要在部署的服务器上安装Oracle JDK 1.7或以上版本, 并配置好相应的JAVA_HOME环境变量。 以CentOS为例,具体操作过程如下:

a)下载并安装jdk-8u111-linux-x64.rpm

# rpm -ivh jdk-8u111-linux-x64.rpm

b)配置环境变量。在/etc/profile文件结尾添加:

export JAVA_HOME=/usr/java/jdk1.8.0_111export PATH={JAVA_HOME}/bin:PATH

c)使环境变量生效

source /etc/profile

2.获取Zeppelin 下载地址:http://zeppelin.apache.org/download.html 选择二进制安装包,这里以zeppelin-0.7.2-bin-all.tgz为例。

3.安装Zeppelin 安装Zeppelin只需如下命令解压二进制安装包即可:

# tar zxvf zeppelin-0.7.2-bin-all.tgz

启动Zeppelin:

# cd /data/zeppelin-0.7.2-bin-all

(Zeppelin的安装目录)

第一次启动Zeppelin,输出如下:

# bin/zeppelin-daemon.sh start Log dir doesn't exist, create /data/Hadoop/zeppelin/zeppelin-0.7.2-bin-all/logs Pid dir doesn't exist, create /data/hadoop/zeppelin/zeppelin-0.7.2-bin-all/run Zeppelin start [ OK ]

这说明Zeppelin已经部署成功。

4.验证能否正常登陆

Zeppelin默认启动在8080端口,在浏览器中访问Zeppelin主页,访问地址是: http://your_host_ip:8080/,你将看到类似如下的页面。

我们在浏览器中输入 http://localhost:8080/ 进入Zeppelin的主页,不需要用任何的验证就可以进入主页面:

换句话说,任何人在浏览器输入上面地址(本机),都可以访问Zeppelin里的所有内容. 在上图中我们也可以看到我们的登陆用户是anonymous.

5.修改登陆zeeplin验证方式 禁止匿名访问

Zeppelin启动默认是匿名(anonymous)模式登录的.如果设置访问登录权限,需要设置conf/zeppelin-site.xml文件下的zeppelin.anonymous.allowed选项为false(默认为true).如果你还没有这个文件,只需将conf/zeppelin-site.xml.template复制为conf/zeppelin-site.xml。

# cd /data/hadoop/zeppelin/zeppelin-0.7.2-bin-all/conf # cp zeppelin-site.xml.template zeppelin-site.xml

<property> <name>zeppelin.anonymous.allowed</name> <value>false</value> <description>Anonymous user allowed by default</description> </property>

将zeppelin.anonymous.allowed设置为false,表示不允许匿名访问.

a)开启Shiro

在刚安装完毕之后,默认情况下,在conf中,将找到shiro.ini.template,该文件是一个配置示例,建议你通过执行如下命令行创建shiro.ini文件:

cp conf/shiro.ini.template conf/shiro.ini

配置shiro.ini(即访问zeppelin的账号密码)

[root@u04rdp01 conf]# cat shiro.ini

[users] #admin = password1, admin #user1 = password2, role1, role2 #user2 = password3, role3 #user3 = password4, role2

hadoop = hadoop, admin # 用户名、密码都是hadoop,角色为admin

[main] "CN=admin,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"admin","CN=finance,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"finance","CN=hr,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"hr"

sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager securityManager.sessionManager = $sessionManager

securityManager.sessionManager.globalSessionTimeout = 86400000 shiro.loginUrl = /api/login

[roles] role1 = * role2 = * role3 = * admin = *

[urls] /api/version = anon #/api/interpreter/** = authc, roles[admin] #/api/configurations/** = authc, roles[admin] #/api/credential/** = authc, roles[admin] #/** = anon /** = authc

b)重新启动 Zeppelin

bin/zeppelin-daemon.sh restart Zeppelin stop [ OK ] Zeppelin start [ OK ]

启动成功之后,可以访问 http://ip:8080

8.验证是否可以通过刚才配置的账号密码登录 最后,你可以使用刚才配置的用户名/密码组合进行登录:

0 人点赞