通过ExternalDNS集成外部DNS服务
ExternalDNS项目的目的是,将Kubernetes的Service/Ingress暴露的服务(的DNS记录)同步给外部的DNS Provider。
ExternalDNS的设计思想类似于KubeDNS,都是从多种K8S API资源中推断需要生成的DNS记录。不同之处是…
阅读全文Kubefed学习笔记
集群联邦(Federation)的目的是实现单一集群统一管理多个Kubernetes集群的机制,这些集群可能是跨地区(Region),也可能是在不同公有云供应商上,亦或者是公司内部自行建立的集群。一但集群进行联邦后,就可以利用Federation API资…
阅读全文限制Pod磁盘空间用量
容器在运行期间会产生临时文件、日志。如果没有任何配额机制,则某些容器可能很快将磁盘写满,影响宿主机内核和所有应用。
容器的临时存储,例如emptyDir,位于目录/var/lib/kubelet/pods下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
/var/lib/kubelet/pods/ └── ac0810f5-a1ce-11ea-9caf-00e04c687e45 # POD_ID ├── containers │ ├── istio-init │ │ └── 32390fd7 │ ├── istio-proxy │ │ └── 70ed81da │ └── zookeeper │ └── e9e21e59 ├── etc-hosts # 命名空间的Host文件 └── volumes # Pod的卷 ├── kubernetes.io~configmap # ConfigMap类型的卷 │ └── istiod-ca-cert │ └── root-cert.pem -> ..data/root-cert.pem ├── kubernetes.io~downward-api │ └── istio-podinfo │ ├── annotations -> ..data/annotations │ └── labels -> ..data/labels ├── kubernetes.io~empty-dir # Empty类型的卷 │ ├── istio-data │ └── istio-envoy │ ├── envoy-rev0.json │ └── SDS ├── kubernetes.io~rbd # RBD卷 │ └── pvc-644a7e30-845e-11ea-a4e1-70e24c686d29 # /dev/rbd0挂载到这个挂载点 ├── kubernetes.io~csi # CSI卷 └── kubernetes.io~secret # Secret类型的卷 └── default-token-jp4n8 ├── ca.crt -> ..data/ca.crt ├── namespace -> ..data/namespace └── token -> ..data/token |
持久卷的挂载点也位于/var/lib/kubelet/pods下,但是不会导致存储空间的消耗。
容…
阅读全文Flexvolume学习笔记
容器在磁盘上写的文件是临时性的,没有持久化保证。如果容器崩溃,Kubelet会重启它,临时文件就都丢失了。此外,在Pod中运行的多个容器,可能有共享存储的需求。这两点正是K8S卷(Volume)来解决的。
Docker也有卷的概念,但是它的卷仅仅是宿主…
阅读全文CSI学习笔记
从1.8版本开始,Kubernetes Storage SIG开始停止接受in-tree卷插件,并建议所有供应商实现out-of-tree卷插件。CSI是两种out-of-tree的K8S卷扩展机制之一,另外一个是Flexvolume。
Flexvolume的工作方式是,由…
阅读全文通过WebAssembly扩展Envoy
WebAssembly(简称Wasm)是一种供基于栈的虚拟机使用的二进制指令格式。它作为C/C++/Rust这样的高级语言的编译目标,部署在现代浏览器或者服务器端应用程序中运行。
Wasm的优势:
- 性能:基于通用硬件能力实现Native运行速度
- 安…
Casbin学习笔记
Casbin是一个权限控制的开发库,它的特性包括:
- 支持多种编程语言,包括Go、Java、Node.js、PHP、Python等
- 支持ACL、RBAC、ABAC等多种访问控制模型
- 支持以典型的 {subject, object, action}形式,或者自定义的形式来定义策略,allow/deny授权均支持
- 支持处理访问控制模型,及其策略的存取(和存储后端交互)
- 支持管理角色-用…