Save 37% off PRO during our Black Friday Sale! »

お手軽で最強なOpenShift Container Storageを使おうよ / Complete Storage for OpenShift

お手軽で最強なOpenShift Container Storageを使おうよ / Complete Storage for OpenShift

About OpenShift Container Storage 4 based on Ceph, Rook, and NooBaa.

61e7dc2e84a1a1c4ac1a8e2c552fee07?s=128

Takuya Utsunomiya

December 20, 2019
Tweet

Transcript

  1. 1 お手軽で最強なOpenShift Container Storageを 使おうよ 2019/12/20 Takuya UTSUNOMIYA @ OpenShift.RUN

  2. 2 © Red Hat K.K. 自己紹介 apiVersion: apiextentions.k8s.io/v1beta1 kind: PreSalesEngineer

    metadata: name: 宇都宮 卓也 spec: group: レッドハット株式会社 role: ストレージソリューションアーキテクト born: 大阪 version: 38歳 favorites: technology: ストレージ hobby: [“野球好き”, “プロレス好き”,”将棋好き”] drink: [“ビール”, “ワイン”] @japan_rook Japan Rook https://rook.connpass.com/ 一部執筆 してます
  3. 3
 とってもいい発表が 昨日ありました!!

  4. 4
 OpenShift Container Storage 4 GA!!

  5. 5
 OpenShift Container Storage 4 GA!!

  6. 6
 Rook 1.2 Release !!

  7. OpenShift Container Storage 4 Overview 7 OpenShift Container Storage

  8. © Red Hat K.K. OpenShift Container Storage 4 Highly scalable,

    production-grade persistent storage • OpenShift専用のストレージAdd-on • プラットフォームを問わず利用できる、Open Hybrid Cloudに適したストレージ • Rook+Ceph+NooBaaによりブロック、ファイル、オブジェクトの全種類を提供 • OpenShiftインフラサービスのPrometheusと連携したモニタリング • OpenShiftのGUIと統合されたDashboard • OpenShiftとsyncした開発/リリース/実装、サポート Coming Soon. 8 OpenShift Container Storage
  9. © Red Hat K.K. OpenShiftで永続的ストレージが必要となるシーン • 一般的にOpenShiftは永続的なストレージを必要とする ◦ OpenShiftのインフラサービス ◦

    ステートフルなアプリケーション Local/Ephemeral Storage OCP Application OCP Infrastructure Service 2 Service 1 Registry Metrics Prometheus Logging • 求められるストレージは事前にわからない ◦ RWO, RWX ◦ File, Block, S3 Object ◦ Capacity, Performance 9 OpenShift Container Storage
  10. © Red Hat K.K. Complete Storage for OpenShift • Block,

    File, Objectの全てのタイプを提供 • RWO, ROX, RWX 全てのAccess Modeを提供 ◦ RWO ・・・ Block, File ◦ ROX/RWX ・・・ File BARE METAL VIRTUAL MACHINES PUBLIC CLOUD LEGACY STORAGE RWO - Block RWX - File S3 Object • Platformを問わない ◦ OpenShift Container Platform上で稼働する • デバイスはPlatformからRWO PVとして調達 10 OpenShift Container Storage
  11. © Red Hat K.K. Flexibility in Deployment • 要件に合わせて選択できるデプロイ形態 ◦

    GA直後はCONVERGED MODEのみ利用可能、INDEPENDENT MODEはマイナーリリースで提供予定 OPENSHIFT CONTAINER STORAGE INDEPENDENT MODE* Use existing investment in traditional storage, managed by storage admin – attach to standalone storage OPENSHIFT CONTAINER STORAGE CONVERGED MODE Highly scalable, enterprise-grade storage, fully integrated into OpenShift Container Platform 11 OpenShift Container Storage
  12. © Red Hat K.K. Operatorを使った簡単なデプロイ 1. デプロイするworker nodeを追加 (machinesets利用) 2.

    OperatorHubから “OCS Operator” をインストール 3. Storage Clusterを作成 a. デプロイするworker nodeを指定 以上 12 OpenShift Container Storage
  13. 13 従来のOpenShiftとストレージ OpenShift Container Storage 4 外部ストレージ kubelet kubelet kubelet

    workers masters PV Provisioning kubelet kubelet kubelet workers masters kubelet kubelet kubelet workers (storage) PV Provisioning OpenShift Container Storage 4 全体像 OpenShift Container Storage
  14. © Red Hat K.K. デモンストレーション : OCS4のデプロイ 14 OpenShift Container

    Storage
  15. OpenShift Container Storage 4 Technology 15 OpenShift Container Storage

  16. 16 OpenShift Container Storage Object Bucket Claim OpenShift Container Storage

    4 Architecture
  17. OpenShift Container Storage 4で利用されるソフトウェア 17 OpenShift Container Storage

  18. 18 OpenShift Container Storage Ceph 18 • エンタープライズ用途でも利用できる、信頼性の高いオープンソース SDS •

    2014年にRed Hatが買収し、その後Red Hat以外にも複数のベンダーが商 用SDSとして提供 • OpenStackのデファクトスタンダードのストレージとしての実績 • 標準的なハードウェアでクラスターを構成する、柔軟なスケールアウト型 アーキテクチャー • ペタバイトクラスに耐える高いスケーラビリティー • Cloud InfraやData Lakeなど最新のワークロードに適したデザイン • コスト効率の高いUnifiedストレージ (Block, File, Object) • APIを利用したユーザーセルフサービスのストレージ管理 標準的なサーバーとデバイスで構成した ストレージクラスター
  19. 19 OpenShift Container Storage 19 • OpenShift, Kubernetes上で動くストレージオーケストレーションツール • SDSと連携した

    ”Operator” として稼働し、ストレージシステムの構築、拡張やアップグレードなどの運用を自動 化し、使いやすいストレージ環境を提供する ◦ 自動化の対象 : Automate deployment, bootstrapping, configuration, provisioning, scaling, upgrading, migration, disaster recovery, monitoring, resource management,... • オープンソース (Apache 2.0) • CNCF Incubating project Rook Stable Ceph EdgeFS Alpha Cassandra CockroachDB Minio NFS YugabyteDB https://rook.io/docs/rook/v1.1/quickstart-toc.html 対応するSDS(v1.1)
  20. 20 NooBaa Multi-Cloud Gateway (MCG) • Platformを問わず複数のObject Storage(Bucket)をカバーするGateway • アプリケーションに単一のエンドポイントを提供し、

    Bucketの場所を意識せずに済む • MCGの管理下でBucket間のMirroring、Migrationを提供 • 標準でDeduplication, Compression, Encryption App Multi-Cloud Bucket Multi-Site Bucket App App Hybrid Bucket S3 Active - Active Multi Cloud Read /Write OpenShift Container Storage
  21. Provided by Rook-Ceph Provided by Rook-Ceph Provided by NooBaa 21

    OpenShift Container Storage 対応するワークロード • Primary for DB and Transactional workloads • Low latency • Messaging Persistent Volume • POSIX-compliant shared file system • Interface for legacy workloads • CI/CD Pipelines • AI/ML Data Aggregation • Messaging Shared File System Block • Media, AI/ML training data, Archiving, Backup, Health Records • Great Bandwidth performance • Object API (S3/Blob) Object Service
  22. 22 OpenShift Container Storage OCPのWebコンソールと統合されたDashboard • Rook-Ceph Persistent Storage

  23. 23 OpenShift Container Storage OCPのWebコンソールと統合されたDashboard • NooBaa Object Storage Service

  24. NFSではいけないの? 24 OpenShift Container Storage

  25. 25 OpenShift Container Storage Static Provisioningという強敵 Black Box Storage Appliance

    • Share provisioning ◦ Different sizes ◦ Different modes • User / Group management Storage Admin TOIL TOIL Red Hat OpenShift Container Platform • Manual PV definition ◦ Static sizes ◦ Static modes • SELinux changes • Custom security contexts
  26. 26 OpenShift Container Storage ほかにも 1. https://docs.openshift.com/container-platform/4.2/storage/persistent-storage/persistent-storage-nfs.html 2. https://docs.openshift.com/container-platform/4.2/storage/persistent-storage/persistent-storage-nfs.html#nfs-reclaiming-resources_persistent-storage-nfs 3.

    https://docs.openshift.com/container-platform/4.1/scalability_and_performance/optimizing-storage.html#specific-application-storage-recommendations • Lots of Storage Administrative Toil 1 ◦ Manual share provisioning and PV definition ◦ Custom security contexts • No “true” RWO 1 ◦ No access enforcement when accessMode: RWO • Reclaim caveats 2 ◦ Must not re-use PVC names or risk errors / data loss • Not recommended for master services - Registry, Quay, Metrics, Logging 3
  27. EBSではいけないの? 27 OpenShift Container Storage

  28. 28 OpenShift Container Storage 生まれたAZでしか生きられない運命 us-west-2a m5.xlarge Red Hat OpenShift

    Container Platform m5.xlarge us-west-2b m5.xlarge m5.xlarge us-west-2c m5.xlarge m5.xlarge Red Hat OpenShift Container Storage us-west-2a Storage class: gp2 Amazon EBS ebs-west-2a ebs-west-2b ebs-west-2c Pod PVC PVC UNAVAILABLE POD UNSCHEDULABLE Pod PVC
  29. 29 OpenShift Container Storage ほかにも • Only supports RWO accessMode

    • Does not provide regional availability or portability • Volume size limit - 16TB 1 • Instance attachment limits - 28 for most common instance families (c5/m5/c5) 2 ◦ Includes EBS volumes, Network interfaces, NVMe devices 1. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/volume_constraints.html 2. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/volume_limits.html
  30. 30 OpenShift Container Storage OpenShift Container Storageなら us-west-2a m5.xlarge M

    Red Hat OpenShift Container Platform m5.xlarge us-west-2b m5.xlarge m5.xlarge us-west-2c m5.xlarge m5.xlarge M M OSD OSD OSD OSD OSD OSD OSD OSD OSD Storage classes: regional-rbd, regional-cephfs Red Hat OpenShift Container Storage us-west-2a Pod PVC Pod PVC
  31. おわりに 31 OpenShift Container Storage

  32. © Red Hat K.K. OpenShift Container Storage 4 Highly scalable,

    production-grade persistent storage • OpenShift専用のストレージAdd-on • プラットフォームを問わず利用できる、Open Hybrid Cloudに適したストレージ • Rook+Ceph+NooBaaによりブロック、ファイル、オブジェクトの全種類を提供 • OpenShiftインフラサービスのPrometheusと連携したモニタリング • OpenShiftのGUIと統合されたDashboard • OpenShiftとsyncした開発/リリース/実装、サポート Coming Soon. 32 OpenShift Container Storage
  33. Thank you 33 OpenShift Container Storage