Kubernetes 的基本架构
· 3 min read
![A4IW0q](https://cosmos-x.oss-cn-hangzhou.aliyuncs.com/A4IW0q.png)
简化版架构图详细说明:https://time.geekbang.org/column/article/529800
基础入门
Kubernetes 是谷歌开源的容器集群管理系统,是 Google 多年大规模容器管理技术 Borg 的开源版本,主要功能包括:
- 基于容器的应用部署、维护和滚动升级
- 负载均衡和服务发现
- 跨机器和跨地区的集群调度
- 自动伸缩
- 无状态服务和有状态服务
- 广泛的 Volume 支持
- 插件机制保证扩展性
Kubernetes 发展非常迅速,已经成为容器编排领域的领导者。
它提供了很多功能,可以简化应用程序的工作流,加快开发速度。用户可以使用 Label 以自己的方式组织管理资源,此外,用户还可以编写自己的控制器和调度器,也可以通过各种插件机制扩展系统的功能。
这种设计使得可以方便地在 Kubernetes 之上构建各种应用系统。
![uhA0Xo](https://cosmos-x.oss-cn-hangzhou.aliyuncs.com/uhA0Xo.jpg)
部署配置
在国内部署集群时,通常还会碰到镜像无法拉去或者拉去过慢的问题,对这类问题的解决方法就是使用国内的镜像。
一般部署完成后,还需要运行一系列的测试来验证部署是成功的。sonobuoy 可以简化这个验证的过程。
创建 Kuberentes cluster 最简单的方法是 minikube。
首先下载 kubectl
curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s
https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64
chmod +x kubect
安装 minikube (以 MacOS 为例)
# install minikube
$ brew cask install minikube
$ curl -LO https://storage.googleapis.com/minikube/releases/latest/docker-machine
driver-hyperkit
$ sudo install -o root -g wheel -m 4755 docker-machine-driver-hyperkit
/usr/local/bin/
在 Windows 上面
choco install minikube
choco install kubernetes-cli
最后启动minikube
# start minikube.
# http proxy is required in China
$ minikube start --docker-env HTTP_PROXY=http://proxy-ip:port --docker-env
HTTPS_PROXY=http://proxy-ip:port --vm-driver=hyperkit
![mJM2qC](https://cosmos-x.oss-cn-hangzhou.aliyuncs.com/mJM2qC.jpg)