使用Docker和saltstack构建运维paas管理平台

扯淡开始:node

       最近有些忙,换了份差事,开始作纯开发了。可是还放不下运维的那些东西。 如今的运维朋友最常说的可能就是运维自动化了,刚培训出来的小孩,也是满口的自动化管理,让你听的发蒙 。  呵呵  !  只是有些时候环境的部署虽然有自动化的脚本定制,可是仍是会耗时间,运气差了会安不上 。 现有很多公司学的聪明了,针对一些服务作了模板的定制,好比利用kvm的模板来快速的生成主机。 像linode那样,你买主机,能够直接选定服务类型的模板。 python


但咱们这里说的是 更加低耗的Docker容器,他避免了hypervisor层和虚拟层上面的guest os层的性能消耗。 一台服务器,跑vm主机也就能跑个10几个,固然你也能够超出。若是用docker的话,通常来讲承载能力是更强的。 docker


可是docker的缺点也明显,作资源的控制不是那么容易,可能水平不到家呀 !ubuntu


    我曾经用过google的gae 和新浪的云sae,前段时间又稳固而执行了下。又尝试了下 百度的bae,百度的bae也是利用docker开发的。 这三个用法都差很少,申请服务就立马能够用,软件及服务。api

     和搜狗的一个朋友一直在聊paas运维管理,想要实现一个针对运维方面的云平台,如今一说云,你们通常都是想到的openstack、cloudstack这样的云平台,其实lxc docker的出现,使paas管理实现不是个事 !  这里简单说下运维paas平台的想法和思路。安全


之前看过 sohu 云景那边对于docker的分享,感受不错。 sohu 云景一开始作paas是为了解决运维的,后来才慢慢扩展成一个对外开放的paas。
bash


我想要的功能很简单,一个增强版的shipyard, shipyard 的功能还行,只是缺乏一个写个流程性质的东西。固然你能够二次开发。 但我以为没那个必要了,咱们能够本身写个简单的集成权限控制和管理的paas平台。服务器

权限管理能够配合cmdb资产的对比。定位到你的主机,你只能申请那个网络区域的服务器机组。  你的主机是南苑的,只能申请南苑的docker容器 。 网络


原文:http://rfyiamcool.blog.51cto.com/1030776/1543840 less


管理的话能够调用docker remote api,但我的不太喜欢。 既然打算用python作平台开发,docker 又提供了docker-py这个完美的api。 


这里题外说下,saltstack docker的一些官方的应用。

built

corp/mysuperdocker_img:
  docker.built:
    - path: /path/to/dir/container
pulled

ubuntu:
  docker.pulled:
    - tag: latest
pushed

corp/mysuperdocker_img:
  docker.pushed
installed

mysuperdocker-container:
  docker.installed:
    - name: mysuperdocker
    - hostname: superdocker
    - p_w_picpath: corp/mysuperdocker_img
loaded

mysuperdocker-file:
  docker.loaded:
    - name: mysuperdocker
    - source: salt://_files/tmp/docker_p_w_picpath.tar
running

my_service:
  docker.running:
    - container: mysuperdocker
    - port_bindings:
        "5000/tcp":
            HostIp: ""
            HostPort: "5000"

run

/finish-install.sh:
  docker.run:
    - container: mysuperdocker
    - unless: grep -q something /var/log/foo
    - docker_unless: grep -q done /install_log


算了看起来着实有些费劲,我们本身把docker-py搞成saltstack的模块,这样就很容易扩展应用,不用太关注安全,像若是用mq和rpc的话,还要想一些应用层面的安全问题,甚是蛋疼。 


下面作了小片的功能 ,  其实主要仍是想法,你们有时间都在本身公司折腾实现下吧。   关于文档  看saltstack的api,而后用docker api的使用,那下面的这玩意也绝对能够作出来了。 


wKiom1P9-8SyvFN4AAHdAB-AefA737.jpg


原文:http://rfyiamcool.blog.51cto.com/1030776/1543840 


wKioL1P9_ObBNe4KAAHN0ZYVW80288.jpg


运维平台也作了很多,不知道为啥如今老是提不起精神 ~   啥事作多了也就干吐了,别想歪了。  呵呵


有时间再说,忙 ! 

相关文章
相关标签/搜索