Kubernetes插件扩展技术介绍
1
目录
API扩展 4.1AggregationCustomResour 4.1 .1ceDefinition 4.1 .2访问控制 4.2认证 4.2.1RBAC授权 4.2.2准入控制 4.2.3Scheduler扩展 4.3网络插件 4.4CNI 4.4.1Flannel 4.4.2Cal ico 4.4.3Weave 4.4.4Ci l ium 4.4.5OVN 4.4.6ContivS 4.4.7R-IOV 4.4.8RomanaOpenC 4.4.9ontrai lKuryr 4.4.10运行时插件 4.4.1 1CRICRI- 4.5toolsFrakti 4.5.1存储插件 4.5.2容器存储接口 4.6CSIFlexVolumeglus 4.6.1terfs 4.6.2网络策略 4.6.3IngressControl ler 4.7Ingress+Letsencrypt 4.8
4.8.1
2
minikube Ingress 4.8.2
Traefik Ingress 4.8.3
Keepal ived-VIP 4.8.4Cloud Provider扩展 4.9Devi ce插件 4.10
3
API扩展
Kubernetes插件扩展技术指南
API扩展
Kubernetes的架构非常灵活提供了从API、认证授权、准入控制、 网络、存储、运行时以及云平台等一系列的扩展机制方便用户无侵入的扩展集群的功能。
从API的角度来说可以通过Aggregatio n和C ustom Reso urceDefinitio n CRD 等扩展Kubernetes API。
API Aggregation允许在不修改Kubernetes核心代码的同时将第三方服务注册到Kubernetes API中这样就可以通过Kubernetes API来访问外部服务。
Custom ResourceDefi nition则可以在集群中新增资源对象并可以与已有资源对象如Pod、 Deployment等相同的方式来管理它们。
CRD相比Aggregation更易用两者对比如下
CRDs AggregatedAPI
无需编程即可使用CRD管理资源 需要使用Go来构建Aggregated AP Iserver
无需额外管理版本 需要第三方服务来管理版本
更多的特性对比
Feature Description CRDs
565
API扩展
Val idation
566
API扩展
567
API扩展
Objects in Place Using kubectl
使用方法
详细的使用方法请参考
AggregationCustom ResourceDefi nition
568
Aggregation
Aggregation Layer
API Aggregation允许在不修改Kubernetes核心代码的同时扩展Kubernetes API 即将第三方服务注册到Kubernetes API中这样就可以通过Kubernetes API来访问外部服务。
备注另外一种扩展Kubernetes AP I的方法是使用CustomResourceDefi nition
(CRD)。
何时使用Aggregation
满足以下条件时使用API Aggregation 满足以下条件时使用独立API
开启APIAggregationkube-apiserver增加以下配置
568
Aggregation
--requestheader-client-ca-file=<path to aggregator CAcert>
--requestheader-allowed-names=aggregator
--requestheader-extra-headers-prefix=X-Remote-Extra-
--requestheader-group-headers=X-Remote-Group
--requestheader-username-headers=X-Remote-User
--proxy-client-cert-file=<path to aggregator proxycert>
--proxy-client-key-file=<path to aggregator proxy key>
如果kube-proxy没有在Master上面运行还需要配置
--enable-aggregator-routing=true
创建扩展API
1 .确保开启APIServiceAPI 默认开启可用kubectlgetapiservice命令验证
2.创建RBAC规则
3.创建一个namespace用来运行扩展的API服务
4.创建CA和证书用于https
5.创建一个存储证书的s e c re t
6.创建一个部署扩展API服务的deployme nt并使用上一步的secret配置证书开启https服务
7.创建一个Cl usterRole和Cl usterRoleBi nd i ng
8.创建一个非namespace的apiservice注意设置spec.caBundle
9.运行kubectlget<resource-name>正常应该返回Noresourcesfound.
可以使用apiserver-bui lder工具自动化上面的步骤。
569
ucloud6.18推出全球大促活动,针对新老用户(个人/企业)提供云服务器促销产品,其中最低配快杰云服务器月付5元起,中国香港快杰型云服务器月付13元起,最高可购3年,有AMD/Intel系列。当然这都是针对新用户的优惠。注意,UCloud全球有31个数据中心,29条专线,覆盖五大洲,基本上你想要的都能找到。注意:以上ucloud 618优惠都是新用户专享,老用户就随便看看!点击进入:uclou...
RAKsmart 商家这几年还是在做事情的,虽然他们家顺带做的VPS主机并不是主营业务,毕竟当下的基础云服务器竞争过于激烈,他们家主营业务的独立服务器。包括在去年开始有新增多个数据中心独立服务器,包括有10G带宽的不限流量的独立服务器。当然,如果有需要便宜VPS主机的他们家也是有的,比如有最低月付1.99美元的美国VPS主机,而且可选安装Windows系统。这里商家有提供下面六款六月份的活动便宜V...
轻云互联怎么样?轻云互联,广州轻云网络科技有限公司旗下品牌,2018年5月成立以来,轻云互联以性价比的价格一直为提供个人,中大小型企业/团队云上解决方案。本次轻云互联送上的是美国圣何塞cn2 vps(免费50G集群防御)及香港沙田cn2 vps(免费10G集群防御)促销活动,促销产品均为cn2直连中国大陆线路、采用kvm虚拟技术架构及静态内存。目前,轻云互联推出美国硅谷、圣何塞CN2GIA云服务器...