openshift 容器云从入门到崩溃之四《配置用户验证》
1、配置本地用户
之前安装的时候选择了htpasswd验证方式
先创建用户
# htpasswd -c /etc/origin/master/htpasswd admin
授权为集群管理员
# oc adm policy add-cluster-role-to-user cluster-admin admin
登陆到oc
# oc login -u admin
2、配置服务账号
平时的管理可以用本地账号,但是如果用调用k8s接口虽然也可以使用本地账号TOKEN但是很快会过期,这时候就要用服务账号了
创建服务用户
# oc project default
# oc create sa api-admin
授权为集群管理员
# oc adm policy add-cluster-role-to-user cluster-admin system:serviceaccount:default:api-admin
获取服务账号长期TOKEN
# oc get sa/api-admin --template='{{range .secrets}}{{ .name }} {{end}}' | xargs -n oc get secret --template='{{ if .data.token }}{{ .data.token }}{{end}}' | head -n | base64 -d -
3、使用ldap验证用户
人多了账号不好管理,就需要接入ldap了
编辑/etc/origin/master/master-config.yaml
加入以下内容
oauthConfig:
assetPublicURL: https://www.oc.example.cn:8443/console/
grantConfig:
method: auto
identityProviders:
- challenge: true
login: true
mappingMethod: claim
name: Ldap_auth
provider:
apiVersion: v1
attributes:
email:
id:
- dn
name:
- cn
preferredUsername:
- uid
bindDN: uid=ldapreader,cn=users,dc=example,dc=com
bindPassword: 123456
insecure: true
kind: LDAPPasswordIdentityProvider
url: ldap://192.168.1.1:389/cn=users,dc=example,dc=com?uid
重启master以使更改生效
# master-restart api
# master-restart controllers
同步ldap账号
编辑/etc/origin/master/rfc2307_config.yaml
加入以下内容
kind: LDAPSyncConfig
apiVersion: v1
url: ldap://192.168.1.1:389
insecure: true
rfc2307:
groupsQuery:
baseDN: "cn=groups,dc=example,dc=com"
scope: sub
derefAliases: never
pageSize: 0
filter: (objectClass=posixGroup)
groupUIDAttribute: dn
groupNameAttributes: [ cn ]
groupMembershipAttributes: [ member ]
usersQuery:
baseDN: "dc=example,dc=com"
scope: sub
derefAliases: never
pageSize: 0
userUIDAttribute: dn
userNameAttributes: [ cn ]
tolerateMemberNotFoundErrors: false
tolerateMemberOutOfScopeErrors: false
同步命令
# oc adm groups sync --sync-config=/etc/origin/master/rfc2307_config.yaml --confirm
最好加入crontab定时同步
验证用户有没有被同步过来
# oc get group
openshift 容器云从入门到崩溃之四《配置用户验证》的更多相关文章
- openshift 容器云从入门到崩溃之八《日志聚合》
日志可以分为两部分 业务日志 业务日志一般是要长期保留的,以供以后有问题随时查询,elk是现在比较流行的日志方案,但是容器日志最好不要落地所以不能把logstash客户端包在容器里面 可以使用logs ...
- openshift 容器云从入门到崩溃之六《Source-to-Image》
上次说到了怎么在oc上面部署应用而且说道了怎么定义模板部署应用,也许你会奇怪那个我代码打包编译在哪一步,那就要说道oc的s2i流程了 下面是基本s2i流程 1.制作base-image镜像 要使用s2 ...
- openshift 容器云从入门到崩溃之五《部署应用》
1.配置部署模板 配置好用户权限之后就可以部署应用了oc常用的两种部署方式: Deploy Image方式 优点:这种方式是最简单的部署方式,你只需要有一个容器镜像就行了或者公开的docker hub ...
- openshift 容器云从入门到崩溃之二《准备环境》
openshift 从3.9开始就开始支持系统组件在容器里运行了,之前版本都是直接运行在操作系统上,名字也改了叫OKD 目前最新的稳定版本是3.11,所以就安装3.11版本 准备环境: 主机名 系统 ...
- openshift 容器云从入门到崩溃之一《容器能解决什么问题》
容器前时代 说到容器大多数人想到的就是docker,docker的迅速崛起使得使用容器的门槛大大降低了,我第一次接触docker还是14年,那时候作为一名运维部署应用还在大量使用虚拟化,从vmware ...
- openshift 容器云从入门到崩溃之九《容器监控-报警》
容器状态监控 主要是监控POD的状态包括重启.不健康等等这些k8s api 状态本身会报出来,在配合zabbix报警 导入zabbix模板关联上oc master主机 <?xml version ...
- openshift 容器云从入门到崩溃之七《数据持久化》
数据持久化常用的有两种: hostPath 挂载容器宿主机的本地文件夹,直接修改pod的配置 volumes: - hostPath: path: /data/logging-es type: '' ...
- openshift 容器云从入门到崩溃之三《安装openshift》
准备好环境,在安装之前请先了解openshift提供的ansible有大量的安装选项 文档地址:https://docs.okd.io/latest/install/configuring_inven ...
- openshift 容器云从入门到崩溃之十《容器监控-数据展示》
POD资源历史曲线(CPU.内存.网络) 监控方案heapster+hawkular-metrics+hawkular-cassandra heapster负责收集数据 hawkular-cassan ...
随机推荐
- VS2015 怎么安装RDLC报表模板?
这几天刚好用到微软自带的RDLC报表,但是在VS2015张找了一圈也没找,难道是我VS版本 不支持,在网上查了下,有的人说VS2015社区版,企业版不支持,只有专业版支持,各说不一,想想不科学呀,微软 ...
- 【NLP】MT中BLEU评分机制
参考博客:https://blog.csdn.net/guolindonggld/article/details/56966200 原著论文:http://www.aclweb.org/antholo ...
- java使用代理发post请求
这东西啊,本身是无用的,但是要是移植就有用. package util; import java.util.Properties; public class HttpProxyConfiger { p ...
- 安装svn客户端后,代码不能提交
转载:https://jingyan.baidu.com/article/e8cdb32b3312f637052badde.html
- saltstack在jianja模板中,执行salt函数来获取某些变量的值,并且将配置写入到配置文件中?
问题描述: 通过saltstack的jinja模板方式,可以将变量的值写入到配置文件,即动态获取的方式.这里介绍,通过执行salt函数来获取值的方式. 演示: 1.通过在sls中,增加jinja的模板 ...
- VS2013-2017 舒服的字体设置和背景色
使用字体:Fixedsys Excelsior 3.01 1.如果没有安装字体的话,首先下载字体:http://www.fixedsysexcelsior.com/ 2.安装字体:控制面板 -> ...
- Python学习笔记(二)
标识符和关键字 1,邮箱的Python标识符是任意长度的非空字符序列(引导字符+后续字符.) python标识符必须符合两条规则--标识符区分大小写 (1)只要是unicode编码字母都可以充当引导字 ...
- iOS开发之--UIImageView的animationImages动画
图片动画实现,代码如下: -(UIImageView *)animationImageView { if (!_animationImageView) { _animationImageView= [ ...
- 【目录】Docker 基本操作
1 容器基本操作 : https://www.cnblogs.com/defineconst/p/9990611.html 2 容器启动退出 : https://www.cnblogs.com/def ...
- ORACLE调优深入理解AWR报告(转)
AWR报告分析可从以下几点入手: (1).Oacle主机资源开销分析及负载情况 (2).oracle top信息分析 Top 10 Foreground Events by Total Wait Ti ...