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

Verrazzano 概要

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Verrazzano 概要

Avatar for oracle4engineer

oracle4engineer PRO

December 02, 2022
Tweet

More Decks by oracle4engineer

Other Decks in Technology

Transcript

  1. マルチKubernetes環境のライフサイクルを統合的に管理可能なコンテナプラットフォーム ▪ ユースケース クラウド/オンプレミスを含めた複数のKubernetes環境の管理、コンテナア プリケーションのアプリケーションライフサイクルの統合管理、Oracleが提供 する各種製品のコンテナ化、およびその運用にあたっての統合実行基盤 ▪ 特徴 • オープンソースベースで構成されたコンポーネント

    • Open Application Model(OAM)で標準化されたアプリケーション 定義 • Observability含めたアプリケーションライフサイクルをサポート • 事前インストール済みのコンポーネントを利用した高いセキュリティの 実現 • WebLogic/Coherence/Helidonとの高い親和性 ▪ 価格 • Community Edition:無償 • Enterprise Edition:¥3,710,000/Physical CPU Pair(年間) Verrazzano Enterprise Container Platform Copyright © 2023, Oracle and/or its affiliates | 2 Public Cloud Private Cloud On-premise Metrics Logging Tracing
  2. Multi Cloud • マネージド(クラウド)およびセル フマネージド(プライベート/オンプ レミス)のKu​​bernetesクラスタを サポート • ベンダーロックインの回避 Application

    Lifecycle Management • 大規模アプリケーションを管理可 能 • アプリケーションに対するオペ レーション、デプロイメント戦略、 監視スタックを構成 Observability • Prometheus/Grafana/Opens earch/Kibana/Jaegerなどの最 も広く使用されているオープンソー スツールを利用した Observabilityの実現 • 各種ダッシュボードを即時に 利用可能 Verrazzano Enterprise Container Platformが持つ5つのコンセプト(1) Copyright © 2023, Oracle and/or its affiliates | 3 Public Cloud Private Cloud On-premise オペレー ション Observ ability セキュリティ デプロイメン ト戦略 ワーク ロード管 理 Metrics Logging Tracing
  3. Security • CalicoやPod Securityを利用したポリシーの適用 • サービスメッシュ間の通信暗号化 • アプリケーション認証、シングルサインオンの実現 Workload Management

    • WebLogic/Coherence/HelidonといったOracleが 提供する各種製品とのネイティブな連携とワークロード 設定の提供 • SpringBootやMicronaut、Java以外のアプリケー ションも含めたワークロードの提供とObservabilityの 提供 Verrazzano Enterprise Container Platformが持つ5つのコンセプト(2) Copyright © 2023, Oracle and/or its affiliates | 4
  4. Copyright © 2023, Oracle and/or its affiliates | 5 Verrazzanoを利用して全てのKubernetesクラスタ環境への包括的な管理を実現

    • 各ベンダーが提供するマネージドKubernetesサービスやオンプレミス環境に展開するKubernetesクラスタも Verrazzano上で管理可能 • 各Kubernetesクラスタについて同一のポリシーを適用して構築/運用が可能 Verrazzanoで実現する“Multi Cloud” コンテナ アプリケーション管理 Verrazzano インフラ運用管理 Rancher/Istio/Velero モニタリング・ログ収集 Prometheus Grafana Fluentd Opensearch Jaeger SSO/アクセス管理 Keycloak Oracle Cloud Private Cloud 3rd Party Cloud Kubernetes Kubernetes Kubernetes CI/CD Argo CD
  5. Observability/Securityの提供 • 効率的な監視やロギングの実現 • 強固なセキュリティの実現 CI/CDの提供 • Argo CDを利用したGitOpsの実現 OAMを利用したアプリケーション定義

    • 環境に依存せずにアプリケーション中心のプラットフォー ムを構築可能 多彩なワークロードの管理 • ワークロード特性に応じてKubernetes Manifestを利 用したアプリケーション定義を実現 Verrazzanoで実現する“Application Lifecycle Management” Copyright © 2023, Oracle and/or its affiliates | 6 Service Mesh Application1 Application2 app1 cluster-1 Open Application Model(OAM) ランタイムに依存せずにアプリケーションをモデル化 app2 cluster-2 mTLS
  6. Observabilityスタックの提供 • デプロイするすべてのアプリケーションに適用 • メトリクス • WebLogic/Coherence/Helidonアプリケーション は自動でPrometheusフォーマットにエクスポート • ロギング

    • WebLogic/Coherence/Helidonアプリケーション のロギングを自動で設定(Fluentdを利用) • その他のアプリケーションは標準出力へのベスト プラクティス構成を適用可能 • 分散トレーシング • Jaegerによるトレーシング • Istio/Envoyによるネットワーク監視の提供 • 適用するスタックについてはユーザが選択可能 Verrazzanoで実現する“Observability” Copyright © 2023, Oracle and/or its affiliates | 7 コンテナ 開発者 コンテナ 適用するスタックを設定
  7. 各種プラットフォームへのSSOを提供 • 各ダッシュボードへのシングルサインオンを提供 • LDAPやActive Directoryも利用可能 • RBACとの連携やアプリケーションエンドポイントへ のアクセス制御も実現可能 マルチクラスタRBACの提供

    • クラスタを跨ぐRBAC制御を実装可能 • Istioを利用し、サービス間のセキュア(mTLS)な通信を 即時に提供 • 証明書の自動管理を実現 Verrazzanoで実現する“Security” Copyright © 2023, Oracle and/or its affiliates | 8 Public Cloud On-premises mTLS ユーザA ユーザB 管理者 モニタリング・ダッシュボード SSO SSO/RBAC
  8. Open Application Model • https://oam.dev/ • https://github.com/oam-dev/spec • “An open

    standard for defining cloud native apps” • MicrosoftとAlibaba Cloudが提携して立ち上げ • 特定のプラットフォームに依存しないアプリケーションを 宣言的かつ標準的にモデル化 • アプリケーションを再利用可能な形にモジュール化 • 独自の定義を持つことも可能 • オンプレミス/クラウド/エッジを含めてアプリケーションを デプロイし、運用するための一貫したエクスペリエンスを 提供 OAM(Open Application Model) Copyright © 2023, Oracle and/or its affiliates | 9
  9. Component • 各アプリケーションの構成や設定を定義 • ここで定義したComponent名をApplication Configuration側で定義 • 基本的にはDeploymentリソースと同様のテンプレー トを利用 •

    ImageのURL • コンテナアプリケーションの開放ポートなど Application Configuration • 各アプリケーションをComponentとして定義(複数 定義可能) • Traitと呼ばれるIngressやメトリクス収集などのコンテ ナアプリケーション運用上のコンポーネント群を定義 OAMを利用した複数のアプリケーション定義 Copyright © 2023, Oracle and/or its affiliates | 10 Application1 Application2 Application1 Application2 Component Application Configuration Trait群
  10. Copyright © 2023, Oracle and/or its affiliates | 11 ComponentとApplication

    Configurationの具体的イメージ(Helidonの場合) Component ApplicationConfiguration Deploymentのテンプレートと同様の内容を 記載。 Ingressやメトリクス収集設 定などのアプリケーション周辺 に関わるコンポーネントを定 義。 Component Application Configuration
  11. VerrazzanoManagedCluster • Verrazzanoの管理対象とするKubernetesクラスタ • 以下の例の場合は、”managed1”というクラスタを 作成 アプリケーション側のManifest設定 • kindには”MultiCluster”というPrefixを付与 •

    “Placement”にデプロイ先の環境名を定義 • 以下の例の場合は、”managed1”という管理対 象クラスタにデプロイ VerrazzanoでのマルチKuberketes環境の管理 Copyright © 2023, Oracle and/or its affiliates | 12 MultiClusterApplicationConfiguratio n MultiClusterComponent VerrazzanoManagedCluster
  12. WebLogic Workload • WebLogic Operatorと のネイティブな連携 • データベースのコネクショ ンハンドリング •

    OAMモデルファイルを作 成するWebLogic Kubernetes Toolkit • 柔軟かつ多彩なパラメー タの設定が可能 Coherence Workload • Coherence Operator とのネイティブな連携 • 柔軟かつ多彩なパラメー タの設定が可能 Helidon Workload • 追加のパラメータなしに コンテナ化されたワーク ロードの提供 • 柔軟かつ多彩なパラメー タの設定が可能 • Verrazzanoに統合され たHelidon CLI Containerized Workload • Spring Boot、Micronaut などのJavaアプリケーション やNode.js、Pythonアプリ ケーションなどを含めて利用 可能 • 事前に統合されたメトリクス やロギングの提供 Verrazzanoでの”Workload Management” Copyright © 2023, Oracle and/or its affiliates | 13
  13. Non-OAMワークロードのメトリクス監視の自動化 • Non-OAMのワークロードのデプロイ時に Prometheusによるメトリクス監視を自動的に設定可 能 • 対象は以下のリソース • Deployments(Pods) •

    ReplicaSets • StatefulSets • カスタムリソース(CR)としてメトリクステンプレートを作成 • リソースもしくネームスペースに対して、 annotationを設定することで自動的にメトリクス 収集が可能 • デフォルトでは”standard-k8s-metrics- template”を事前に作成 • ユーザが独自にテンプレートを作成することも 可能 Non-OAMワークロードのメトリクス監視 Copyright © 2023, Oracle and/or its affiliates | 14 metrics template namespace スクレイピング