专栏首页云原生架构实践Docker Data Center系列(二)- UCP安装指南

Docker Data Center系列(二)- UCP安装指南

本系列文章演示如何搭建一个mini的云平台和DevOps实践环境。 基于这套实践环境,可以部署微服务架构的应用栈,演练提升DevOps实践能力。

1 系统要求

1.1 硬件和软件要求

  • Linux内核版本3.10或更高
  • Docker EE Engine版本17.06.2-ee-8; 的值n在-ee-*后缀必须是8或更高
  • 静态IP地址

1.2 最低配置

  • 管理节点 8GB RAM
  • 工作节点 4GB RAM
  • 3GB 可用磁盘空间

1.3 推荐配置

  • 管理节点 16GB RAM
  • 管理节点 4个vCPU
  • 25-100GB 可用磁盘空间

1.4 操作系统支持

  • CentOS 7.4 (本文中默认使用的操作系统)
  • Red Hat Enterprise Linux 7.0, 7.1, 7.2, or 7.3
  • Ubuntu 14.04 LTS or 16.04 LTS
  • SUSE Linux Enterprise 12

1.5 其它

  • 同步时区和时间
  • 一致的主机名策略
  • 内部的DNS

1.6 版本适配

  • docker 17.06.2.ee.8+
  • UCP 3.0.2 : DTR 2.5.3
  • UCP 3.0.0 : DTR 2.5.1

注:DDC从UCP 3.0.0开始同时支持swarm和k8s。

1.7 网络要求

安装过程中UCP节点需要能下载docker官网的资源,如果不能访问,可通过其它机器下载软件包,然后执行离线安装。

如何离线安装UCP,请参考这里

1.8 使用的端口

在主机上安装UCP时,需要打开一系列端口以传入流量。这些端口都将接收来自一组主机的流量,根据主机来源的不同,端口可分为三个Scope:

  • External:流量通过终端用户交互从集群外部到达。
  • Internal:流量从同一集群中的其他主机到达。
  • Self:流量只从同一主机上的进程到达。

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

a, 如果没有firewalld,先要安装firewalld
$ yum install firewalld
b, 开启防火墙
$ systemctl start firewalld.service
c, 查看端口是否开放
$ firewall-cmd --zone=public --query-port=443/tcp
d, 开放端口
$ firewall-cmd --zone=public --add-port=443/tcp --permanent firewall-cmd --reload
e, 重载策略
$ firewall-cmd --reload

2 安装UCP

2.1 验证系统要求

安装UCP的第一步是确保具备UCP安装运行的所有要求。

2.2 安装Docker EE

确保在所有节点上安装相同的Docker EE版本。

如果是创建已安装Docker EE的虚拟机模板,请确保/etc/docker/key.json文件未包含在虚拟机映像中。配置虚拟机时,重新启动Docker守护程序以生成新/etc/docker/key.json文件。

CentOS7 安装 Docker EE,请参考这里

2.3 安装UCP

a, SSH到要安装UCP的主机。
b, 运行如下命令:
# 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>

使用管理员登录名和密码登录,登录成功后会进入默认主页仪表盘

注意:

  • host-address 最好用IP;
  • 安装过程中可能需要登录store.docker.com, 用自己的注册账号登录;
  • 安装过程中的输入值也可以在命令中以参数方式提供,具体请参考官方文档。

2.4 授权

a, 转到Docker Store并购买Docker EE订阅,购买或免费试用许可。
b, 在UCP Web UI中,导航到管理员设置页面,在左侧菜单中,单击许可证
c, 单击上传许可证,弹出窗口中选择已经下载好的(.lic)文件,UCP会使用新文件进行更新。

2.5 其它UCP命令

a, 更新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
b, 重启UCP
$ docker container run -it --rm --name ucp -v /var/run/docker.sock:/var/run/docker.sock docker/ucp:3.0.2 restart
c, 卸载UCP
$ docker container run --rm -it -v /var/run/docker.sock:/var/run/docker.sock --name ucp docker/ucp:3.0.2 uninstall-ucp --interactive

3 配置UCP

3.1 加入新节点

a, 在UCP Web UI中,导航到共享的资源下的节点页面,然后单击添加节点按钮添加新节点。
b, 在“ 添加节点页面中,选择节点类型LINUX。其它都默认。
c, 单击复制图标

复制docker swarm join节点用于加入群集的命令。

d, 对于要加入群集的每个节点,使用ssh登录并运行复制的join命令。join命令完成后,该节点将显示在UCP Web UI中的节点页面上。

3.2 配置自定义TLS安全认证

所有UCP服务都使用HTTPS,以确保客户端和UCP之间的所有通信是加密的。默认情况下,这是使用不受客户端工具(如Web浏览器)信任的自签名TLS证书完成的。

因此,当访问UCP时,浏览器会警告不信任UCP或UCP具有无效证书。

可以将UCP配置为使用自己的TLS证书,以便浏览器和客户端工具自动信任它。

a, 在UCP Web UI中,导航到管理员设置页面。
b, 在左侧菜单中,单击证书
c, 上传证书和密钥
  • cacert.pem:CA证书。
  • server.pem:服务器证书。
  • server.key:私钥。

如何为UCP生成证书和密钥,请参考这里

d, 最后,单击保存使更改生效。

系列文章

Docker Data Center系列(一) - 快速搭建云原生架构的实践环境

Docker Data Center系列(二)- UCP安装指南

Docker Data Center系列(三)- DTR安装指南

Docker Data Center系列(四)- 离线安装UCP和DTR

Docker Data Center系列(五)- 使用自定义的TLS安全认证

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Docker Data Center系列(三)- DTR安装指南

    安装过程中DTR节点需要能下载docker官网的资源,如果不能访问,可通过其它机器下载软件包,然后执行离线安装。

    羽客
  • Docker Data Center系列(四)- 离线安装UCP和DTR

    羽客
  • Docker EE 安装 on centos7

    有两种方法可以 在Centos上安装和升级Docker企业版(Docker EE):

    羽客
  • AI根据人们走路的姿态和方式判定情绪

    走路的姿态可能会说明你在特定时刻的感受,例如,当你感到压抑或沮丧时,你更有可能耷拉着肩膀。

    AiTechYun
  • Mysql中间件——Atlas

    Atlas是由 Qihoo 360公司Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目。它在MySQL官方推出的MySQL-Proxy ...

    aox.lei
  • Akka 使用系列之二: 测试

    通过上一篇文章,我们已经大致了解怎么使用 Akka,期待细致用法。这篇文章将介绍如何用 Akka-testkit 对 Akka 程序进行测试。 ? ...

    AlgorithmDog
  • 中国液态金属研究获突破,柔性机器人再进一步!

    近日,中科院理化所低温生物与医学研究组首次报道了液态金属可在石墨表面以任意形状稳定呈现的自由塑型效应,并实现了逆重力方式的攀爬运动,研究以封面文章形式发表于《先...

    机器人网
  • 如何给老婆解释什么是Restful

    果不其然,看着看着,她又对我发难了,“Restful是什么呀,老公?是restaurant的形容词吗,突然就觉得好饿了啊......”

    Java3y
  • SAP CRM IBASE头部字段valid from和valid to的填充逻辑

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

    Jerry Wang
  • 腾讯云开放自研TPG转码服务,大幅提升业界图片压缩率

    腾讯云携手腾讯音视频实验室将于2017年12月对外开放TPG (Tiny Portable Graphic)能力,对外共享世界级的图片压缩技术。

    云加社区

扫码关注云+社区

领取腾讯云代金券