欢迎来到天天文库
浏览记录
ID:8218949
大小:2.89 MB
页数:25页
时间:2018-03-10
《ArchSummit北京-《经验分享:大众点评私有云平台之Docker实践》-盛延敏》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Docker在点评私有云平台的应用大众点评网盛延敏主要内容用户场景和设计理念点评的PAAS平台碰到的问题和解决方案总结与展望用户场景机器的管理包括,新机器的安装,初始化和上线应用的管理包括动态申请docker实例,下线docker实例等CIApplicationDeploy应用部署和升级包括升级中间件版本,部署应用新版本等DockerHost&ContainerlifecycleManagementConsole&Container&HostWorkflowManagementMonitormetri
2、csDockerDockerHostOpsCATHostDockerHostImagePullImagePush(tomcat/nodejs/redis)DockerRegistry几个设计理念Dockercontainer实例一旦创建,需要运行很长时间,表现出一个虚拟机的特性。(canwenotputallintodockerimage?)Dockercontainer和KVM一样,拥有一个唯一的内部IP.根据内部VLAN规划,IPAM需要自己实现Dockercontainer可以被ssh登陆访问,
3、账号分为管理和只读等。PAASvsDOCKER主要组件DockerOrchestrationDockerprovisionAppLifecycleServiceFindingAppVersionManagementMessagingController调度请求落到集群中根据物理机器的资源动态状况,请求的CPU/内存等大小进行动态调度考虑物理机房的AZ概念,将应用在物理上尽量离散可以进行按tag的混布或者不混布Agent接收controller的指令,创建和回收dockerinstance。为doc
4、kerrootfs准备mount目录,应用对应的程序包和中间件包通过mount挂载,方便升级和维护(Canweputthemintodockerfile?)对管理的dockercontainer做健康检查和资源上报。接收中间件管控中心调用,完成中间件包的升级和应用重启。应用版本升级离线备份deployCI3.Upload app warrouterrepository1.Allocate 7.1add router entry7.ADD_ROUTE_REQUESTRepository andDeploy
5、app2.ALLOCATE_REPOSITORY_REQUESTSLB&ZKcontroller5.Download app warApptracker8.INSTANCE_DEPLOYED4.NEW_INSTANCE_AND_DEPLOY_WAR_REQUESThealthmanagerDocker host8.INSTANCE_DEPLOYEDPaaSagentDocker6. Restart serviceinstanceDockerDocker‐‐natsinstanceserver‐‐http针对
6、docker的定制网络使用bridge的方式暴露内网VLAN的IPIP使用自己实现的管理和分配模块增强监控功能,包括垃圾文件的自动清理基于VLAN的网络定制DockerHost1ContainerA10.101.1.11/2410.101.1.31/24br0eth0ContainerB10.101.1.32/24ContainerCVLANX10.101.1.33/24PhysicalNetworkDockerHost2VLANYContainerA10.101.2.11/2410.101.2.31/
7、24br0eth0ContainerB10.101.2.32/24ContainerC10.101.2.33/24监控数据收集到CAT(Central Application Tracking)Dockerfile的维护问题:多种Runtime谁负责来写Dockerfile?我们的经验是建立基础镜像各种Runtime在基础镜像上增加自己独有的东西由开发和PaaS运维一起来做定期更新镜像,修改bug物理机批量上线问题:初始化和配置是一件非常耗时的事我们的经验是使用Ansible完成批量安装和配
8、置工作Controller暴露API完成物理机的入库操作集成到界面,可以随时查看升级和安装的log等ProblemDockerVM的磁盘I/O较慢centOS使用了devicemapper作为存储SolutionDevicemapper使用裸设备,而不是loopdevice上。Problem在DockerVM内使用top/vmstat/free等cpu/memory的资源监测有问题Do
此文档下载收益归作者所有