狠狠撸

狠狠撸Share a Scribd company logo
Rancher
建立你的牧場艦隊
Miles 2015/12/11
Docker 如何應用
用 Docker 建立貨櫃 (Image)
用 Docker Compose 建立戰艦 (Stack)
用 Rancher 建立艦隊 (Production)
起航
Outline
Features
How it works
Components
Access Control
Examples
Conclusion
FAQs
Suggestions
Introdution
Intro
Docker Compose 只能在同一台 host run
跨 host 連 container 有解,但設定很麻煩
Features
Features
所有服務皆使用 Docker Image 執行
可使用 Web UI / API / CLI 管理叢集
Host 間的 networking 設定,可以用 Docker Link 概念簡單達成
Host 變動後,連結依然能正確的設定
自動佈署規劃容器的設定方法簡單
可使用 Volume 來設定備份
v0.47+ 提供了 stroage service ,使用起來會更有彈性
How it works
Rancher
HTTP/HTTPS
Port 500/4500 IPsec
Nginx
PHP DB
Cache
Host
Components
Components (Application)
Services
From Docker Images
Load Balancer
Service Alias
External Service
Stacks
Docker Compose
Rancher Compose
Components (Infrastructure)
Hosts
Containers
Service
Service 為提供應用層級的服務
Service 完成啟動至少需要一個以上的 container
在 Rancher 裡,service 間是可以自由互相連接的
Docker Compose 的參數都能設定
Docker Compose 的參數是來自 Docker Run 的參數
Service - Health Check
Service - Sidekick
當多個 service 的屬性是綁在一起的時候,可以使用
scaling 需要多個 service 同時 scaling
需要放在同一台 host (因為需要用 volume form)
Service - Upgrade
Service - Load Balancer
Service - Service Alias, External Service
Stacks
Stack 是一堆 Service 組合而成,提供一系列服務
Stack 間的服務都能互相連結
Stacks - Example
Hosts
建 service 之前,要先有 host
host 之間的 container 互連免煩惱,一切自動設定
Hosts
Access Control
Accounts
Environments
Access Controll
Examples
Examples
從無到有建置 Wordpress via Web UI
從無到有建置 Sentry via Rancher Compose
上 code via Web UI
上 code via Rancher Compose
Conclusion
Conclusion
Racnher 最初的設定是針對 production 環境的
Rancher 建置 Stack 時,有時候會發現架構上能改善的地方
有提供 API / CLI ,做自動佈署很方便
官方也提供許多 catalog 可以使用,如 Jenkins
FAQs
FAQs
Upgrade 會直接砍掉重練,資料 service 請小心使用
同上, remove host 時,會自動做移機,但也是全部砍掉重練
Volume from 需要同個 host ,規劃 storage 時需注意
Service 要外接出去,仍需機器設定配合
Bugs
Load Balancer 可以指向 alias 。但是是沒有用的
Load Balancer 可以設定多 FQDN to 多 TCP service 。但是它不會照你想的跑
有時開頁面會一片空,或是 link 是空的, reload 即可
當有指定 host 時, upgrade 需要再重選一次
Suggestions
試著考慮下列情境做改善
Service 可以 scaling ,每次增加都會是全新的容器
Service upgrade 後會被砍掉重練
application.ini 會被還原 - 每次都要進去 install editor + edit ini
除了 HTTP 外,外接服務會比較困難
Suggestions
Thanks

More Related Content

Rancher: 建立你的牧場艦隊

Editor's Notes