本系列文章演示如何搭建一個mini的雲平臺和DevOps實踐環境。
基於這套實踐環境,能夠部署微服務架構的應用棧,演練提高DevOps實踐能力。html
注:DDC從UCP 3.0.0開始同時支持swarm和k8s。node
安裝過程當中UCP節點須要能下載docker官網的資源,若是不能訪問,可經過其它機器下載軟件包,而後執行離線安裝。
如何離線安裝UCP,請參考這裏。linux
在主機上安裝UCP時,須要打開一系列端口以傳入流量。這些端口都將接收來自一組主機的流量,根據主機來源的不一樣,端口可分爲三個Scope:web
Hosts | Port | Scope | Purpose |
---|---|---|---|
managers, workers | TCP 179 | Internal | Port for BGP peers, used for kubernetes networking |
managers | TCP 443 (configurable) | External, Internal | Port for the UCP web UI and API |
managers | TCP 2376 (configurable) | Internal | Port for the Docker Swarm manager. Used for backwards compatibility |
managers | TCP 2377 (configurable) | Internal | Port for control communication between swarm nodes |
managers, workers | UDP 4789 | Internal | Port for overlay networking |
managers | TCP 6443 (configurable) | External, Internal | Port for Kubernetes API server |
managers, workers | TCP 6444 | Self | Port for Kubernetes API reverse proxy |
managers, workers | TCP, UDP 7946 | Internal | Port for gossip-based clustering |
managers, workers | TCP 10250 | Internal | Port for Kubelet |
managers, workers | TCP 12376 | Internal | Port for a TLS authentication proxy that provides access to the Docker Engine |
managers, workers | TCP 12378 | Self | Port for Etcd reverse proxy |
managers | TCP 12379 | Internal | Port for Etcd Control API |
managers | TCP 12380 | Internal | Port for Etcd Peer API |
managers | TCP 12381 | Internal | Port for the UCP cluster certificate authority |
managers | TCP 12382 | Internal | Port for the UCP client certificate authority |
managers | TCP 12383 | Internal | Port for the authentication storage backend |
managers | TCP 12384 | Internal | Port for the authentication storage backend for replication across managers |
managers | TCP 12385 | Internal | Port for the authentication service API |
managers | TCP 12386 | Internal | Port for the authentication worker |
managers | TCP 12387 | Internal | Port for the metrics service |
managers | TCP 12388 | Internal | Internal Port for the Kubernetes API Server |
$ yum install firewalld
$ systemctl start firewalld.service
$ firewall-cmd --zone=public --query-port=443/tcp
$ firewall-cmd --zone=public --add-port=443/tcp --permanent
$ firewall-cmd --reload
安裝UCP的第一步是確保具有UCP安裝運行的全部要求。docker
確保在全部節點上安裝相同的Docker EE版本。
若是是建立已安裝Docker EE的虛擬機模板,請確保/etc/docker/key.json文件未包含在虛擬機映像中。配置虛擬機時,從新啓動Docker守護程序以生成新/etc/docker/key.json文件。json
CentOS7 安裝 Docker EE,請參考這裏。瀏覽器
# Pull the latest version of UCP $ docker image pull docker/ucp:3.0.2 # Install UCP $ docker container run --rm -it --name ucp \ -v /var/run/docker.sock:/var/run/docker.sock \ docker/ucp:3.0.2 install \ --host-address <node-ip-address> \ # 安裝UCP的主機IP --interactive
安裝命令會以交互模式運行,安裝過程當中會提示輸入必要的配置值,主要是管理員登陸名和密碼等。安全
安裝完成後,訪問UCP首頁https://<node-ip-address>
:服務器
使用管理員登陸名和密碼登陸,登陸成功後會進入默認主頁儀表盤
:網絡
注意:
管理員設置
頁面,在左側菜單中,單擊許可證
。上傳許可證
,彈出窗口中選擇已經下載好的(.lic)文件,UCP會使用新文件進行更新。$ docker image pull docker/ucp:3.0.2 $ docker container run --rm -it --name ucp -v /var/run/docker.sock:/var/run/docker.sock docker/ucp:3.0.2 upgrade --interactive
$ docker container run -it --rm --name ucp -v /var/run/docker.sock:/var/run/docker.sock docker/ucp:3.0.2 restart
$ docker container run --rm -it -v /var/run/docker.sock:/var/run/docker.sock --name ucp docker/ucp:3.0.2 uninstall-ucp --interactive
共享的資源
下的節點
頁面,而後單擊添加節點
按鈕添加新節點。節點類型
爲LINUX
。其它都默認。複製docker swarm join節點用於加入羣集的命令。
節點
頁面上。全部UCP服務都使用HTTPS,以確保客戶端和UCP之間的全部通訊是加密的。默認狀況下,這是使用不受客戶端工具(如Web瀏覽器)信任的自簽名TLS證書完成的。
所以,當訪問UCP時,瀏覽器會警告不信任UCP或UCP具備無效證書。
能夠將UCP配置爲使用本身的TLS證書,以便瀏覽器和客戶端工具自動信任它。
管理員設置
頁面。證書
。如何爲UCP生成證書和密鑰,請參考這裏。
保存
使更改生效。Docker Data Center系列(一) - 快速搭建雲原生架構的實踐環境
Docker Data Center系列(二) - UCP安裝指南
Docker Data Center系列(三) - DTR安裝指南
Docker Data Center系列(四) - 離線安裝UCP和DTR
Docker Data Center系列(五) - 使用自定義的TLS安全認證