OpenShiftとKubernetes

 OpenShiftとKubernetes

『Cloud Native Tokyo #01』〜 OpenShift & Rancher特集 〜
で利用した資料です
https://cnjp.connpass.com/event/122965/

269258447d4284b5cb2ce0f048d143b2?s=128

Shingo.Kitayama

April 10, 2019
Tweet

Transcript

  1. None
  2. None
  3. None
  4. None
  5. None
  6. とは OpenShift Application Build/Deploy

  7. とは

  8. が目指す世界

  9. が提供するレイヤ

  10. の提供価値 Contributorを含む専門部隊によるサポートと世界中のユースケースからの知見。また、 継続的なセキュリティ対応。 オンプレミスだけでなく、ハイブリッドクラウドにわたる基盤のフルスタック運用自動化ソ リューション。 さまざまなKubernetesエコシステムとワークフローと統合することで、容易なコンテナア プリケーション開発環境の展開。

  11. • • •

  12. ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓

    ✓ ✓ ✓ ✓ ✓
  13. Education Finance Services Telecom Retail Travel Public Sector Technology Manufacturing

  14. None
  15. と の大きく異なるあれこれ が提供する

  16. 責任範囲ごとにコンテナの階層 レイヤー をメンテナンス コンテナメンテナンスの容易性

  17. アプリケーションコードを にし、アプリケーションとベースイメージをビルドして、新しい イメー ジを生成

  18. で以下のオブジェクトが作成される 解説 は、コマンドラインで指定された各ソースリポジトリーに作成されま す。 は使 用するストラテジー、ソースのロケーション、およびビルド の出力ロケーションを指定します。 では、通常 つの が作成されます。

    つ目は、インプットイメージを表しま す。 ビルドでは、これはビルダーイメージです。 ビルドでは、これは イメージです。 つ目は、アウトプットイメージを表します。コンテナーイメージが にインプットとして指定された 場合に、このイメージに対してもイメージストリームが作成されます。 は、ビルドの出力または指定されたイメージのいずれかをデプロイするために作成さ れます。 コマンドは、結果として生成される に含まれるコンテナーに指定 される全 ボリュームに ボリューム を作成します。 コマンドは、インプットイメージで公開ポートを検出しようと試みます。公開されたポートで数値 が最も低いものを使用して、そのポートを公開するサービスを生成します。 完了後に別のポー トを公開するには、単に コマンドを使用し、追加のサービスを生成するだけです。
  19. コンテナのイメージタグまたはソースコードが変わるたびに新しいビルドが行われる。 kind: "BuildConfig" apiVersion: "v1" metadata: name: "ruby-sample-build" spec: triggers:

    - type: "GitHub" … source: type: "Git“ … strategy: type: "Source“ output: to: kind: "ImageStreamTag" ◦ の実行を制御するためのトリガー ◦ ビルドを実行するためのコンテンツもとの指定 ◦ の実行を制御するためのトリガー ◦ 新しいコンテナーイメージの保存先
  20. 内部で管理される レジストリのイメージのメタデータ レジストリのタグに されたイメージのバージョン履歴 を保持する機能 レジストリに など、 のタグが更新されたら自動的にアクションを起動できる 更新トリガー 内部レジストリとの連携、イメージキャッシュ

  21. kind: "DeploymentConfig" apiVersion: "v1" metadata: name: "frontend" spec: template: replicas:

    5 triggers: - type: "ConfigChange" - type: "ImageChange" … strategy: type: "Rolling" ◦ ◦ イメージストリームタグのコンテンツが変更されるた びに を更新 ◦ の実行を制御するためのトリガー strategy: type: Rolling rollingParams: updatePeriodSeconds: 1 intervalSeconds: 1 timeoutSeconds: 120 maxSurge: "20%" maxUnavailable: "10%" pre: {} post: {}
  22. None