当前位置: 首页 > news >正文

中型网站开发语言廊坊网站建设-纵横网络+网站

中型网站开发语言,廊坊网站建设-纵横网络+网站,wordpress文章代码插件,代做网站app文章目录 概要利用RBAC添加角色权限使用shell命令创建角色权限使用配置文件创建角色权限 调用k8s的api获取k8s账户的token 小结 概要 使用kubernetes部署项目时,有些特殊场景,我们需要在自己创建的pod里面调用k8s的api来管理k8s,但是需要使用…

文章目录

    • 概要
    • 利用RBAC添加角色权限
      • 使用shell命令创建角色权限
      • 使用配置文件创建角色权限
    • 调用k8s的api
      • 获取k8s账户的token
    • 小结

概要

使用kubernetes部署项目时,有些特殊场景,我们需要在自己创建的pod里面调用k8s的api来管理k8s,但是需要使用指定用户权限,该用户证使用当前命名空间的资源,不能使用其他命名空间的api和资源。

利用RBAC添加角色权限

创建命名空间,创建后会默认新建一个service_account

kubectl create namespace demo

使用shell命令创建角色权限

创建role和rolebinding

kubectl create role demo_admin_role --resource=* --verb=* --namespace=demo
kubectl create rolebinding demo_admin_role_binding --role=demo_admin_role --serviceaccount=demo:default --namespace demo

使用配置文件创建角色权限

kubectl create -n xijia -f rbac.yaml

配置文件如下:

  • 定义了role和rolebinding,role名称为创建的role名称为【admin_role】,以及rolebinding名称为【admin_role_binding】。
  • rolebinding的作用就是把role和account关联起来,这样我们的account就能拿到相应的权限。
  • role包括了deployments,pods,services,configmaps四个资源的get,list,watch,create,update,delete。如果想给所有权限,也可以用*
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:name: admin_rolenamespace: demo
rules:
- apiGroups:- "apps"resources:- "deployments"verbs:- "get"- "list"- "watch"- "create"- "update"- "delete"
- apiGroups:- ""resources:- "pods"- "services"- "configmaps"verbs:- "get"- "list"- "watch"- "create"- "update"- "delete"---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:name: admin_role_bindingnamespace: demo
roleRef:apiGroup: rbac.authorization.k8s.iokind: Rolename: admin_role
subjects:
- kind: ServiceAccountname: defaultnamespace: demo

调用k8s的api

默认调用k8s的api是会返回401认证失败的错误的,所以我们需要先拿到demo:default账户的token才能调用k8s的api接口

获取k8s账户的token

kubectl describe secret --namespace demo default-token-frn4q

可以看到返回的token非常长,这个是正常的,后面这个就是认证的token。
在这里插入图片描述
先进入pod,我们在pod里面测试调用k8s的api。下面的命令就是获取demo命名空间下的所有pod。

curl -k --header "Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ik1zZ3BGcTNoam9FakxjOW93QTVyY3JhOWY5Z1RibkhCOENkSkNST0Uzc1kifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJ4aWppYSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJ0ZXN0MTIzLXRva2VuLTV3NTQ5Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6InRlc3QxMjMiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI1ZmRkN2IxYy02YTcxLTQ2ODQtYTM2ZC1lZTNkMGQzN2Y3YmMiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6eGlqaWE6dGVzdDEyMyJ9.AANC-2tRA17cvsqrAQM3_3JnE1BeMhg1tnSU_SThayj_0FqKOcZXecq3biQAPKPmHEBtNI9CFZnsihBDKV7o9I8OPl_8-urBIk9IrhlaYx7iu8OefA-zqNTofL331bbTuwJriE6qInFdKQH8YpJgJbpSyJLYptiu6Uqm_O2KVOASH0P5msZ_caMv7KvTsV-oYGM3XhrlL_eVIX10ENKNaF13nvglUH6mRcu4s2PB6E9KKMvsO7c7QSj9iJPj6semxTUEOf2iQJXlWIE2p6lReYGnNavh471kytwopt5GzG_8l4cH8XKX5v_tj1UroIPGqVGqHKUfPL3C3hucdUe4Gw" https://kubernetes.default.svc:443/api/v1/namespaces/demo/pods

如果获取default命名空间下的pod,就会返回403权限不足的错误

curl -k --header "Authorization: Bearer YOUR_TOKEN" https://kubernetes.default.svc:443/api/v1/namespaces/default/pods

小结

k8s的api十分丰富,平时用到的deployment,pod,service都可以使用api来操作。官方文档如下:https://kubernetes.io/zh-cn/docs/reference/access-authn-authz/rbac/#api-overview

http://www.yayakq.cn/news/884561/

相关文章:

  • 浙江省城乡和住房建设厅网站六安公司做网站
  • 微网站设计与开发教程河北建设工程信息网登陆
  • 如何做网站链接分享朋友圈南京设计公司前十名
  • 网站行业关键词电脑怎么把字体导入wordpress
  • 如何查看网站根目录wordpress 整站音乐
  • 男人需要网站自助建站 平台
  • 网站弹窗设计银川微信网站制作
  • 企业微网站与手机微信app 快速开发平台
  • 北辰做网站公司电子商务主要是做什么的
  • 与通信工程专业做项目的网站用糖做的网站
  • 深圳电梯广告制作公司网站网络营销策划方案简介
  • 北京网站开发优选ls20227软件推荐网站
  • 合肥网站优化软件江苏 网站 备案
  • 营销型网站建设课程策划公司网站设计
  • 顺德顺的网站建设网站欣赏与创建网页
  • 维护网站的职位叫什么深圳公司注销流程
  • 太原做学校网站的公司wordpress摘要 省略号
  • 手机版网站建站apicloud官网下载
  • 简洁软件下载网站源码友创互联网站建设有限公司
  • 做网站那些好公司介绍ppt内容
  • 厦门网站公司苏州比较好的软件公司有哪些
  • 明星个人网站建设需求分析惠州html5网站建设
  • 怎样用dede搭建网站wordpress教育培训
  • 手游源码网站长兴网站建设公司
  • 360网站优化工业企业网络推广方案
  • 建设银行金牛支行网站做有奖竞猜网站违法吗
  • 昌平县城做网站欧美专业牙科医院网站网页源码
  • 免费移动网站模板下载安装东莞美容网站建设
  • 手机网站排行榜镇平县建设局网站
  • 进一步加强网站内容建设龙岩任做网站的哪几个比较好