大数据安全系列的其它文章

https://www.cnblogs.com/bainianminguo/p/12548076.html-----------安装kerberos

https://www.cnblogs.com/bainianminguo/p/12548334.html-----------hadoop的kerberos认证

https://www.cnblogs.com/bainianminguo/p/12548175.html-----------zookeeper的kerberos认证

https://www.cnblogs.com/bainianminguo/p/12584732.html-----------hive的kerberos认证

https://www.cnblogs.com/bainianminguo/p/12584880.html-----------es的search-guard认证

https://www.cnblogs.com/bainianminguo/p/12639821.html-----------flink的kerberos认证

https://www.cnblogs.com/bainianminguo/p/12639887.html-----------spark的kerberos认证

今天的博客介绍大数据安全系列之flink的kerberos配置

一、flink安装

1、解压安装包

tar -zxvf flink-1.8.0-bin-scala_2.11.tgz -C /usr/local/

  

2、重命名安装目录

[root@cluster2-host1 local]# mv flink-1.8.0/ flink

  

3、修改环境变量文件

export FLINK_HOME=/usr/local/flink
export PATH=${PATH}:${FLINK_HOME}/bin

  

[root@cluster2-host1 data]# source /etc/profile

[root@cluster2-host1 data]# echo $FLINK_HOME

/usr/local/flink

4、修改flink的配置文件

[root@cluster2-host1 conf]# vim flink-conf.yaml
[root@cluster2-host1 conf]# pwd
/usr/local/flink/conf

  

jobmanager.rpc.address: cluster2-host1

  

修改slaver文件

[root@cluster2-host1 conf]# vim slaves
[root@cluster2-host1 conf]# pwd
/usr/local/flink/conf

  

cluster2-host2
cluster2-host3

  

修改master文件

[root@cluster2-host1 bin]# cat /usr/local/flink/conf/masters
cluster2-host1

  

修改yarn-site.xml文件

<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>5</value>
</property>

  

5、创建flink用户

[root@cluster2-host3 hadoop]# useradd flink -g flink
[root@cluster2-host3 hadoop]# passwd flink
Changing password for user flink.
New password:
BAD PASSWORD: The password fails the dictionary check - it is based on a dictionary word
Retype new password:

  

6、修改flink安装目录的属主和属组

[root@cluster2-host3 hadoop]# chown -R flink:flink /usr/local/flink/

  

7、启动flink验证安装步骤

[root@cluster2-host1 bin]# ./start-cluster.sh
Starting cluster.
[INFO] 1 instance(s) of standalonesession are already running on cluster2-host1.
Starting standalonesession daemon on host cluster2-host1.
Starting taskexecutor daemon on host cluster2-host2.
Starting taskexecutor daemon on host cluster2-host3.

  

检查进程

[root@cluster2-host1 bin]# jps
10400 Secur
30817 StandaloneSessionClusterEntrypoint
12661 ResourceManager
12805 NodeManager
4998 QuorumPeerMain
30935 Jps
2631 NameNode

  

登陆页面

http://10.87.18.34:8081/#/overview

  

关闭flink,上面的standalone的启动方法,下面启动flink-session模式

拷贝hadoop的依赖包到flink的lib目录

scp flink-shaded-hadoop2-uber-2.7.5-1.8.0.jar /usr/local/flink/lib/

  

启动flink-session模式

 ./yarn-session.sh -n 2 -s 6 -jm 1024 -tm 1024 -nm test -d

  

检查yanr的页面

二、配置flink的kerberos的配置

1、创建flink的kerberos认证主体文件

kadmin.local:  addprinc flink/cluster2-host1
kadmin.local: addprinc flink/cluster2-host2
kadmin.local: addprinc flink/cluster2-host3

 

kadmin.local:  ktadd -norandkey -k /etc/security/keytab/flink.keytab flink/cluster2-host1
kadmin.local: ktadd -norandkey -k /etc/security/keytab/flink.keytab flink/cluster2-host2
kadmin.local: ktadd -norandkey -k /etc/security/keytab/flink.keytab flink/cluster2-host3

  

 

2、拷贝keytab文件到其它节点

[root@cluster2-host1 bin]# scp /etc/security/keytab/flink.keytab root@cluster2-host2:/usr/local/flink/
flink.keytab 100% 1580 1.5KB/s 00:00
[root@cluster2-host1 bin]# scp /etc/security/keytab/flink.keytab root@cluster2-host3:/usr/local/flink/
flink.keytab

  

3、修改flink的配置文件

security.kerberos.login.use-ticket-cache: true
security.kerberos.login.keytab: /usr/local/flink/flink.keytab
security.kerberos.login.principal: flink/cluster2-host3
yarn.log-aggregation-enable: true

  

4、启动yarn-session,看到如下操作,则配置完成

flink@cluster2-host1 bin]$  ./yarn-session.sh -n 2 -s 6 -jm 1024 -tm 1024 -nm flink5 -d

2020-03-05 02:42:23,706 INFO  org.apache.hadoop.security.UserGroupInformation               - Login successful for user flink/cluster2-host1 using keytab file /usr/local/flink/flink.keytab

  

查看页面

检查进程

[root@cluster2-host1 sbin]# jps
6118 ResourceManager
15975 NameNode
22472 -- process information unavailable
6779 NodeManager
23483 YarnSessionClusterEntrypoint
24717 Master
9790 QuorumPeerMain
25534 Jps
20239 Secur

  

5、flink的kerberos的配置完成

kerberos系列之flink认证配置的更多相关文章

  1. kerberos系列之hive认证配置

    大数据安全系列之hive的kerberos认证配置,其它系列链接如下 https://www.cnblogs.com/bainianminguo/p/12548076.html-----------安 ...

  2. C#进阶系列——WebApi 身份认证解决方案:Basic基础认证

    前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...

  3. Hadoop 2.4.1 登录认证配置小结

    1.简单模式 这种模式,配置简单,使用简单. core-site.xml添加 <property> <name>hadoop.security.authorization< ...

  4. #进阶系列——WebApi 身份认证解决方案:Basic基础认证

    阅读目录 一.为什么需要身份认证 二.Basic基础认证的原理解析 1.常见的认证方式 2.Basic基础认证原理 三.Basic基础认证的代码示例 1.登录过程 2./Home/Index主界面 3 ...

  5. 深入浅出Mybatis系列(四)---配置详解之typeAliases别名(mybatis源码篇)

    上篇文章<深入浅出Mybatis系列(三)---配置详解之properties与environments(mybatis源码篇)> 介绍了properties与environments, ...

  6. 深入浅出Mybatis系列(三)---配置详解之properties与environments(mybatis源码篇)

    上篇文章<深入浅出Mybatis系列(二)---配置简介(mybatis源码篇)>我们通过对mybatis源码的简单分析,可看出,在mybatis配置文件中,在configuration根 ...

  7. nginx用户认证配置( Basic HTTP authentication)

    ngx_http_auth_basic_module模块实现让访问着,只有输入正确的用户密码才允许访问web内容.web上的一些内容不想被其他人知道,但是又想让部分人看到.nginx的http aut ...

  8. PBOC2.0安全系列之—脱机认证之动态数据认证(DDA)

    动态数据认证: 一,什么是动态数据认证(DDA) 由于上篇<< PBOC2.0安全系列之—脱机认证之静态数据认证(SDA)>>已经对静态数据认证部分做了详细的分析,一些基本知识 ...

  9. 7.oracle学习门户系列七---网络管理和配置

    oracle学习门户系列七 网络管理和配置 们学习了模式和用户.包含模式定义以及模式的作用. 这篇我么来看下ORACLE数据库中的网络管理和配置.只是这篇好像和上篇没有继承啊.这怎么看? Ok,事实上 ...

随机推荐

  1. Typecho 主题制作记录

    模板制作快速入门 模板的制作并非难事,只要你写好了HTML和CSS,嵌套模板就非常简单了,你无需了解标签的内部结构,你只要会使用,模板就能迅速完成.这篇文章只简单的介绍了常用标签的使用方法,希望能带你 ...

  2. JZOJ 5305. 【NOIP2017提高A组模拟8.18】C (Standard IO)

    5305. [NOIP2017提高A组模拟8.18]C (Standard IO) Time Limits: 1000 ms Memory Limits: 131072 KB Description ...

  3. VUE四 axios详解

    axios的中文文档写的已经很详细 https://www.kancloud.cn/yunye/axios/234845

  4. weex 和 appcan 的个人理解

    appcan是浏览器技术,前端代码运行在webview上,而weex是原生引擎渲染,说白了就是把H5翻译成原生. weex的官网上说,在开发weex页面就像开发普通网页一样,在渲染weex页面时和原生 ...

  5. 添加谷歌拓展程序 vue.js devtools过程中的问题

    在用vue做项目过程中,需要用到vue.js devtools,在从github上面clone下来代码,然后再npm install ,过程报错,然后更新npm包也是会有问题,以下是install的问 ...

  6. JavaScript(js)函数声明与函数表达式的区别

    在JavaScript中,函数是经常用到的,在实际开发的时候,我想很多人都没有太在意函数的声明与函数表达式的区别,但是呢,这种细节的东西对于学好js是非常重要的. 函数声明与函数表达式用代码写出来是这 ...

  7. php -v 找不到命令

    [root@localhost htdocs]# php -v -bash: php: command not found export PATH=$PATH:/usr/local/php7/bin ...

  8. BFC块级格式上下文介绍

    块级格式上下文(Block formatting context) 什么是BFC? 块格式化上下文(block formatting context) 是页面 CSS视觉渲染的一部分.它是用于决定块盒 ...

  9. C++ 动态链接库 dll的加载

    //首先生成一个my.dll项目,在cpp中添加如下代码 //导出函数 _declspec(dllexport) int test(int a, int b) { return a + b; } // ...

  10. Effective Go笔记

    一 格式化 使用gofmt程序对go源码进行格式化,以便统一编码风格,可直接在GoLand进行配置[1].Go源码格式使用tab作为缩进,且很少使用括号. 二 注释 Go支持块注释/**/和行注释// ...