20190218_OpenShift Storage 架構思考

D907136acebc72f1df878541b26f271a?s=47 Phil Huang
February 18, 2019

20190218_OpenShift Storage 架構思考

#redhat #storage #openshift #meetup

D907136acebc72f1df878541b26f271a?s=128

Phil Huang

February 18, 2019
Tweet

Transcript

  1. OpenShift Storage 架構思考 Phil Huang 黃秉鈞 <pichuang@pichuang.com.tw> OpenShift Taiwan Meetup

    #2, Taiwan, Feb. 18, 2019
  2. # whois Phil Huang 黃秉鈞 • 社群斜槓青年 ◦ SDNDS-TW ◦

    Cloud Native Taiwan User Group (CNTUG) ◦ Study-Area 酷學園苦力組 • 任職於 Red Hat 擔任 Solution Architect • Blog ◦ https://blog.pichuang.com.tw Ref: https://www.linkedin.com/in/phil-huang-09b09895/
  3. 感謝 Gandi 場地贊助 Ref: https://www.gandi.net/en

  4. 2019 容器名詞正名運動 • Docker Registry => Container Registry • Docker

    Images => Container Images • Docker Container => OCI Container ◦ The Open Container Initiative is an open governance structure for the express purpose of creating open industry standards around container formats and runtime. -- From Open Containers Intiative Official Website => 容器標準化 (Specification): Runtime / Image / ... Ref: https://www.facebook.com/groups/cloudnative.tw/permalink/475806496256024/ OCI: Open Container Initiative
  5. 1. Compute Resource ◦ Multi-Cloud / Application Workload / Quota

    2. Network Resource ◦ Network Policy / CNI / Egress & Ingress Router / External & Internal DNS 3. Storage Resource ◦ Persistent Volume Types / CSI / Storage Class 4. Container Images Resource ◦ Images Lifecycle Management / RBAC / Audit What Kind of Resource Management You Should Care
  6. Overview of Storage Resource

  7. What is Persistent Storage in Container Platform? • Allows administrators

    to describe storage ◦ Static or dynamic • Allows users to request storage ◦ Assigned to pods based on the requested size, access mode , labeles and type • No tight coupling to any disk, server, network or storage device
  8. Lifecycle of PV / PVC Storage PV Bound PVC 100G

    RWO Binding Storage PV Available Reclaiming Storage PV Available Using PVC 100G RWO Pod Volume Storage PV Released Releasing PV: Persistent Volume PVC: Persistent Volume Claim Storage PV Available Provisioning User Admin
  9. Pool of Persistent Volumes Ceph PV iSCSI PV FC PV

    VMDK PV GlusterFS PV Ceph RBD PV Storage Provisioning - Static PV Admin User provision PV create claim Project Pod claim Pod claim Pod claim
  10. Storage Provisioning - Dynamic PV Admin User define StorageClass Slow

    Azure-Disk Fast AWS-SSD Fastest NetApp-Flash PV create claim: Fastest OpenShift PV Controller provision Pod claim bound NetApp Provisioner AWS Provisioner Azure Provisioner preinstall Storage Provisioner
  11. Overview of Architecture Ref: https://www.hwchiu.com/kubernetes-concept.html CSI: Container Storage Interface

  12. 3 Storage Use Cases

  13. Data in the Container • Simple and easy to scale-out

    • Remove all data after destroy pods/containers • Use case ◦ Stateless apps • Volume type ◦ emptyDir Host Container Data
  14. Data in a Host Volume • Persistent save data on

    a host, not in container • HA and data backup are covered by application side • Use cases ◦ Stateful apps ◦ High disk I/O performance (Database / ...) • Volume type ◦ local ◦ hostPath Host Container Data
  15. Data in a Shared Storage • Persistent save data on

    shared storage • Performance would be related with storage vendors • Use cases ◦ Stateful apps ◦ Small and middle disk I/O performance • Volumne Type ◦ Static PV: iSCSI / FC / NFS ◦ Dynamic PV: GlusterFS / Ceph / NetApp Trident Host Container Shared Storage via network
  16. 你到底知不知道什麼是 Kubernetes? - hwchiu 1. Kubernetes 本身不提供任何儲存功能, 透過標準介面 (CSI) 存取儲存伺服器

    2. Kubernetes 本身也不去管什麼 RAID, 快照, 分散式儲存, 資料同步, 這些都是後 端儲存伺服器自行完成 3. 請針對自己的需求以及認知,選擇一個適合自己的儲存方案來使用 4. 不要認為 Kubernetes 可以幫你處理一切事情,沒有這麼強大也不應該這麼強大 ,請認份的學習儲存方面的概念與知識,然後與 Kubernetes 整合. 5. 遇到任何問題,可能是 Kubernetes 使用上的問題,也有可能是儲存伺服器本身 的問題,這部分要仰賴管理者的經驗來處理 Ref: https://www.hwchiu.com/kubernetes-concept.html
  17. Use Cases of Dynamic PV

  18. Red Hat OpenShift + NetApp Trident Ref: https://www.youtube.com/watch?v=zSDtYgkAN9g

  19. Before: 2G Capacity (1/2) Ref: https://netapp-trident.readthedocs.io/en/stable-v18.10/kubernetes/operations/tasks/volumes.html

  20. Before: 2G Capacity (2/2)

  21. After: 3G Capacity (1/2) Ref: https://netapp-trident.readthedocs.io/en/stable-v18.10/kubernetes/operations/tasks/volumes.html

  22. After: 3G Capacity (2/2)

  23. OpenShift Storage Resource Online Editor

  24. Wanna Learn More?

  25. Ref: https://speakerdeck.com/pichuang/na-xie-nian-de-openshift-3-dot-11-rong-qi-ping-tai-ji-shu-xuan-xing-20190122

  26. How Do You Learn About Cloud Native Technologies? Top learning

    sources are 1. Documentation 2. Meetups and Local Events 3. Technical Podcasts Ref: https://www.cncf.io/blog/2018/08/29/cncf-survey-use-of-cloud-native-technologies-in-production-has-grown-over-200-percent/
  27. Ref: https://www.facebook.com/events/2143280755732051/

  28. Ref: https://www.facebook.com/RedHatTaiwan/ 紅帽美女S小編說:

  29. Q&A 台上一小時,台下三日夜 社群正向回饋,需要一起參與 Ref: https://www.facebook.com/micomikicat/

  30. 聚達系統 www.extremedata.com.tw 台灣區 紅帽 合作夥伴

  31. 台灣區 紅帽 總代理 商 台灣區 紅帽 合作夥 伴

  32. ExtremeData DevSecOps Solution Check out Code and Build Unit Testing

    Quality Control Plan the tasks Continuous Delivery Process Continuous Integration Server Monitor Deploy to Production Deploy Docker Images Operate Release Issue Tracker Code Management Code Review & Image Scaning Deploy Tool & Docker Images APM Environment
  33. None