Docker环境搭建,K8s
Posted jovic
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker环境搭建,K8s相关的知识,希望对你有一定的参考价值。
boot2docker
一个轻量级的 Linux 发行版,基于 Tiny Core Linux ,用来在 Windows 和 Mac 的虚拟机中运行 Docker 容器
Boot2Docker.iso 下载地址:
http://pan.baidu.com/s/1hrTqKcs
Docker Toolbox
整合工具包,让你方便的搭建一个 Docker 的开发环境,里面包含有 Docker client, Compose (Mac 才有), Kitematic (图形化工具), Docker Machine, VirtualBox (虚拟机,跑 boot2docker), 然后通过 Docker Machine 在虚拟机中建一个基于 boot2docker 的 Docker Engine 虚拟机,你可以在上面运行 docker 容器
国内的快速下载地址:(下载较快):
https://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/
Kubernetes(k8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展
使用Kubernetes可以:
1. 自动化容器的部署和复制
2. 随时扩展或收缩容器规模
3. 将容器组织成组,并且提供容器间的负载均衡
4. 很容易地升级应用程序容器的新版本
4. 提供容器弹性,如果容器失效就替换它,等等…
Kubernetes解决的问题:
1. 调度 - 容器应该在哪个机器上运行
2. 生命周期和健康状况 - 容器在无错的条件下运行
3. 服务发现 - 容器在哪,怎样与它通信
4. 监控 - 容器是否运行正常
5. 认证 - 谁能访问容器
6. 容器聚合 - 如何将多个容器合并成一个工程
Kubernetes组件组成:
1. kubectl
客户端命令行工具,将接受的命令格式化后发送给kube-apiserver,作为整个系统的操作入口。
2. kube-apiserver
作为整个系统的控制入口,以REST API服务提供接口。
3. kube-controller-manager
用来执行整个系统中的后台任务,包括节点状态状况、Pod个数、Pods和Service的关联等。
4. kube-scheduler
负责节点资源管理,接受来自kube-apiserver创建Pods任务,并分配到某个节点。
5. etcd
负责节点间的服务发现和配置共享。
6. kube-proxy
运行在每个计算节点上,负责Pod网络代理。定时从etcd获取到service信息来做相应的策略。
7. kubelet
运行在每个计算节点上,作为agent,接受分配该节点的Pods任务及管理容器,周期性获取容器状态,反馈给kube-apiserver。
8. DNS
一个可选的DNS服务,用于为每个Service对象创建DNS记录,这样所有的Pod就可以通过DNS访问服务了。
参考:
如何快速下载DockerToolbox?Boot2Docker? 使用国内开源镜像站点:
https://blog.csdn.net/CSDN_duomaomao/article/details/72944525
以上是关于Docker环境搭建,K8s的主要内容,如果未能解决你的问题,请参考以下文章
K8S基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)