- 4
- 0
- 约2.64千字
- 约 14页
- 2020-07-29 发布于江苏
- 举报
把Docker打造成虚机
裴彤
搜狗平台架构部
源起
• 长期以来,开发、运维已经习惯了以机器
视角来干活,积累了很多工具、平台。
• Docker横空出世,各种美妙特性十分诱人,
但又难以直接迁移应用
• 把火车封装成马车
第一关
• 制作系统镜像
–Centos 6.6
– ENTRYPOINT [/.init/entrypoint.sh]
–CMD /sbin/init
• 开机启动服务
–sshd,crond 等不能正常启动
–nsenter渗透执行(注意cgroup )
–指定特定文件,开机自动执行
第二关
• 网络
–关闭宿主 docker0 网桥、nat转发 等
–创建直连网桥
–指定虚机ip,通过docker env 传递进去
–每次启动docker虚机时
• 宿主创建veth ,关联网桥
• 虚机内生成网络配置文件,执行 service network
restart,使 ip、路由生效
–如有必要,可以使用Open vSwitch
第三关
• 存储
–宿主本地存储
–创建Lv卷,mkfs,挂载,-v 传给容器
–系统盘,代码盘,数据盘
–利用 cgroup 对lv卷进行 iops、bps 限制
• Centos 6.6 上效果很差
• Centos 7.1 上效果很好
第四关
• Metrics
–Cgroup、/proc 信息收集,web展现
–容器内free 、mpstat、top等信息不准
• 删掉无效命令
• 提供替代
– sac-mem,sac-cpu
• 不追求做到跟虚机完全一样。投入20分精力,得到
80分效果。考虑用户真正的需求是什么
• 有些应用会自动探测cpu核数,需要注意
还有
• 电源相关命令(reboot、shutdown等)无效
–页面操作
• 容器共享内核,不同应用需要不同参数
–按不同应用类别分机群
• 等等。。。
搞定单个虚机之后
• 宿主/虚机机群管理
–数据库记录宿主资源、虚机信息、ip池等
–管理程序:虚机增/删/ 改/查。
–创建虚机时根据资源自动选择宿主、分配ip
–考虑容灾策略(分宿主、交换机、机房)
–封装 API
于是得到
• 一套简易的IaaS平台
– 提供API
– 按用户指定的内存/cpu/硬盘/OS环境,秒级创建虚机
– 虚机生命周期管理
– 可以给虚机系统盘做快照、随时重置(基于docker镜像
机制)
• 投入
– 一个人,三个月
– 没有使用分布式存储
– 如果用 kvm/openstack 。。。
有 IaaS之后
• 裸用
– 替代部分 kvm 虚机
• 打造PaaS
– 针对无状态 web 类应用
– 从应用视角出发,对docker虚机进行组织管理
• 种子机,线上机
• 系统环境打包、版本管理
• 代码版本管理
– 打通域名、接入、负载均衡等环节
– 提供丰富的可视化信息
– 弹性扩容/缩容
有 IaaS之后(2 )
您可能关注的文档
最近下载
- 2025年无人机驾驶员执照欧洲(EASA)无人机法规对比专题试卷及解析.pdf VIP
- 2025年AWS认证DedicatedHosts支持的AMI类型与启动模式专题试卷及解析.pdf VIP
- 美容院服务合同(2025年最新规范).docx
- 上海市住建委《上海市建筑和装饰工程预算定额沪建标定〔2025〕1162号.docx VIP
- 2025年无人机驾驶员执照飞行监管责任体系专题试卷及解析.pdf VIP
- 2025年无人机驾驶员执照悬停失控应急处置流程专题试卷及解析.pdf VIP
- 2025年金融风险管理师利率风险结构易错题解析专题试卷及解析.pdf VIP
- 《最优控制与状态估计6》-公开课件.ppt VIP
- 标准图集-22G101-3 混凝土结构施工图平面整体表示方法制图规则和构造详图-独立基础、条形基础、筏形基础、桩基础.pdf VIP
- 2024黑龙江林业职业技术学院单招《数学》通关题库及答案详解【各地真题】.docx VIP
原创力文档

文档评论(0)