toppic
当前位置: 首页> 奇幻小说> 浅尝DaoCloud Enterprise(三)实施部署

浅尝DaoCloud Enterprise(三)实施部署

2020-06-28 08:27:33
上一章中我们完成了部署DCE(DaoCloud Enterprise)的准备工作,本章主要介绍DCE容器云管平台的在线方式部署。
1
DCE Toolbox

DCE环境的配置和管理工作是基于daocloud.io/daocloud/dce:latest的ToolBox镜像来完成,在执行管理操作的时候该镜像会被run成临时容器,并指定相应的命令或参数即可完成环境中的大多数工作。

# bash -c "$(docker run --rm daocloud.io/daocloud/dce)"

DaoCloud Enterprise Toolbox.

Usage:

  bash -c "$(docker run -i --rm daocloud.io/daocloud/dce:1.4.0 [options] [COMMAND] [ARGS...])"

Options:

  --verbose          Show more output.

Commands:

  install        Install the DCE Controller.

  join            Install the DCE Engine and join Cluster.

  pull            Pull the DCE Images.

  uninstall    Uninstall the DCE Controller or Engine.

  upgrade     Upgrade the DCE Existing Controller or Engine.

  setup-overlay   Setup DCE Controller or Engine Overlay network configuration.

  setup-insecure  Setup DCE Controller or Engine insecure registry configuration.

  setup-storage   Setup Docker Storage to configure the devicemapper backends.

  build-template  Build DCE Engine template.

  start      Start the DCE.

  stop      Stop the DCE.

  restart   Restart the DCE.

  logs       Show the DCE logs.

  status    Show the DCE status.

  info        Show the DCE information.

  backup   Backup DCE data.

  restore   Restore DCE data from backup.

  version   Show the DCE version information.

通过以上输出我们可以看到DCE Toolbox创建的临时容器可以完成很多工作,如DCE的安装卸载、启动停止、备份恢复等等…


我们也可以使--help参数查看每个命令具体如何使用,这里以我们即将用到的install和join为例。

  

install命令

用来完成DCE Controller的安装

# bash -c "$(docker run --rm daocloud.io/daocloud/dce install --help)"

Install the DCE Controller.

Usage: do-install [options]

Description:

  The command will install the DCE controller on this machine.

Options:

  -q, --quiet             Quiet. Do not ask for anything.

  --force-pull            Always Pull Image, default is pull when missing.

  --swarm-port PORT       Specify the swarm manager port(default: 2376).

  --controller-port PORT  Specify the dce controller port(default: 80).

  --replica               Install as a replica for HA.

  --replica-controller IP Specify the primary controller IP.

  --no-overlay            Do not config Overlay network.

  --secure-registry       Config insecure-registry.

  --experimental          Enable experimental Swarm Experimental Features.

  --host-address IP       Specify the node IP address.

  --dry-run               Start as a test process without install DCE.


join命令

用来完成DCE Agent的安装

# bash -c "$(docker run --rm daocloud.io/daocloud/dce join --help)"

Install the DCE Engine and join Cluster.

Usage: do-join [options] CONTROLLER_IP

Description:

  The command will install the DCE Engine on this machine and join it to the DCE Cluster.

Options:

  -q, --quiet            Quiet. Do not ask for anything.

  --force-pull           Always Pull Image, default is pull when missing.

  --no-overlay           Do not config Overlay network.

  --secure-registry      Config insecure-registry.

  --experimental         Enable experimental Swarm Experimental Features.

  --host-address IP      Specify the node IP address.

  --dry-run              Start as a test process without install DCE.

以上每个命令和参数的英文说明已经很详细且明了,这里就不一一翻译了。


下面我们开始DCE 1.4.0版本的部署。


2
主控节点安装

[root@dce-master ~]# bash -c "$(docker run -i --rm daocloud.io/daocloud/dce install)" 

.

.

.

DCE Controller Installed Successfully

--------------------------------------------------------------------------------

WEB: http://192.168.2.173

CLI: export DOCKER_HOST="tcp://192.168.2.173:80"; docker info

NOTES:

 * Enable Insecure Registry need restart docker daemon: systemctl restart docker

--------------------------------------------------------------------------------

安装过程会持续一定的时间,主要是下载DCE相关的镜像。在安装成功后会提示WBE和CLI的信息,如果默认有创建Registry,则需要按照NOTES的内容重启docker服务。


拉取的镜像

[root@dce-master ~]# docker images

REPOSITORY                                            TAG 

daocloud.io/daocloud/dce-agent           1.4.0 

daocloud.io/daocloud/dce                      1.4.0 

daocloud.io/daocloud/dce-controller     1.4.0 

daocloud.io/daocloud/dce                     latest 

daocloud.io/daocloud/dce-swarm          1.4.0 

daocloud.io/daocloud/dce-lb                  1.4.0 

daocloud.io/daocloud/dce-etcd              1.4.0 

daocloud.io/daocloud/dce-compose      1.4.0 

安装过程会下载多个镜像,其中dce-agent,dce-swarm,dce-controller我们在第一章介绍的时候已经提到过,控制节点运行的4个容器的基础镜像dce-lb和dce-compose两个镜像是会在后续使用DCE的过程中被作为临时容器而调用


运行的容器

[root@dce-master ~]# docker ps

 IMAGE                                                      NAMES

daocloud.io/daocloud/dce-agent:1.4.0  dce_agent_1

daocloud.io/daocloud/dce-controller:1.4.0  dce_controller_1

daocloud.io/daocloud/dce-swarm:1.4.0  dce_swarm-manager_1

daocloud.io/daocloud/dce-etcd:1.4.0  dce_etcd_1

主控节点运行四个容器,dce_agent_1dce_controller_1dce_swarm-manager_1dce_etcd_1


3
辅控节点安装

[root@dce-slave01 ~]# bash -c "$(docker run --rm daocloud.io/daocloud/dce install --force-pull --replica --replica-controller 192.168.2.173)"

.

.

.

DCE Controller Installed Successfully

--------------------------------------------------------------------------------

WEB: http://192.168.2.158

CLI: export DOCKER_HOST="tcp://192.168.2.158:80"; docker info

NOTES:

 * Enable Insecure Registry need restart docker daemon: systemctl restart docker

--------------------------------------------------------------------------------

副控节点安装需要添加replica参数,并指定主控节点的IP


拉取的镜像

[root@dce-slave01 ~]# docker images

REPOSITORY                                        TAG                 

daocloud.io/daocloud/dce-agent        1.4.0              

daocloud.io/daocloud/dce                   1.4.0               

daocloud.io/daocloud/dce-controller  1.4.0               

daocloud.io/daocloud/dce                    latest              

daocloud.io/daocloud/dce-swarm        1.4.0               

daocloud.io/daocloud/dce-lb                1.4.0              

daocloud.io/daocloud/dce-etcd             1.4.0              

daocloud.io/daocloud/dce-compose     1.4.0               


运行的容器

[root@dce-slave01 ~]# docker ps

 IMAGE                                                NAMES

daocloud.io/daocloud/dce-agent:1.4.0        dce_agent_1

daocloud.io/daocloud/dce-controller:1.4.0      dce_controller_1

daocloud.io/daocloud/dce-swarm:1.4.0           dce_swarm-manager_1

daocloud.io/daocloud/dce-etcd:1.4.0           dce_etcd_1

由于副控节点和主控节点提供的功能是一样且在本例中是"三活"状态,所以副控节点下载的镜像和运行的容器完全跟主控节点一样。


4
容器节点安装

[root@dce-agent01 ~]# bash -c "$(docker run --rm daocloud.io/daocloud/dce join --force-pull 192.168.2.173)"

.

.

.

DCE Agent Installed Successfully

--------------------------------------------------------------------------------

WEB: http://192.168.2.173

CLI: export DOCKER_HOST="tcp://192.168.2.173:80"; docker info

NOTES:

 * Enable Insecure Registry need restart docker daemon: systemctl restart docker

--------------------------------------------------------------------------------

容器节点的安装需要用到join命令且需指定主控节点的IP


拉取的镜像

[root@dce-agent01 ~]# docker images

REPOSITORY                                    TAG 

daocloud.io/daocloud/dce-agent   1.4.0   

daocloud.io/daocloud/dce              1.4.0         

daocloud.io/daocloud/dce             latest      

daocloud.io/daocloud/dce-lb         1.4.0    

容器节点下载dce-agent镜像,作为运行DCE Agent应用/服务的基础镜像。


运行的容器

[root@dce-agent01 ~]# docker ps

IMAGE                    NAMES

daocloud.io/daocloud/dce-agent:1.4.0    dce_agent_1

容器节点仅运行dce_agent_1容器,负责与控制节点之间的通信和调度。


5
部署验证

访问测试

浏览器中访问主控节点的IP地址


登录测试

登录控制面板,输入已配置的用户名和密码登录


环境验证

查看整个DCE环境的基础信息

可以看到5台Docker宿主机均以规划的角色加入到DCE环境中


至此整个DaoCloud Enterprise环境的部署就到这里,后续会不定期更新DCE环境具体使用相关的文章,敬请期待。


PS:原创不易,欢迎关注'小张烤茄'一起学习交流



友情链接