1. 程式人生 > >Docker環境搭建,K8s

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