前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >0548-5.13.1-如何使用普通用户管理CM server和agent服务

0548-5.13.1-如何使用普通用户管理CM server和agent服务

作者头像
Fayson
发布2019-11-28 23:23:22
7520
发布2019-11-28 23:23:22
举报
文章被收录于专栏:Hadoop实操Hadoop实操

作者:李继武

1

文档编写目的

在前面的文章《0520-如何使用非root用户启动CM的Server和Agent服务》中,Fayson介绍过在CDH5中,无论是Cloudera Manager Server还是Agent服务都无法配置为其他用户来启停,只能通过root用户来管理。

另外在文章《0547-CM Server和Agent服务停止脚本说明》,我们考虑使用root直接找到Server和Agent的脚本来进行启停,即不通过系统自带的service或者systemctl来操作这2个服务,但依旧失败了,主要是没有找到stop命令,只能通过kill这2个服务来解决。

这些文章其实主要目的就是为了解决有些环境不允许使用root来管理CM Server和Agent服务,必须使用普通用户的需求。在尝试几次都失败后,Fayson这里提供另一个替代方案,即依旧让系统自带的system或者systemctl来操作这2个服务,但是我们给一个普通用户只是配置CM Server和Agent的sudo权限

本文档主要介绍如何给一个普通用户配置管理cloudera-scm-server和cloudera-scm-agent的权限,使得平时我们可以通过普通用户来管理集群。本文以CM节点为例,上面有cloudera-scm-server和cloudera-scm-agent。

  • 测试环境

1.CDH5.13.1

2.配置前需要root用户

2

环境准备

1. 控制台上关停集群

2. root用户下命令行停止cloudera-scm-server和cloudera-scm-agent。

代码语言:javascript
复制
systemctl stop cloudera-scm-server
systemctl stop cloudera-scm-agent
systemctl status cloudera-scm-server
systemctl status cloudera-scm-agent

3. 创建一个普通用户user并设置密码

代码语言:javascript
复制
useradd user
passwd user

3

配置sudoers

1. 使用visudo配置可执行命令的别名

代码语言:javascript
复制
Cmnd_Alias CDH_SYSTEMCTL= /usr/bin/systemctl start cloudera-scm-server, /usr/bin/systemctl stop cloudera-scm-server, /usr/bin/systemctl restart cloudera-scm-server, /usr/bin/systemctl status cloudera-scm-server, /usr/bin/systemctl start cloudera-scm-agent, /usr/bin/systemctl stop cloudera-scm-agent, /usr/bin/systemctl restart cloudera-scm-agent, /usr/bin/systemctl status cloudera-scm-agent

2. 配置user用户可免密sudo执行CDH_SYSTEMCTL定义的命令并保存

代码语言:javascript
复制
user   ALL=(ALL) NOPASSWD:CDH_SYSTEMCTL

4. 使用user用户启动cloudera-scm-server/agent

在浏览器上查看已经可以访问7180端口

5. stop和restart命令也可通过如下的方式使用,此处不再详细描述。

代码语言:javascript
复制
sudo systemctl stop cloudera-scm-server
sudo systemctl stop cloudera-scm-agent
sudo systemctl restart cloudera-scm-server
sudo systemctl restart cloudera-scm-agent

4

验证

1. 启动clouderan management相关服务

2. 启动集群

3. 验证user用户是否有其他权限

从以下可以看出user用户除了可以使用systemctl操作cloudera-scm-server和cloudera-scm-agent服务之外,并不能操作其他服务。

从以下可以看出user用户也没有kill进程的权限。

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-02-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
专用宿主机
专用宿主机(CVM Dedicated Host,CDH)提供用户独享的物理服务器资源,满足您资源独享、资源物理隔离、安全、合规需求。专用宿主机搭载了腾讯云虚拟化系统,购买之后,您可在其上灵活创建、管理多个自定义规格的云服务器实例,自主规划物理资源的使用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档