上一章docker开发教程请查看:docker持续集成操作
这一章我们讨论docker的Kubernetes框架以及如何安装docker Kubernetes。
一、docker Kubernetes架构Kubernetes是Docker容器的编制框架,它帮助将容器作为服务公开给外部,例如可以有两个服务,一个服务包含nginx和mongoDB,另一个服务包含nginx和redis。每个服务可以有一个可以由其他应用程序连接的IP或服务点,然后使用Kubernetes来管理这些服务。
下图以一种简单的格式显示了如何从Kubernetes架构的角度工作。
文章图片
minion是所有服务运行的节点,你可以让很多minion同时运行,每个minion将拥有一个或多个POD,每个POD就像托管一个服务,每个POD都包含Docker容器,每个POD可以承载一组不同的Docker容器,然后使用代理来控制向外部公开这些服务。
Kubernetes在其架构中有几个重要组件,每个组件的作用解释如下:
- etcd—这个组件是一个高可用的键值存储,用于存储共享配置和服务发现,在这里各种应用程序将能够通过发现服务连接到服务。
- flannel—这是一个容器必须的后端网络。
- kube-apiserver——这是一个可以用来编排Docker容器的API。
- kube-controller-manager—用于控制Kubernetes服务。
- kube-scheduler——用于在主机上调度容器。
- Kubelet——它用于通过清单文件控制容器的发射。
- kube-proxy——用于向外部世界提供网络代理服务。
步骤1—确保你正在使用的Ubuntu服务器(尽量使用最新版)。
步骤2—确保生成一个ssh密钥用于ssh登录,你可以使用以下命令来完成此任务。
ssh-keygen
这将在你的主文件夹中生成一个密钥,如下所示。
文章图片
步骤3—根据你的Ubuntu版本需要将相关的站点添加到apt包管理器的列表的docker.list中,以便它能够从Kubernetes站点检测Kubernetes包并相应地下载它们。
我们可以使用以下命令来完成。
curl -s https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
echo " deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/docker.list
步骤4—我们执行一个apt-get update命令,确保所有的包都在Ubuntu服务器上下载。
文章图片
步骤5 -安装Docker包,如前几章所述。
步骤6 -现在是时候安装kubernetes了,通过安装以下软件包
apt-get install -y kubelet kubeadm kubectl kubernetes-cni
文章图片
步骤7—下载完所有kubernetes包之后,就可以使用下面的命令启动kubernetes控制器了:
kubeadm init
【docker Kubernetes框架解析和安装步骤详解——docker开发教程】运行以上命令可能会报错: [ERROR Swap]: running with swap on is not supported. Please disable swap,解决办法为执行以下命令然后重新执行kubeadm init命令。
swapoff -a
完成之后你将获得一条成功的消息,说明主服务器已经启动并正在运行,节点现在可以加入集群。
文章图片
推荐阅读
- docker持续集成操作详解——docker开发教程
- docker组合compose操作和使用详解——docker开发教程
- docker日志管理介绍和使用——docker开发教程
- docker cloud云服务使用和操作——docker开发教程
- docker windows安装ASP.Net详细步骤——docker开发教程
- windows docker工具箱介绍和使用——docker开发教程
- docker安装Node.js、MongoDB和Nginx详细步骤全解——docker开发教程
- docker网络通信操作介绍——docker开发教程
- docker存储技术原理和操作介绍——docker开发教程