聶永的博客

          記錄工作/學習的點點滴滴。

          服務器操作系統CoreOS初體驗

          CoreOS官網主頁使用一句話概括其理念:“A new way to think about servers”,以及緊接著的“CoreOS is Linux for massive server deployments”, 表示這是一個新思維方式思考未來服務器大規模部署的的Linux服務器操作系統。

          CoreOS宣稱最小化的定制版linux系統,具有:

          • Linux內核,Linux運行所需
          • 存在兩個ROOT分區,一個被用作啟動分區,一個被用作更新分區
            更新分區在更新完成后,自動重新啟動系統,當前機器不需要從負載集群中移除,為了保證其它應用程序不被打斷,會通過Linux cgroup限制更新過程中的磁盤、網絡等IO使用。
          • systemd,作為默認系統和服務管理器,其優秀特性:

            支持并行化任務;
            同時采用 socket 式與 D-Bus 總線式激活服務;
            按需啟動守護進程(daemon);
            利用 Linux 的 cgroups 監視進程;
            支持快照和系統恢復;
            維護掛載點和自動掛載點;
            各服務間基于依賴關系進行精密控制。
            
          • root分區被設計成只讀,用以保證數據的一致性和更新可用

          • CPU、IO等資源隔離,自然要祭出容器(Container)來,CoreOS很明智使用Docker作為容器管理器用以構建、發布應用,從這個層面來看,一個應用其實就是一個容器。
          • etcd組件負責服務發現和配置共享,采用Raft分布式一致性協議算法,承擔起,組件之間服務通信使用。很自然的,容器(Container)之間應用、服務的伸縮,就顯得很簡單了。其基因層面支持集群特性,當然,你也可以解讀為云環境的支持。

          看起來,這個系統是為類似于擁有眾多平臺的IT公司準備的。服務之間,粒度變得很細。

          剛剛發布第一個0.1.0版本,官方總結特性如下:

          1. 接口簡單,HTTP+JSON
          2. 安全,可選擇的SSL通信協議
          3. 快速,經測試1000s單一實例寫入操作
          4. 可靠,分布式層面使用Raft協議
          5. 堅固,集群的失敗可以從磁盤恢復

          要想體驗,目前看來,最簡單方式,需要在一個虛擬環境中嘗試一把,當然也是這樣做的。本次體驗,基于Windows 7 64位系統。以下為簡單步驟:

          1. 先安裝VirtualBox 4.2.16,建議從官網下載。
          2. Vagrant,這次安裝最新的1.2.7版本,下載地址
          3. 安裝Git for Windows 1.8.3,可以讓命令下直接使用git命令
          4. 安裝CoreOS環境,打開windows命令行環境:

            git clone https://github.com/coreos/coreos-vagrant/
            cd coreos-vagrant
            vagrant up
            vagrant ssh
            

            執行完畢 vagrant ssh, 會自動生成一些ssh的一些信息:

            Host: 127.0.0.1
            Port: 2222
            Username: core
            Private key: C:/Users/nieyong/.vagrant.d/insecure_private_key
            

            使用熟悉的SSH終端工具登陸即可,這里推薦xshell,不在細述。SSH成功登入,可以看到歡迎信息:

            coreos-ssh

          5. 體驗一把Docker作為容器管理器
            這里快速體驗一把,敲入一下命令:

            docker run ubuntu /bin/echo hello world
            

            此時,自動下載Ubuntu系統容器鏡像文件:

            CoreOS-ubuntu

            更多Docker操作,請參閱其文檔

          6. 進程管理systemd的一處使用這里想讓系統啟動時,執行一些簡單任務。終端下輸入

            sudo -i
            

            切換到Ubuntu ROOT用戶角色下, 執行vi /media/state/units/hello.service,敲入如下內容:

            [Unit]
            Description=My Service
            After=docker.service
            
            [Service]
            Restart=always
            ExecStart=/usr/bin/docker run ubuntu /bin/sh -c "while true; do echo Hello World; sleep 1; done"
            
            [Install]
            WantedBy=local.target
            

            保存之后,我們需要做到模擬重啟:

            systemctl restart local-enable.service
            

            現在查看一下日志,可以看到其輸出:

            journalctl -u hello.service -f
            

            coreos-log

            更多systemd細節,請參考http://www.freedesktop.org/wiki/Software/systemd/

          7. 本次淺嘗輒止,到此結束

          總體看,CoreOS最大特色,專門為大規模服務器部署定制的Linux精簡系統,盡可能的精簡無關緊要的功能,將操作系統和應用程序完全分離,從而降低操作系統和應用程序的耦合度,同時解決了現有Linux服務器在容器資源、權限管理方面的欠缺。目前若說是顛覆性的操作系統,十分牽強,是不是未來,也不好說,但肯定是一種趨勢。

          因此,十分值得期待。


          進階閱讀:

          Linux黑客車庫創業:服務器操作系統CoreOS顛覆互聯網

           

          posted on 2013-08-26 17:27 nieyong 閱讀(54368) 評論(3)  編輯  收藏 所屬分類: 容器

          評論

          # re: 服務器操作系統CoreOS初體驗 2014-02-16 17:48 hipin

          以前翻譯過CoreOS的一部分帖子,還是比較看好CoreOS的,不過最近在嘗試使用docker部署項目
          https://github.com/cloudcube/coreos-manual-chinese
          不過CoreOS還是有好多問題沒解決呢。  回復  更多評論   

          # re: 服務器操作系統CoreOS初體驗 2015-03-20 16:41 適度清潔是祛痘的關鍵

          總體看,CoreOS最大特色,專門為大規模服務器部署定制的Linux精簡系統,盡可能的精簡無關緊要的功能,將操作系統和應用程序完全分離,從而降低操作系統和應用程序的耦合度,同時解決了現有Linux服務器在容器資源、權限管理方面的欠缺。目前若說是顛覆性的操作系統,十分牽強,是不是未來,也不好說,但肯定是一種趨勢。對于樓主這說法,我還是比較贊同的  回復  更多評論   

          # re: 服務器操作系統CoreOS初體驗 2016-03-11 11:04 linux

          關注這方面技術的同學
          可以
          加QQ群479189837討論   回復  更多評論   

          公告

          所有文章皆為原創,若轉載請標明出處,謝謝~

          新浪微博,歡迎關注:

          導航

          <2013年8月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          統計

          常用鏈接

          留言簿(58)

          隨筆分類(130)

          隨筆檔案(151)

          個人收藏

          最新隨筆

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 巴彦县| 城步| 宜章县| 宁蒗| 太白县| 临泉县| 西和县| 佳木斯市| 银川市| 阳原县| 东阳市| 竹溪县| 昌乐县| 新余市| 资兴市| 明光市| 沙洋县| 缙云县| 克山县| 宁强县| 揭东县| 宜兴市| 长子县| 瑞丽市| 乐清市| 基隆市| 株洲县| 兴和县| 安化县| 唐山市| 永安市| 乐业县| 崇文区| 嘉祥县| 屏东市| 长治县| 濉溪县| 正阳县| 柳州市| 贵阳市| 郴州市|