Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Oracle Developer Day 2021 OCI DevOps HOL
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
oracle4engineer
PRO
December 15, 2021
Technology
450
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Oracle Developer Day 2021 OCI DevOps HOL
Oracle Developer Day 2021 OCI DevOps HOL 資料
oracle4engineer
PRO
December 15, 2021
More Decks by oracle4engineer
See All by oracle4engineer
kagent で Kubernetes 運用を考える
oracle4engineer
PRO
1
360
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
Oracle Cloud Infrastructure:2026年9月度サービス・アップデート
oracle4engineer
PRO
1
140
[2026 Oracle Technical Deep Dive] Apache Iceberg × Oracle AI Database -Oracle Autonomous AI Lakehouseが実現するAI時代のデータ基盤- (2026年9月17日開催)
oracle4engineer
PRO
0
65
[2026 Oracle Technical Deep Dive] エンタープライズAIエージェントを支えるOCIソリューション。ラインナップと特徴を理解しよう! (2026年9月17日開催)
oracle4engineer
PRO
0
280
[2026 Oracle Technical Deep Dive] AI時代のデータベース基盤をどう選ぶ? Exadata Database Serviceの選択肢と使い分け (2026年9月17日開催)
oracle4engineer
PRO
0
190
[2026 Oracle Technical Deep Dive] オンプレミスDBのCloud移行アプローチ:移行計画に基づくメソッドとツールの選択 (2026年9月17日開催)
oracle4engineer
PRO
0
110
[2026 Oracle Technical Deep Dive] VMwareワークロードのOCI移行実践ガイド - OCVSでの継続利用からOCIコンピュートへの移行まで (2026年9月17日開催)
oracle4engineer
PRO
0
87
[2026 Oracle Technical Deep Dive] OCI AI Resilience -OCIのセキュリティ対策機能をきちんと使いこなす- (2026年9月17日開催)
oracle4engineer
PRO
0
96
Other Decks in Technology
See All in Technology
2026-10-01_MagicPod_QAハーネスエンジニアリングとQA組織の未来像
ynisqa1988
1
430
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
320
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
240
2026-09-26 Platform Engineering Kaigi 2026 インフラとアプリの境界線と委譲の設計 / Drawing the Infra and App Line
masasuzu
0
590
3人で1000GPU超を統合運用する?マルチクラウド&オンプレを跨ぐ、構築と運用のリアル!
kazukun0716
2
820
Meet AgentCore Identity Consent Portal
hironobuiga
3
160
More Freedom on the Same Shared GPU Cluster: A Small Team’s Experience with vCluster
nttcom
0
100
私の推しは「聞いてから進む」AIです -AI-DLCに一人でアプリを作らせた話
yama3133
1
160
React Nativeでの OTA Updateって、 どう説明する?
ichiki1023
0
140
OpenClawでAzure DevOpsのWiki更新を自動化する - クラウドAIだけでは届かない場所へ
yutakaosada
0
140
AI 時代の Azure エンジニアリング ~ 私たちは何を磨き、何を任せるのか ~
chack411
1
380
HacobuにおけるFDEとは/登壇資料(戸井田 裕貴)
hacobu
PRO
1
720
Featured
See All Featured
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
450
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
260
First, design no harm
axbom
PRO
2
1.3k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
66k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
550
Into the Great Unknown - MozCon
thekraken
41
2.7k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Technical Leadership for Architectural Decision Making
baasie
3
590
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
930
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
850
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
590
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
750
Transcript
Oracle Developer Day 2021 OCI DevOps HOL Yutaka Ichikawa Oracle
Groundbreaker Advocate Principal Cloud Solution Engineer Oracle Corporation Japan Dec 17, 2021
Profile Name • Yutaka Ichikawa/市川 豊 Belong • Solutions Architect
Role • Principal Cloud Solution Engineer SNS • Twitter/GitHub/Qiita:cyberblack28 Blog • https://cyberblack28.hatenablog.com/ Materials • https://speakerdeck.com/cyberblack28/ Community • CloudNative Days Tokyo #cndt • Cloud Native Bright Future #cnbfmeetup Certified • Certified Kubernetes Administrator • Certified Kubernetes Application Developer • Kubernetes and Cloud Native Associate Publications Dockerコンテナ開発・環境構築の基本 2021/7/27 発売
コミュニケーション ガイド こんなことは… こちらに… セッションに 関する質問 Q&A セッション時にまとめてお答えします ハンズオンに 関する質問
Zoomチャット または マイクをオン (ミュート解除)にして発言をお願いします 運営事務局に 対する連絡 音声・画像の不具合や運営に関するもの *宛先「運営事務局」指定して投稿ください ご意見・応援 その他何でも! #oradevday
Agenda 1.OCI DevOps概要 2.OCI DevOps CI 3.OCI DevOps CD 4.OCI
DevOps Integrations 5.OCI DevOps Handson
OCI DevOps 概要
Copyright © 2021 Oracle and/or its affiliates OCI DevOps 概要
ソフトウェアをビルド、テスト、およびデプロイし、開発ライフサイクルの各フェーズを自動化 Bare Metal Compute Container Engine For Kubernetes Virtual Machine Functions 環境管理 デプロイメント・パイプライン アーティファクト管理 Fully-managed OCI DevOps Service デプロイ ロールバック ビルド・パイプライン OCI DevOps OCIR & Artifact Registry
Copyright © 2021 Oracle and/or its affiliates OCI DevOps 概要
コード 管理 ビルド 成果物 管理 デプロイ End to End の開発・運用プロセス 幅広い環境に対応 コード管理、ビルド・パイプライン、 成果物管理、デプ ロイメント・パイプラインから構成される各機能を用い た、一気通貫の開発・運用プロセスを実現 アーティファクトサービスと連携、実行環境を 問わず、幅広い環境へのデプロイを実現 OCI DevOpsサービスとしての価格は無料 ソフトウェアをビルド、テスト、およびデプロイし、開発ライフサイクルの各フェーズを自動化 Bare Metal Compute & Virtual Machine OKE Functions 価格無料 OCIR Artifact Registry 環境管理 アーティファクト管理 (*コード・リポジトリのストレージ、およびビルドのためのコンピュートは 別途必要)
Copyright © 2021 Oracle and/or its affiliates OCI DevOps 概要
ソフトウェアをビルド、テスト、およびデプロイし、開発ライフサイクルの各フェーズを自動化 ▪ ユースケース 継続的インテグレーション/継続的デリバリー(CI/CD)の実現、アプリ ケーション開発のライフサイクルを想定したシステム開発および運用環境 の整備 ▪ 特徴 Code Repository:ソースコード管理(Git) Build Pipeline (CI):ソフトウェアビルドの自動化 Artifact:成果物管理 Environment:デプロイ先管理(Compute,OKE,Functions) Deployment Pipeline (CD) :デプロイの自動化 ▪ 価格 無料 (*コード管理のストレージ、およびビルドのためのcomputeは別途必要) Environment Build Pipeline: CI Deployment Pipeline: CD Artifact BM & VM Compute OKE Functions Developer 開発環境 デプロイ 統合テスト 実行 承認 本番環境 デプロイ ビルド 実行 成果物 検証 成果物 デリバリ Code Repository OCIR Artifact Registry OCI DevOps
OCI DevOps CI
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
OCI DevOpsにおけるCI デプロイメント・パイプライン接続 OCIR/Artifact Registryにアーティファクトの配布 アプリケーションテスト DEPLOY DELIVER TEST BUILD CODE ビルド・パイプライン コードリポジトリ アプリケーションビルド/コンテナイメージビルド Gitリポジトリによるソースコード管理
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
コード・リポジトリ CODE • 独自のプライベートコードリポジトリの作成 • GitHub/GitLabなどの外部コードリポジトリとのミラー接続可能 • OCI DevOpsのトリガー機能を利用することで、ビルド・パイプラインとのイベントドリブンな連携が可能
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
コード・リポジトリ 「詳細」と「ファイル」ではブランチ内のソースコードが一覧表示されます。 各ファイルをクリックすると、ソース内容画面に遷移します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
コード・リポジトリ 「コミット」では、コミット履歴を確認できます。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
コード・リポジトリ 「比較」では、ブランチ、タグ名、コミットIDを指定することで、 変更した内容を比較できます。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
コード・リポジトリ 「ブランチ」では、リポジトリのブランチリストが表示されます。 「Gitタグ」では、リポジトリのGitタグリストが表示されます。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
CI(継続的インテグレーション)とは? アプリケーション開発に必要となるビルド、テスト、成果物(アーティファクト)の保存までの工程を自動化して、継続的に行われ る状態にすること • ソースコードの変更(更新)を契機に自動的にテストが開始されて、ソースコードの品質を担保 • ソースコードの変更(更新)を契機にアプリケーションビルド、アプリケーションテスト、コンテナイメージビルド、コンテナイメージレジス トリへの格納(プッシュ) CI環境を整備することで、早期バグの発見による品質向上、検証時間の短縮によるリリーススピード向上、開発者が開発に集 中できる環境でより良い開発サイクルを実現。 (etc.)
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
ビルド・パイプライン OCI DevOpsのビルド・パイプラインでは、ステージという単位で組み合わせながら、パイプラインをGUIベースに構築 DEPLOY DELIVER TEST BUILD • 「マネージド・ビルド」というテンプレートからステージを作成 • マネージド・ビルド・ランナーという仮想マシンが起動して、その中で アプリケーションのビルド、テストを実施する仕組み • マネージド・ビルド・ランナーで実行するワークフローは、 「build_spec.yaml」に定義して登録 「アーティファクトの配信」というテンプレートからステー ジを作成して、配信するOCIR、Artifact Registry を設定 「デプロイメントのトリガー」というテンプレートからス テージを作成して、デプロイメント・パイプラインとの連携 を設定
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
ビルド・パイプライン 「ステージの追加」、「パラレル・ステージの追加」を選択して、テンプレートに沿ってステージを作成
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
ビルド・パイプライン TEST BUILD DELIVER DEPLOY build_spec.yaml OCIR Artifact Registry Deployment Pipeline 事 前 に セ ッ ト ア ッ プ し て テ ン プ レ ー ト か ら 登 録
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
ビルド・パイプライン マネージド・ビルド・ランナーは、「build_spec.yaml」に定義されたワークフローを仮想マシン内で実行 アプリケーションテスト/ビルド コンテナイメージビルド アプリケーションテスト/ビルド コンテナイメージビルド アーティファクト生成 Virtual Machine アーティファクト生成 build_spec.yaml マネージド・ビルド・ランナー
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
マネージド・ビルド・ランナー build_spec.yamlで定義したワークフローの実行結果 各 ス テ ー ジ の 実 行 ロ グ 各ステージの実行結果
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CI
トリガー • OCI DevOpsのトリガー機能を利用して、コードリポジトリへのイベントをトリガーにビルド・パイプラインを自動実行 • 外部接続機能を利用することで、GitHub、GitLabとの連携も可能 OCI DevOps Code Repository Run Build・Pipeline Git push
OCI DevOps CD
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CD
OCI DevOpsにおけるCD デプロイメント・パイプライン • デプロイ先の指定(Compute,OKE,Functions) • デプロイにおける承認管理 • デプロイ戦略(Bule/Green Deployment) • 関数の呼び出し DEPLOY
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CD
CD(継続的デリバリー)とは? • CIで生成された成果物をステージングやプロダクション環境へ反映 • CIでコンテナレジストリに格納したコンテナイメージをKubernetesクラスタへ反映 CD環境を整備することで、エンドユーザに影響を与えることなく、高頻度、安定かつ安全にアプリケーションのリリースを実現。 (etc.) CI(継続的インテグレーション)によって生み出された成果物(アーティファクト)を、実際の環境(ステージングやプロダクショ ン)へ自動的に配置すること
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CD
デプロイメント・パイプライン OCI DevOpsのデプロイメント・パイプラインでは、ステージという単位で組み合わせながら、パイプラインをGUIベースに構築 DEPLOY • 「承認」テンプレートから、人による承認プロセスを実施するステージを作成 • 「OKE」、「Compute」、「Functions」のテンプレートからデプロイ先を指 定するステージを作成
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CD
デプロイメント・パイプライン 「ステージの追加」、「パラレル・ステージの追加」を選択して、テンプレートに沿ってステージを作成
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CD
デプロイメント・パイプライン OKE VM & BM Compute Functions OKE,Compute,Functi onsへのデプロイ先を指定 できるテンプレート 承認プロセス追加できる テンプレート Functionsで作成した 関数を呼び出しを設定 できるテンプレート ワークフロー内で 一時停止を追加 できるテンプレート Blue/Green Deploymentを 設定できるテンプ レート
Copyright © 2021 Oracle and/or its affiliates OCI DevOps CD
デプロイメント・パイプライン ビルド・パイプラインの処理完了後、デプロイメント・パイプラインが起動、承認ステージ手動によるデプロイ判断
OCI DevOps Integrations
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Integrations
OCI Service Connect OCIサービス(環境管理やアーティファクト管理以外)と連携して、OCI DevOpsの活用の幅を拡大 Notifications Logging Loggingサービスとの連携でOCI DevOps から生成されるログを管理可能 Notificationsサービスとの連携で、OCI DevOpsパイプラインの実行状況等を通知可能
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Integrations
OCI Service Connect 外部接続設定を行うことで、GitHub、GitLabと連携して、リポジトリのミラーリングが可能 Jenkinsプラグインを利用して、OCI DevOpsとJenkinsを統合利用可能
OCI DevOps Handson
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
環境構築後、コード変更とGit Pushをトリガーに、一連のパイプラインを自動実行、OKEクラスタにサンプルコンテナアプリケーションが デプロイを確認するハンズオン
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
ハンズオン全体の流れ 1.OKE セットアップ 2.OCI Notifications セットアップ 3.認証トークン セットアップ 4.動的グループ/ポリシー セットアップ 事前準備 1.プロジェクト 2.環境 3.コードリポジトリ 4.アーティファクト 5.デプロイメント・パイプライン OCI DevOps 環境構築 6.ビルド・パイプライン 7.トリガー 8.パイプラインの実行 9.デプロイの確認
事前準備
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
1.OKEセットアップ Oracle Container Engine for Kubernetesを利用して、3ノードのKubernetesクラスタを構築します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
2. OCI Notifications セットアップ OCI Notificationsと連携して、登録したメールアドレスにOCI DevOpsから通知を受け取ることができるようにします。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
3.認証トークン セットアップ コード・リポジトリで利用するトークンを作成します。 4.動的グループ/ポリシー セットアップ OCI DevOpsを利用する上で、必要となる動的グループとポリシーを設定します。 動的グループ ルール 説明 OCI_DevOps_Dynamic_Group All {resource.type = ‘devopsrepository’, resource.compartment.id = ‘コンパートメントOCID’ OCI DevOpsのコード・リポジトリを利用するため に必要な動的グループ OCI_DevOps_Dynamic_Group All {resource.type = ‘devopsbuildpipeline’, resource.compartment.id = ‘コンパートメントOCID’ ビルド・パイプラインを利用するために必要な動的 グループ OCI_DevOps_Dynamic_Group All {resource.type = ‘devopsdeploypipeline’, resource.compartment.id = ‘コンパートメントOCID’ デプロイメント・パイプラインを利用するために必要 な動的グループ ポリシー 説明 Allow dynamic-group OCI_DevOps_Dynamic_Group to manage devops-family in compartment id ‘コンパートメントOCID’ OCI DevOpsの各機能を利用するために必要なポリシー Allow dynamic-group OCI_DevOps_Dynamic_Group to manage all-artifacts in compartment id ‘コンパートメントOCID’ OCI DevOpsがOCIRやアーティファクト・レジストリを管理 するために必要なポリシー Allow dynamic-group OCI_DevOps_Dynamic_Group to manage cluster-family in compartment id ‘コンパートメントOCID’ OCI DevOpsがOKEを管理するために必要なポリシー Allow dynamic-group OCI_DevOps_Dynamic_Group to use ons-topics in compartment id ‘コンパートメントOCID’ OCI DevOpsがOCI Notificationsサービスを利用するた めに必要なポリシー
OCI DevOps 環境構築
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
1.プロジェクト OCI DevOpsは、プロジェクト単位で管理するため、最初にプロジェクトを作成します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
2.環境 OCI DevOpsからOKEクラスタにアプリケーションのデプロイを行うために、OKEクラスタを登録します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
3.コード・リポジトリ 独自のプライベート・コードリポジトリをOCI DevOps上に作成します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
4.アーティファクト ビルドパイプラインでビルドしたコンテナイメージを格納するコンテナイメージレジストリのセットアップとOCI DevOpsからOKEクラスタに デプロイする際に利用するマニフェストをアーティファクトレジストリに登録します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
5.デプロイメント・パイプライン アーティファクト・レジストリと連携して、OKEクラスタにアプリケーションを自動デプロイするためのパイプラインを作成します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
6.ビルド・パイプライン コードリポジトリからソースをダウンロードして、コンテナイメージビルド、コンテナイメージビルドをOCIRに格納、デプロイメント・パイプライ ン連携という一連の流れをビルド・パイプラインとして作成します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
7.トリガー ソースコードを変更して、コードリポジトリへの「git push」コマンド実行をトリガーに、これまで作成してきた「ビルド・パイプライン」、「デ プロイメント・パイプライン」が自動で稼働して、OKEクラスタにアプリケーションがデプロイされるようにします。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
8.パイプラインの実行 / 9.デプロイの確認 実際にソースコードを変更して、「git push」をトリガーにOKEクラスタへの自動デプロイを実行します。
Copyright © 2021 Oracle and/or its affiliates OCI DevOps Handson
サンプルアプリケーションのソースコード、環境構築テキストは、以下を参照 GitHub Tutorial https://github.com/oracle-japan/oracle-developer-days-2021-ocidevops-hol https://oracle-japan.github.io/ocitutorials/cloud-native/devops-for-commons
Thank you Copyright © 2021 Oracle and/or its affiliates