Upgrade to Pro — share decks privately, control downloads, hide ads and more …

お手軽で最強な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.

Takuya Utsunomiya

December 20, 2019
Tweet

More Decks by Takuya Utsunomiya

Other Decks in Technology

Transcript

  1. 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/ 一部執筆 してます
  2. © 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
  3. © 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
  4. © 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
  5. © 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
  6. © Red Hat K.K. Operatorを使った簡単なデプロイ 1. デプロイするworker nodeを追加 (machinesets利用) 2.

    OperatorHubから “OCS Operator” をインストール 3. Storage Clusterを作成 a. デプロイするworker nodeを指定 以上 12 OpenShift Container Storage
  7. 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
  8. 18 OpenShift Container Storage Ceph 18 • エンタープライズ用途でも利用できる、信頼性の高いオープンソース SDS •

    2014年にRed Hatが買収し、その後Red Hat以外にも複数のベンダーが商 用SDSとして提供 • OpenStackのデファクトスタンダードのストレージとしての実績 • 標準的なハードウェアでクラスターを構成する、柔軟なスケールアウト型 アーキテクチャー • ペタバイトクラスに耐える高いスケーラビリティー • Cloud InfraやData Lakeなど最新のワークロードに適したデザイン • コスト効率の高いUnifiedストレージ (Block, File, Object) • APIを利用したユーザーセルフサービスのストレージ管理 標準的なサーバーとデバイスで構成した ストレージクラスター
  9. 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)
  10. 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
  11. 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
  12. 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
  13. 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
  14. 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
  15. 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
  16. 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
  17. © 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