Kubernetes端到端测试
简介
Kubernetes提供了一个端到端(E2E,从用户而非开发人员的角度)的测试框架,确保K8S代码库的行为一致、可靠。在分布式系统中,通过单元测试/集成测试用例,而端到端行为异常的情况不少见。E2E框架基于Ginkgo、Gomega构建。
除了保证测试覆盖率,编写E…
阅读全文
5 years ago
0
1
利用kind搭建本地K8S集群
简介
Kind是用于在本机运行K8S集群的工具,和Minikube不同,Kind创建的集群是多“节点”的,每个节点对应一个Containerd容器。
Kind的优势包括:
- 多节点、HA支持
- 支持从源码构建出K8S
- 支持Windows/macOS/Linux
Kind包含以下组…
阅读全文
5 years ago
0
Kubernetes故障检测和自愈
前言
在Kubernetes日常运维过程中,会出现各种各样的问题,例如:
- 节点CNI不可用,其它节点无法连接到故障节点的Pod
- Subpath方式挂载的Configmap,特定条件下出现Pod无限重启的问题
- 集群DNS服务器无法通过上游DNS解析外部名称
- 节点假死,…
5 years ago
0
6
Kustomize学习笔记
简介
Kustomize是一个定制化K8S资源定义(YAML)的工具,它不使用Helm那样的模板,比较简单。定制化之后,原始的资源定义保持不变。
从1.14版本开始Kustomize作为Kubectl的一部分进行分发。
术语
术语 | 说明 |
Base |
指会被其它定制(kus… |
5 years ago
0
在Kubernetes中管理和使用Jenkins
前言
如何在云原生环境下进行CI/CD,我们先前有一些经验:
- 使用Jenkins + Jenkins的Kubernete插件
- 在K8S中按需、动态创建执行CI/CD流水线的Agent
- 开发Jenkins共享库,简化编写流水线的难度
- 为每套环境(development…
5 years ago
0
Kubernetes的Service Catalog机制
何为服务目录
Service Catalog是K8S提供的一套扩展API,利用它,集群内的应用程序可以轻松的使用外部管理的服务。这种外部服务的典型例子是云服务商提供的中间件即服务。
外部服务由遵循Open service broker API规范的Service Broker管理,SC能通过此API调用S…
阅读全文
5 years ago
0
CoreDNS学习笔记
简介
CoreDNS是一个基于Go的DNS服务器,非常灵活,支持插件链。CoreDNS内置了30+的插件,你还可以将一些外部插件也编译到CoreDNS的二进制文件中。
安装
编译
1 2 3 4 5 6 7 8 |
export GOPATH=${GOPATH-~/go} mkdir -p $GOPATH/src/github.com/coredns cd $GOPATH/src/github.com/coredns/ wget https://github.com/coredns/coredns/archive/v1.0.5.tar.gz tar xvf v1.0.5.tar.gz mv coredns-1.0.5 coredns cd coredns make CHECKS= godeps all |
Docker
CoreDNS的每个版本都发布了Docker镜像,在容器中启动CoreDNS的示例:
1 2 3 |
docker run --name coredns -h coredns --network local --ip 172.21.0.12 -p 127.0.0.1:53:53 -p 127.0.0.1:53:53/udp \ --volume /media/alex/Repository/Linkage/Docker/coredns/:/root/ \ --restart=always -d docker.gmem.cc/coredns/coredns:1.5.0 -conf /root/Corefile |
插件机制
在加载了配置文件(默认为当前工作目录下的Corefile)后,CoreDNS就会运行一系列的DNS服务器。每个服务器由两个属性来识别…
阅读全文
5 years ago
0