SlideShare a Scribd company logo
企業導入
容器經驗分享與
開源技能
培養
Philipz (鄭淳尹)
2017-09-29
迎棧科技
Philipz (鄭淳尹)
Docker.Taipei 共同發起人
歐萊禮《Docker 錦囊妙計》譯者
碁峰《Docker入門與實戰》、
《Kubernetes使用指南》審譯者
2014 COSCUP/iThome Summit 講者
2015 Microsoft Azure 開發者大會 講者
2016 COSCUP Docker 進階工作坊
2016義守大學 2017逢甲大學Docker研習營
Docker 是什麼?
企業導入容器經驗分享與開源技能培養
The Martix of Hell
Docker Hub
https://hub.docker.com/
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
Kubernetes - Helm
A Brief History of Containers
1979: Unix V7 2000: FreeBSD Jails
2005: Open VZ 2008: LXC
2013: LMCTFY 2013: Docker
2016: Windows Container
From: A Brief History of Containers: From 1970s chroot to
Docker 2016
A Brief History of Containers
1979: Unix V7 2000: FreeBSD Jails
2005: Open VZ 2008: LXC
2013: LMCTFY 2013: Docker
2016: Windows Container
From: A Brief History of Containers: From 1970s chroot to
Docker 2016 Windows Container
容器與虛擬化架構差異
Instance實例
Containers vs. VMs
虛擬化架構
容器化架構
容器+虛擬化架構
作業系統容器 vs. 應用程式容器
作業系統容器 vs. 應用程式容器
Container Principle
貨櫃交付原則
● One Container
● One Customer
● One Commodity
軟體貨櫃
● One Container
● One Process
我是航運大王麥
克連,不是終極
警探的麥克連!
I Have a Dream
“Write Onec, Run everywhere”
I Have a Dream
“Write Onec, Run everywhere”
企業導入容器經驗分享與開源技能培養
導入容器技術的問題
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
導入的原因
1. 時間有限 - 五年內淘汰IBM大型主機
2. 能力有限 - 半數仍是傳統大型主機開發人員
3. 解決人的問題 - 逐步拉齊技術水平
4. 管理成本 - 系統作業時效縮短、自動化
5. 進而解決業務面問題
導入的優點
1. 單一責任 - 容器內、容器外
2. 避免 Dev (AP) 跟 Ops (SP) 對立
3. 持續整合 (CI)
4. 自動化流程
5. 微服務、無伺服器架構
6. 系統靈活彈性 (Infra. as Code)
Dev. be like...
When Ops. says:
You can not PASS!!!
進行的方式
Development
1. 內部分享
2. 任務編組
3. 新舊人員組合
4. 教育訓練 - Spring
5. 自主學習
6. Git 學習
7. 軟體工程
Operations
9. 系統架構調整
10. 單一登入(SSO)
11. 監控系統建置
a. System
b. Log collection
c. APM - DynaTrace
12. 容器協同運作平台
(Kubernetes)
容器系統架構規劃
現行架構圖
29
Corosync
Pacemaker
HAproxy
Docker
VM1
Corosync
Pacemaker
HAproxy
Docker
VM2
www.xxxxxx.gov.tw
Active Enable
互相偵測是否活著,
並決定由誰啟動對外連線。
負載平衡,平均分配給兩台
容器協同運作
Kubernetes
Docker Swarm
DC/OS
Rancher
Virtual Machine pool
企業導入容器經驗分享與開源技能培養
系統靈活彈性
虛擬化伺服器就是軟體
快速驗證 POC
虛擬機重要資料存放
- SAN Storage (EMC)
- vSphere Docker Volume
奇谈怪论:从容器想到去IOE、去库存和独角兽
*業務系統
無伺服器
微服務架構
Kubernetes
基礎架構
即程式碼
容器式
設計
Auto DevOps
容器化的好處
1. 容器 = 抽象化的單位, 容器化 = 分工問題
2. 解決 JVM、Shared library 等問題
3. AP 只要專心寫 code, CI pipeline 會自動上版
4. Language independent
Java or .NET isn’t important.
Top-down Approach
單一責任
Top-down Approach
土木建築 - 逆打工法
台北101
企業導入容器經驗分享與開源技能培養
System architecture
= Organizational architecture
大量自動化、系統人員減少
Conway's Law
DevOps in the Enterprise
Microservices AntiPatterns
Microservices in action
弯道超车:容器技术究竟为云计算带来了什么?
容器化技术构建一个“反脆弱”的交易系统
Open Architecture
容器在軟體開發上的整合
持續整合(Continuous Integration)
● 虛擬機方式
○ Jenkins
○ TravisCI
○ 舊式、肥大
● 容器方式
○ GitLab
○ CircleCI
○ 新式、輕量
解決軟體開發長久以來常見的痛
Docker更容易實現基礎架構程式化
GitHub
GitLab
Jenkins Registry
GitLab-Runner
GitLab-Runner
Container Development Flow
GitLab-Runner
企業導入容器經驗分享與開源技能培養
Test Double 測試方法
新 Compose 測試方法
The Same
http://testdriven.io/part-four-intro/
End to End Tests
CI with Docker Compose is easy to implement.
From: Oreilly - Building Microservices
企業導入容器經驗分享與開源技能培養
GitLab
企業導入容器經驗分享與開源技能培養
Demo
未來容器技術的趨勢
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
Demo
+
$1700$1429
Microservices(微服務)
Microservices(微服務)
https://developer.ibm.com/code/journey/make-java-microservices-resilient-with-istio/
Container Stack
Microservices
Framework
Serverless
Framework
http://fission.io
Container Stack
Microservices
Framework
Serverless
Framework
http://fission.io
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
Azure Container Instances
延伸閱讀
開源技術的問題與經驗
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
權威偏誤 The Authority Bias
在面對權威時,一言一行不自覺就會照單全收。
企業導入容器經驗分享與開源技能培養
軟技能(Soft-skill)
● 廣泛閱讀(哲學、經濟)
● 溝通技巧(包含跟異性)
● 業務能力(思考商機)
● 決策與判斷(投入成本)
● 運動與健康(飲食與健檢)
● 職涯規劃(興趣與金錢)
投標廠商案例
開源資訊網站
● http://linux.cn/
● https://www.infoq.com/
● http://dockone.io/
● IFTTT, Wachete
延伸閱讀
企業導入容器經驗分享與開源技能培養
企業導入容器經驗分享與開源技能培養
Time is more precious than gold.
Thank You

More Related Content

PDF
容器式基礎架構介紹
PDF
容器式軟體開發介紹
PDF
Docker + CI pipeline 的高效率 ChatBot 開發方法
PDF
桃園市教育局Docker技術入門與實作
PDF
Docker容器微服務 x WorkShop
PPTX
K8s removes dockershime
PDF
容器與 Gitlab CI 應用
PPTX
Docker 淺入淺出
容器式基礎架構介紹
容器式軟體開發介紹
Docker + CI pipeline 的高效率 ChatBot 開發方法
桃園市教育局Docker技術入門與實作
Docker容器微服務 x WorkShop
K8s removes dockershime
容器與 Gitlab CI 應用
Docker 淺入淺出

What's hot (20)

PDF
理財機器人技術簡介與實作經驗分享
PDF
Docker 最佳实践
PPTX
cec-hello-docker
PPTX
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
PDF
Docker home ted
PDF
Docker Build
PDF
微服務自己動手做
PPTX
Windows Container 101: dotNET, Container, Kubernetes
PDF
PDF
Kubernetes project update and how to contribute
PPTX
開發人員不可不知的 Windows Container 容器技術預覽
PDF
Docker初识
PPTX
Angular 开发技巧 (2018 ngChina 开发者大会)
PPTX
Rancher: 建立你的牧場艦隊
PDF
認識那條鯨魚 Docker 初探
PDF
從軟體開發角度
談 Docker 的應用
PDF
Build your own kubernetes apiserver and resource type
PPTX
Docker - 30秒生出100台伺服器
PPTX
實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)
PPTX
AKS 與開發人員體驗 (Kubernetes 大講堂)
理財機器人技術簡介與實作經驗分享
Docker 最佳实践
cec-hello-docker
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
Docker home ted
Docker Build
微服務自己動手做
Windows Container 101: dotNET, Container, Kubernetes
Kubernetes project update and how to contribute
開發人員不可不知的 Windows Container 容器技術預覽
Docker初识
Angular 开发技巧 (2018 ngChina 开发者大会)
Rancher: 建立你的牧場艦隊
認識那條鯨魚 Docker 初探
從軟體開發角度
談 Docker 的應用
Build your own kubernetes apiserver and resource type
Docker - 30秒生出100台伺服器
實現 Angular, Docker 與 Kubernetes 持續部署 (NG+2020)
AKS 與開發人員體驗 (Kubernetes 大講堂)
Ad

Viewers also liked (16)

PDF
容器與IoT端點應用
PDF
Docker 進階實務班
PDF
HITCON駭客戰隊與CTF經驗分享
PDF
2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)
PPTX
容器驅動開發 - .NET Conf 2017 @ 台中
PDF
容器與資料科學應用
PDF
用 Bitbar Tool 寫 Script 自動擷取外幣
PDF
時代在變 Docker 要會:台北 Docker 一日入門篇
PDF
聊天機器人:一個沒有小編的世界
PDF
與設計架構當朋友
PPTX
大型 Web Application 轉移到 微服務的經驗分享
PPTX
API Token 入門
PDF
Continuous Delivery - 敏捷開發的最後一哩路
PDF
PHP 良好實踐 (Best Practice)
PDF
無瑕的程式碼 Clean Code 心得分享
PDF
[系列活動] 一天搞懂對話機器人
容器與IoT端點應用
Docker 進階實務班
HITCON駭客戰隊與CTF經驗分享
2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)
容器驅動開發 - .NET Conf 2017 @ 台中
容器與資料科學應用
用 Bitbar Tool 寫 Script 自動擷取外幣
時代在變 Docker 要會:台北 Docker 一日入門篇
聊天機器人:一個沒有小編的世界
與設計架構當朋友
大型 Web Application 轉移到 微服務的經驗分享
API Token 入門
Continuous Delivery - 敏捷開發的最後一哩路
PHP 良好實踐 (Best Practice)
無瑕的程式碼 Clean Code 心得分享
[系列活動] 一天搞懂對話機器人
Ad

Similar to 企業導入容器經驗分享與開源技能培養 (20)

PPTX
Docker Compose
PPTX
Windows 與 Azure 的容器旅程 @ Ignite Mini 2016
PDF
docker intro
PDF
容器式高效率 ChatBot 開發方法
PDF
Docker In-Depth
PPT
Software Engineer Talk
PDF
Azure Container Service 使用 DC / OS 管理 docker 容器
PPTX
Docker基礎
PDF
Gops2016 云端基于Docker的微服务与持续交付实践
PDF
twMVC#30 | 你應該瞭解的 container-on-azure-二三事
PPTX
Docker open stack
PPTX
Docker實務
PPTX
Docker一期培训
PDF
Azure Container Registry(preview)x Web App On Linux(preview)
PPTX
快速上手 Windows Containers 容器技術 (Docker Taipei)
PDF
Weic2015 docker
PPTX
Docker
PDF
從技術找未來
PPTX
Oh K8s Is Swag - Kubernetes Basics
PPTX
kubernetes入门培训
Docker Compose
Windows 與 Azure 的容器旅程 @ Ignite Mini 2016
docker intro
容器式高效率 ChatBot 開發方法
Docker In-Depth
Software Engineer Talk
Azure Container Service 使用 DC / OS 管理 docker 容器
Docker基礎
Gops2016 云端基于Docker的微服务与持续交付实践
twMVC#30 | 你應該瞭解的 container-on-azure-二三事
Docker open stack
Docker實務
Docker一期培训
Azure Container Registry(preview)x Web App On Linux(preview)
快速上手 Windows Containers 容器技術 (Docker Taipei)
Weic2015 docker
Docker
從技術找未來
Oh K8s Is Swag - Kubernetes Basics
kubernetes入门培训

More from Philip Zheng (17)

PDF
AI Coding工具介紹 - 革新程式開發流程的智能助手 by Philipz
PDF
Solo Leveling with Cursor by Philipz 鄭淳尹
PDF
十二項架構設計原則
PDF
從零開始做架構圖
PDF
VSCode Remote Development 介紹
PDF
VSCode Remote Development
PPTX
Apahce Ignite
PDF
Cloud Native Practice
PDF
微服務對IT人員的衝擊
PDF
理財機器人技術簡介與實作經驗分享
PDF
桃園市教育局Docker技術入門與實作
PDF
手把手帶你學 Docker 入門篇
PDF
程式交易介紹及 FinTech 創作分享
PDF
人工智能在量化投资分析中的实践
PDF
Trading bot演算法與軟工在程式交易上的實踐
PDF
程式交易面面觀
PDF
Docker & GitLab
AI Coding工具介紹 - 革新程式開發流程的智能助手 by Philipz
Solo Leveling with Cursor by Philipz 鄭淳尹
十二項架構設計原則
從零開始做架構圖
VSCode Remote Development 介紹
VSCode Remote Development
Apahce Ignite
Cloud Native Practice
微服務對IT人員的衝擊
理財機器人技術簡介與實作經驗分享
桃園市教育局Docker技術入門與實作
手把手帶你學 Docker 入門篇
程式交易介紹及 FinTech 創作分享
人工智能在量化投资分析中的实践
Trading bot演算法與軟工在程式交易上的實踐
程式交易面面觀
Docker & GitLab

企業導入容器經驗分享與開源技能培養