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

网站编辑是做网页编辑吗免费crm

网站编辑是做网页编辑吗,免费crm,建设审批网站查询,十堰推广公司一、K8s 多租户管理 多租户是指在同一集群中隔离多个用户或团队,以避免他们之间的资源冲突和误操作。在K8s中,多租户管理的核心目标是在保证安全性的同时,提高资源利用率和运营效率。 在K8s中,该操作可以通过命名空间&#xff0…

一、K8s 多租户管理

多租户是指在同一集群中隔离多个用户或团队,以避免他们之间的资源冲突和误操作。在K8s中,多租户管理的核心目标是在保证安全性的同时,提高资源利用率和运营效率。

K8s中,该操作可以通过命名空间(Namespaces)+ RBAC角色权限控制实现资源的隔离。每个租户都可以拥有自己的命名空间,从而避免资源名称的冲突。此外,通过资源配额(Resource Quotas)和限制范围(Limit Ranges),进一步确保每个租户只能使用一定量的计算资源,如CPU、内存,以及API对象的数量等。通过RBAC,为每个租户或用户组分配不同的角色和权限,从而确保他们只能访问和操作他们有权管理的资源。

例如下图所示,这是一个简单的多租户案例,租户A仅能操控命名空间 ns1 中的资源,而租户B也只能操控命名空间 ns2 中的资源,对于对方的的资源均无法操作。并且每个租户的资源也不是无限使用的,通过资源配额为每个命名空间限制了使用额度,这样就不会因为某一个租户资源使用过大影响其他租户的应用。

在这里插入图片描述

下面开始实践下上图中的结构。

二、创建租户

1. 创建租户的命名空间

这里创建两个命名空间,下面分配给租户A和租户B使用:

kubectl create ns ns1
kubectl create ns ns2

2. 对两个命名空间进行资源配额

vi ns_rq.yml
apiVersion: v1
kind: ResourceQuota
metadata:name: ns1-rqnamespace: ns1
spec:hard:requests.cpu: "2"requests.memory: 2Gilimits.cpu: "4"limits.memory: 4Gipods: "200"services: "50"persistentvolumeclaims: "30"secrets: "100"configmaps: "100"
---
apiVersion: v1
kind: ResourceQuota
metadata:name: ns2-rqnamespace: ns2
spec:hard:requests.cpu: "2"requests.memory: 2Gilimits.cpu: "4"limits.memory: 4Gipods: "200"services: "50"persistentvolumeclaims: "30"secrets: "100"configmaps: "100"

上面控制了cpu和内存的请求总和大小,以及一些资源的数量。

注意:这里为了方便后续的测试 cpu 和 内存 都给的比较少,根据你实际的情况进行配置。

kubectl apply -f ns_rq.yml

3. 创建租户A和租户B,指定命名空间,并分配权限

vi user.yml
# 创建租户
apiVersion: v1
kind: ServiceAccount
metadata:name: user-anamespace: ns1
---
# 分配操作权限
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:name: user-a-rolenamespace: ns1
rules:- apiGroups:- apps- ''resources:- deployments- replicasets- statefulsets- daemonsets- services- pods- pods/log- pods/exec- namespaces- configmaps- secrets- endpoints- storageclasss- persistentvolumes- persistentvolumeclaims- jobs- daemonsets- cronjobsverbs:- list- get- watch- create- update- delete- patch- edit- view---
# 绑定用户
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:name: user-a-role-bdnamespace: ns1
roleRef:apiGroup: rbac.authorization.k8s.iokind: Rolename: user-a-role
subjects:
- kind: ServiceAccountname: user-anamespace: ns1---
# 创建租户
apiVersion: v1
kind: ServiceAccount
metadata:name: user-bnamespace: ns2
---
# 分配操作权限
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:name: user-b-rolenamespace: ns2
rules:- apiGroups:- apps- ''resources:- deployments- replicasets- statefulsets- daemonsets- services- pods- pods/log- pods/exec- namespaces- configmaps- secrets- endpoints- storageclasss- persistentvolumes- persistentvolumeclaims- jobs- daemonsets- cronjobsverbs:- list- get- watch- create- update- delete- patch- edit- view---
# 绑定用户
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:name: user-b-role-bdnamespace: ns2
roleRef:apiGroup: rbac.authorization.k8s.iokind: Rolename: user-b-role
subjects:
- kind: ServiceAccountname: user-bnamespace: ns2
kubectl apply -f user.yml

3. 查看租户 A 和 租户B 的 Token

查看租户A:

echo $(kubectl -n ns1 get secret $(kubectl -n ns1 get secret | grep user-a | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d)

在这里插入图片描述

查看租户B:

echo $(kubectl -n ns2 get secret $(kubectl -n ns2 get secret | grep user-b | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d)

在这里插入图片描述

下面就可以将用户名、tokenmaster 的地址给到具体租户去使用了,例如:

租户:user-a

token:eyJhbGciOiJSUzI1NiIsImtpZCI6IlA5SnRxTkVjcGV3bVdmeWV5SHo0VFBSaXdWVVYwWGMzNmYtY1NZMVRwYkUifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJuczEiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlY3JldC5uYW1lIjoidXNlci1hLXRva2VuLWx3Yjc4Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6InVzZXItYSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6IjRhZTUwZWI4LThhMTEtNDQ2Yy05NTEyLWE1MmI3NzMxNDNlMSIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpuczE6dXNlci1hIn0.LI72bJeJERegwnwkAp8AKlvplcJMrhhYvr6K70dtQ02MXepbhVtouB_1yUiZODQZvyaRgrbgFUhEzVFB6YunB7cm2WH2blOaj_3hvuLw9FZRQ7IWmeKV7a07aviUg58ZGlrdOzUXYKNBT-A3y1zb6XrHOXNSiOZjHwQob1ft1GOM04bu7GnO6docgDXjQ0h6knpiwNFUqG-I9tI9I52dUOsUbxnhyrCzxUIJsfa2eoHOP-mz3m8ud-WLFwaOmH0G49STZnmkWs2pJJqBqP0LRJ_fs2gmgS6kMITwxraR81kBXywmVi6szNReX74fHhNVyNa-kE0gZSG6S9C-uqEJUw
master-server:https://11.0.1.144:6443

三、租户使用测试

使用 kubectl 指向提供的集群,如果已经指定可不设置:

kubectl config set-cluster cluster --insecure-skip-tls-verify=true --server=https://11.0.1.144:6443

在这里插入图片描述

设置租户的 token

格式:kubectl config set-credentials {租户名} --token={token}

kubectl config set-credentials user-a --token=eyJhbGciOiJSUzI1NiIsImtpZCI6IlA5SnRxTkVjcGV3bVdmeWV5SHo0VFBSaXdWVVYwWGMzNmYtY1NZMVRwYkUifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJuczEiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlY3JldC5uYW1lIjoidXNlci1hLXRva2VuLWx3Yjc4Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6InVzZXItYSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6IjRhZTUwZWI4LThhMTEtNDQ2Yy05NTEyLWE1MmI3NzMxNDNlMSIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpuczE6dXNlci1hIn0.LI72bJeJERegwnwkAp8AKlvplcJMrhhYvr6K70dtQ02MXepbhVtouB_1yUiZODQZvyaRgrbgFUhEzVFB6YunB7cm2WH2blOaj_3hvuLw9FZRQ7IWmeKV7a07aviUg58ZGlrdOzUXYKNBT-A3y1zb6XrHOXNSiOZjHwQob1ft1GOM04bu7GnO6docgDXjQ0h6knpiwNFUqG-I9tI9I52dUOsUbxnhyrCzxUIJsfa2eoHOP-mz3m8ud-WLFwaOmH0G49STZnmkWs2pJJqBqP0LRJ_fs2gmgS6kMITwxraR81kBXywmVi6szNReX74fHhNVyNa-kE0gZSG6S9C-uqEJUw

在这里插入图片描述

设置 context ,指定默认的命名空间名称:

kubectl config set-context user-context --cluster=cluster --user user-a --namespace=ns1

在这里插入图片描述

切换到上面的 context 中:

kubectl config use-context user-context

在这里插入图片描述

测试访问其他命名空间的资源

查看 ns2 下有哪些 pod

kubectl get pods -n ns2

在这里插入图片描述

可以看出无法访问。

测试创建资源,申请配额大于限制时

vi test-nginx.yml
apiVersion: apps/v1
kind: Deployment
metadata:name: nginxspec:replicas: 3selector:matchLabels:run: nginxtemplate:metadata:labels:run: nginxspec:containers:- image: nginx:1.20.1name: nginxports:- containerPort: 80protocol: TCPresources: limits:  cpu: "2" memory: "2Gi" requests: cpu: "1"  memory: "1Gi"
kubectl apply -f test-nginx.yml

查看 pod

kubectl get pods

在这里插入图片描述

可以看到仅创建成功了两个 pod,因为资源已经使用完了。

可以通过管理员查看 ns 空间的配额情况:

kubectl get quota -n ns1

在这里插入图片描述

可以看到都已经使用满了。

如果此时管理员给 ns1 空间提高配额:

kubectl edit resourcequota ns1-rq -n ns1

在这里插入图片描述

更新服务:

kubectl apply -f test-nginx.yml

等待片刻后,使用租户A再次查看pod

在这里插入图片描述

pod 已经全部起来了


文章转载自:
http://dinncosmogout.ssfq.cn
http://dinncogustiness.ssfq.cn
http://dinncochoreodrama.ssfq.cn
http://dinncoclearer.ssfq.cn
http://dinncoretinocerebral.ssfq.cn
http://dinncocloudward.ssfq.cn
http://dinncohyperostosis.ssfq.cn
http://dinncounvaried.ssfq.cn
http://dinnconegligee.ssfq.cn
http://dinncohomomorphic.ssfq.cn
http://dinncoapatite.ssfq.cn
http://dinncoslum.ssfq.cn
http://dinncoemulational.ssfq.cn
http://dinncolebensspur.ssfq.cn
http://dinncodikereeve.ssfq.cn
http://dinncoimploration.ssfq.cn
http://dinncoregimen.ssfq.cn
http://dinncodigitoplantar.ssfq.cn
http://dinncoquicktime.ssfq.cn
http://dinncoassyrian.ssfq.cn
http://dinncochoripetalous.ssfq.cn
http://dinncoichthyophagous.ssfq.cn
http://dinncodowry.ssfq.cn
http://dinncorubral.ssfq.cn
http://dinncoemulational.ssfq.cn
http://dinncoaesthetics.ssfq.cn
http://dinncochymopapain.ssfq.cn
http://dinncoorach.ssfq.cn
http://dinncothuringia.ssfq.cn
http://dinncoblahs.ssfq.cn
http://dinncosulphatise.ssfq.cn
http://dinncocaryatid.ssfq.cn
http://dinncolists.ssfq.cn
http://dinncooverdrew.ssfq.cn
http://dinncomarplot.ssfq.cn
http://dinncobluebeard.ssfq.cn
http://dinncoyokemate.ssfq.cn
http://dinncotemporarily.ssfq.cn
http://dinncobolshevik.ssfq.cn
http://dinncopolicy.ssfq.cn
http://dinncostrainometer.ssfq.cn
http://dinncoembryotrophe.ssfq.cn
http://dinncobesmear.ssfq.cn
http://dinnconautic.ssfq.cn
http://dinncoorphic.ssfq.cn
http://dinncomoore.ssfq.cn
http://dinncoratal.ssfq.cn
http://dinncojaws.ssfq.cn
http://dinncoshily.ssfq.cn
http://dinncohackensack.ssfq.cn
http://dinncodisputatious.ssfq.cn
http://dinncofiume.ssfq.cn
http://dinncosomnial.ssfq.cn
http://dinncopension.ssfq.cn
http://dinncoroughdry.ssfq.cn
http://dinncocomputerese.ssfq.cn
http://dinncororic.ssfq.cn
http://dinncoprogenitrix.ssfq.cn
http://dinncofallback.ssfq.cn
http://dinncometalaw.ssfq.cn
http://dinncospin.ssfq.cn
http://dinncomingimingi.ssfq.cn
http://dinncotret.ssfq.cn
http://dinncoanimadvert.ssfq.cn
http://dinncooctaword.ssfq.cn
http://dinncoevirate.ssfq.cn
http://dinncomacroinstruction.ssfq.cn
http://dinncocharpit.ssfq.cn
http://dinncoevildoing.ssfq.cn
http://dinncokufic.ssfq.cn
http://dinncocaudal.ssfq.cn
http://dinncofishwood.ssfq.cn
http://dinncoscaredy.ssfq.cn
http://dinncoliquid.ssfq.cn
http://dinncoslangster.ssfq.cn
http://dinncodictagraph.ssfq.cn
http://dinncodetent.ssfq.cn
http://dinncoacreage.ssfq.cn
http://dinncoajiva.ssfq.cn
http://dinncothumbstall.ssfq.cn
http://dinncocyclery.ssfq.cn
http://dinncoinventory.ssfq.cn
http://dinncocryptorchid.ssfq.cn
http://dinncoinhabitancy.ssfq.cn
http://dinncomenu.ssfq.cn
http://dinncotsuris.ssfq.cn
http://dinncofiltrability.ssfq.cn
http://dinnconagana.ssfq.cn
http://dinncocrownet.ssfq.cn
http://dinncoshashlik.ssfq.cn
http://dinncoexpect.ssfq.cn
http://dinncophotosystem.ssfq.cn
http://dinncobathurst.ssfq.cn
http://dinncobarquentine.ssfq.cn
http://dinncospdos.ssfq.cn
http://dinncodichroitic.ssfq.cn
http://dinnconasaiism.ssfq.cn
http://dinncootherwhere.ssfq.cn
http://dinncoaquavit.ssfq.cn
http://dinncotorrential.ssfq.cn
http://www.dinnco.com/news/96920.html

相关文章:

  • 快站科技百度搜索入口官网
  • 网站做下载功能杭州seo优化公司
  • 网站必须要实名认证么郴州网站建设
  • 盐城网站建设费用seo课程多少钱
  • iis 隐藏网站营销推广运营
  • 济南房产网官网系统优化软件哪个好
  • 侯马建设规划局网站广州专门做网站
  • 比较出名做耐克的网站公司排名seo
  • 可靠的上海网站建设公百度推广代理商利润
  • 如何自己做电影网站广告服务平台
  • 网站首页风格搜索引擎最新排名
  • 苏州网站建设网站建设长沙seo关键词
  • 朝阳市网站建设dy刷粉网站推广马上刷
  • 赤峰做网站开发公司seo排名优化
  • 门户网站推广怎么做五种常用的网站推广方法
  • 株洲优化公司优化设计数学
  • 科技与生活上海优化seo
  • 做外汇的网站品牌推广方案
  • 呼市做网站公司怎样创建自己的网站
  • 厦门抖音代运营公司浙江seo外包
  • 注册网站到公安机关备案由谁告知培训方案模板
  • 好的网站2020seo一个月赚多少钱
  • 重庆忠县网站建设公司推荐互联网营销顾问是做什么的
  • 公司网站突然404百度推广有效果吗?
  • 上海开发网站贵阳网站建设
  • 网站建设作业多少钱广告平台有哪些
  • 网站设计中新闻版块怎么做南京seo排名优化
  • 医药类网站建设评价网络营销的内容主要有哪些
  • 网站模板怎么替换产品关键词大全
  • 网站业务怎么做百度seo关键词排名优化教程