如何在Hue中创建Ssh的Oozie工作流

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

1.文档编写目的


前面Fayson讲过《如何使用Hue创建Spark1和Spark2的Oozie工作流》和《如何使用Hue创建Spark2的Oozie工作流(补充)》,在创建Oozie工作流时会遇到需要登录到其它服务器上去执行脚本或命令,这个时候就会用到Oozie的Ssh Action。本文主要介绍如何创建Ssh Action的Oozie工作流。

  • 内容概述

1.生成oozie用户公钥

2.添加公钥到目标用户

3.测试Ssh Action工作流

4.总结

  • 测试环境

1.CM和CDH版本为5.13.0

2.操作系统:CentOS6.5

3.采用root用户操作

4.集群未启用Kerberos

2.生成Oozie用户公钥


1.登录Oozie Server所在服务器(ip-172-31-6-148),生成oozie用户的公钥,执行命令一直回车到结束

[root@ip-172-31-6-148 ~]# sudo -u oozie ssh-keygen -t rsa

注意:oozie用户的公钥文件在/var/lib/oozie/.ssh目录下,下图标注的为公钥文件

3.添加Oozie公钥到目标主机用户


这里我们使用ip-172-31-5-190的fayson用户来做测试

1.将oozie用户生成的公钥,拷贝至目标服务器相应用户根目录的.ssh文件夹下

[root@ip-172-31-6-148 /]# scp /var/lib/oozie/.ssh/id_rsa.pub ip-172-31-5-190:/home/fayson/.ssh
id_rsa.pub                                                                    100%  414     0.4KB/s   00:00    
[root@ip-172-31-6-148 /]# 

注意:如果目标服务器相应用户的.ssh目录不存在则手动创建或在该用户下使用ssh-keygen –t rsa 命令生成

[root@ip-172-31-5-190 fayson]# su fayson
[fayson@ip-172-31-5-190 ~]$ cd /home/fayson
[fayson@ip-172-31-5-190 ~]$ mkdir .ssh
[fayson@ip-172-31-5-190 ~]$ chmod 700 .ssh/

2.登录ip-172-31-5-190服务器,将拷贝的公钥文件写入authorized_keys文件

[fayson@ip-172-31-5-190 ~]$ cd /home/fayson/.ssh/
[fayson@ip-172-31-5-190 .ssh]$ cat id_rsa.pub >> authorized_keys
[fayson@ip-172-31-5-190 .ssh]$ chmod 600 authorized_keys 
[fayson@ip-172-31-5-190 .ssh]$ chown fayson:fayson authorized_keys

注意:authorized_keys文件的权限必须为600,文件属主必须为fayson用户

3.在ip-172-31-6-148使用oozie用户执行登录操作

[root@ip-172-31-6-148 /]# sudo -u oozie ssh fayson@ip-172-31-5-190
Last login: Thu Nov  2 00:56:56 2017 from 172.31.6.148
[fayson@ip-172-31-5-190 ~]$ 

显示已成功用fayson用户登录到ip-172-31-5-190服务器。

4.创建Oozie的Ssh Action测试


1.登录Hue创建Oozie工作流

输入ssh登录信息及执行的指令或脚本

保存新建的Oozie工作流。

2.执行任务测试是否正常

任务执行成功。

5.总结


在非Kerberos环境的集群中,ssh actions会以oozie用户执行,因为oozie的服务进程是以oozie的用户起的。所以在执行ssh命令并指定用户登录到目标服务器需要将oozie服务器的公钥文件拷贝至目标服务器的指定的用户下,从而实现从oozie用户ssh到指定用户的免密码登录。

在CDH集群中oozie用户默认是不能登录的,如果需要通过su切换到oozie用户,则需要使用root用户在/etc/pam.d/su文件中增加如下配置:

auth       [success=ignore default=1] pam_succeed_if.so user = oozie
auth       sufficient   pam_succeed_if.so use_uid user = oozie

在命令行执行如下命令就可以切换至oozie用户

[root@ip-172-31-6-148 /]# sudo -u oozie -s

为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。


推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操

原文发布于微信公众号 - Hadoop实操(gh_c4c535955d0f)

原文发表时间:2017-11-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Zachary46

Android直接用手机打包apk!

本人用的是Mac,以下操作都是在Mac环境下配置的,Windows环境的配置移步到Android使用Jenkins自动化构建测试打包apk

50430
来自专栏Huramkin的归档库

Screen命令常见用法

76020
来自专栏星汉技术

Sqoop简介以及安装

24820
来自专栏后台及大数据开发

Linux巩固记录(3) hadoop 2.7.4 环境搭建

以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上去

10110
来自专栏Brian

搭建分布式Spark计算平台

集群机器规划 三台机器的操作系统全部为CentOS7.2. 主机名称 IP地址 master 192.168.1.106 slave1 192...

1.2K60
来自专栏我是攻城师

Hadoop2.6.0-cdh5.4.1源码编译安装

1.1K70
来自专栏搜云库

离线部署 CDH 5.12.1 及使用 CDH 部署 Hadoop 大数据平台集群服务

Cloudera Manager 分为两个部分:CDH和CM。

452100
来自专栏james大数据架构

0基础搭建Hadoop大数据处理-集群安装

  经过一系列的前期环境准备,现在可以开始Hadoop的安装了,在这里去apache官网下载2.7.3的版本 http://www.apache.org/dyn...

43150
来自专栏Hadoop实操

如何在CDH集群中部署Kafka Manager

为了能够方便的查看及管理Kafka集群,yahoo提供了一个基于Web的管理工具(Kafka-Manager)。这个工具可以方便的查看集群中Kafka的Topi...

1.2K20
来自专栏云计算教程系列

如何在Ubuntu 14.04上安装对大数据友好的Apache Accumulo NoSQL数据库

Apache Accumulo是一个基于Google BigTable的开源分布式NoSQL数据库。它用于在极大数据集(通常称为大数据)上有效执行CRUD(创建...

15900

扫码关注云+社区

领取腾讯云代金券