使用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


運維平臺也作了很多,不知道爲啥如今老是提不起精神 ~   啥事作多了也就幹吐了,別想歪了。  呵呵


有時間再說,忙 ! 

相關文章
相關標籤/搜索