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
云基yunbase怎么样?云基成立于2020年,目前主要提供高防海内外独立服务器,欢迎各类追求稳定和高防优质线路的用户。业务可选:洛杉矶CN2-GIA+高防(默认500G高防)、洛杉矶CN2-GIA(默认带50Gbps防御)、香港CN2-GIA高防(双向CN2GIA专线,突发带宽支持,15G-20G DDoS防御,无视CC)。目前,美国洛杉矶CN2-GIA高防独立服务器,8核16G,最高500G ...
优惠码50SSDOFF 首月5折50WHTSSD 年付5折15OFF 85折优惠,可循环使用荷兰VPSCPU内存SSD带宽IPv4价格购买1核1G50G1Gbps/3TB1个$ 9.10/月链接2核2G80G1Gbps/5TB1个$ 12.70/月链接2核3G100G1Gbps/7TB1个$ 16.30/月链接3核4G150G1Gbps/10TB1个$ 18.10/月链接阿联酋VPSCPU内存SS...
RAKsmart怎么样?RAKsmart发布了2021年中促销,促销时间,7月1日~7月31日!,具体促销优惠整理如下:1)美国西海岸的圣何塞、洛杉矶独立物理服务器低至$30/月(续费不涨价)!2)中国香港大带宽物理机,新品热卖!!!,$269.23 美元/月,3)站群服务器、香港站群、日本站群、美国站群,低至177美元/月,4)美国圣何塞,洛杉矶10G口服务器,不限流量,惊爆价:$999.00,...