0x1 容器云平台的搭建
使用Docker的好处是可以节省服务器费用,快速部署,快速扩展。
Docker 是一个开源的平台,设计目标是可以方便开发,方便部署和方便执行应用。使用docker可以快速分发开发好的应用。借助于Docker,你可以将开发平台和应用分离开,并且像管理应用一样管理开发平台。Docker可以帮助你快速开发应用,快速测试应用,快速部署应用,并且缩短开发代码和执行代码之间的周期间隔。
Docker 是凭借一个轻量级容器的虚拟化平台工作流和相关工具来达到上述功能的,并且使用这个轻量化容器来帮助你管理和部署应用。
在Docker核心层,它提供了一种方式来让各种应用运行在各个隔离的容器中。这种方式允许docker同一时间在同一台主机上面运行若干个容器。这种轻量级的容器运行方式,几乎没有额外的运行开销。这意味着你可以充分使用主句的硬件能力。
使用Docker提供的工具和虚拟化平台,你可以完成以下事情:
1、将你的应用或者组件部署到容器中。
2、将你的容器分发给你的团队进行下一步的开发或者测试
3、将你开发的应用部署到发布环境中,无论这些环境是本地模式或者云模式。
使用Rancher的好处是简化docker操作,使用web管理docker。
使用CoreOS的好处是精简的linux系统,启动快速,消耗资源少。
1)主机规划 ESXi平台 虚拟机3台
VMvare 模板下载链接
名称 | 主机规划 | 配置 | 安装软件 | 系统 |
CoreOS | 192.168.0.107 | 4C 8G | wget | CoreOS |
2)Running CoreOS Container Linux on VMware
The Stable channel should be used by production clusters. Versions of Container Linux are battle-tested within the Beta and Alpha channels before being promoted. The current version is Container Linux 2303.3.0.
下载ova格式镜像
curl -LO https://stable.release.core-os.net/amd64-usr/current/coreos_production_vmware_ova.ova
3)Booting with VMware ESXi
导入ova创建虚拟机需要注意的是我们需要修改密码
进入GRUB 菜单的时候输入e 进入菜单编辑模式
image.png
按F10保存重新启动
进入系统以后sudo passwd core设置密码
image.png
设置密码以后可以通过SSH客户端登录系统
4)测试Docker系统
docker version
image.png
0x2 容器云平台的搭建
core@localhost ~ $ sudo docker run -d -v <host_vol>:/var/lib/mysql --restart=unless-stopped -p 8080:8080 rancher/server
core@localhost ~ $ netstat -lntp
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp6 0 0 :::80 :::* LISTEN -
tcp6 0 0 :::22 :::* LISTEN -
tcp6 0 0 :::443 :::* LISTEN -
core@localhost ~ $
image.png
image.png
设置本地登录
选择语言
输入用户名和密码
主页面
注册主机
复制地址到要客户端
core@localhost ~ $ sudo docker run --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.11 http://192.168.0.107:8080/v1/scripts/DBE8CDE941B48573840E:1577750400000:vUKAycdDdQn6RqYw0xPW1lMF60
Unable to find image 'rancher/agent:v1.2.11' locally
v1.2.11: Pulling from rancher/agent
b3e1c725a85f: Pull complete
6a710864a9fc: Pull complete
d0ac3b234321: Pull complete
87f567b5cf58: Pull complete
063e24b217c4: Pull complete
d0a3f58caef0: Pull complete
16914729cfd3: Pull complete
bbad862633b9: Pull complete
3cf9849d7f3c: Pull complete
Digest: sha256:0fba3fb10108f7821596dc5ad4bfa30e93426d034cd3471f6ccd3afb5f87a963
Status: Downloaded newer image for rancher/agent:v1.2.11
INFO: Running Agent Registration Process, CATTLE_URL=http://192.168.0.107:8080/v1
INFO: Attempting to connect to: http://192.168.0.107:8080/v1
INFO: http://192.168.0.107:8080/v1 is accessible
INFO: Configured Host Registration URL info: CATTLE_URL=http://192.168.0.107:8080/v1 ENV_URL=http://192.168.0.107:8080/v1
INFO: Inspecting host capabilities
INFO: Boot2Docker: false
INFO: Host writable: true
INFO: Token: xxxxxxxx
INFO: Running registration
INFO: Printing Environment
INFO: ENV: CATTLE_ACCESS_KEY=F640A5CBE05EB90D58C0
INFO: ENV: CATTLE_HOME=/var/lib/cattle
INFO: ENV: CATTLE_REGISTRATION_ACCESS_KEY=registrationToken
INFO: ENV: CATTLE_REGISTRATION_SECRET_KEY=xxxxxxx
INFO: ENV: CATTLE_SECRET_KEY=xxxxxxx
INFO: ENV: CATTLE_URL=http://192.168.0.107:8080/v1
INFO: ENV: DETECTED_CATTLE_AGENT_IP=172.17.0.1
INFO: ENV: RANCHER_AGENT_IMAGE=rancher/agent:v1.2.11
INFO: Launched Rancher Agent: f9da66fcdea3b15ea8f91258844df47c796120ef2adab0f288c53d789e641cda
core@localhost ~ $
主机信息