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
hostsailor怎么样?hostsailor成立多年,是一家罗马尼亚主机商家,机房就设在罗马尼亚,具说商家对内容管理的还是比较宽松的,商家提供虚拟主机、VPS及独立服务器,今天收到商家推送的八月优惠,针对所有的产品都有相应的优惠,商家的VPS产品分为KVM和OpenVZ两种架构,OVZ的比较便宜,有这方面需要的朋友可以看看。点击进入:hostsailor商家官方网站HostSailor优惠活动...
近期RAKsmart上线云服务器Cloud Server产品,KVM架构1核1G内存40G硬盘1M带宽基础配置7.59美元/月!RAKsmart云服务器Cloud Server位于美国硅谷机房,下单可选DIY各项配置,VPC网络/经典网络,大陆优化/精品网线路,1-1000Mbps带宽,支持Linux或者Windows操作系统,提供Snap和Backup。RAKsmart机房是一家成立于2012年...
今天遇到一个网友,他在一个服务器中搭建有十几个网站,但是他之前都是采集站点数据很大,但是现在他删除数据之后希望设置可能有索引的文章给予404跳转页面。虽然他程序有默认的404页面,但是达不到他引流的目的,他希望设置统一的404页面。实际上设置还是很简单的,我们找到他是Nginx还是Apache,直接在引擎配置文件中设置即可。这里有看到他采用的是宝塔面板,直接在他的Nginx中设置。这里我们找到当前...