Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GCP Composer
Search
Masaki Iino
July 20, 2018
Technology
0
220
GCP Composer
社内LT資料
Masaki Iino
July 20, 2018
Tweet
Share
More Decks by Masaki Iino
See All by Masaki Iino
AnyPay ChatOps
iinomasaki
0
1.2k
Istio
iinomasaki
0
1.5k
GolangでAPIドキュメント自動生成
iinomasaki
0
530
LT_Cloud_Functions.pdf
iinomasaki
1
530
Other Decks in Technology
See All in Technology
オーナーシップを持つ領域を明確にする
konifar
11
2.6k
カオナビの利用実績をアウトカムへつなげる旅 / example-of-data-management-startup-in-kaonavi
kaonavi
0
120
SREとその組織類型
tatsuo48
8
1.5k
自動生成を活用した、運用保守コストを抑える Error/Alert/Runbook の一元集約管理 / Centralized management of Error/Alert/Runbook to minimize operational costs using automated code generation
biwashi
9
2.1k
The CloudCompare project by Dr. Daniel Girardeau-Montaut
kentaitakura
0
510
PHPカンファレンス小田原2024
ysknsid25
3
660
スタートアップの技術顧問を3年間続けて発生した事と気付き
biwakonbu
0
160
元インフラエンジニアに成る / Human Resources to Human Relations
bobtani
3
810
Garoon 開発チーム / Garoon development team
cybozuinsideout
PRO
2
2.9k
マルチアカウント環境への発見的統制の導入
ch1aki
1
1.3k
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
700
疲弊しない!AWSセキュリティ統制の考え方 #devio_osakaday1
masahirokawahara
6
5.9k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
13
1.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
20
1.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
12
1.5k
Testing 201, or: Great Expectations
jmmastey
27
6.3k
GitHub's CSS Performance
jonrohan
1023
450k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Creatively Recalculating Your Daily Design Routine
revolveconf
209
11k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
39
4.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.3k
The Language of Interfaces
destraynor
151
23k
How to name files
jennybc
64
92k
Transcript
Cloud Composer 2018/07/06 Iino Masaki
Cloud Composer とは Cloud Composer とは、マネージドなワークフローオーケストレーションサービスで す。Apache Airflow をベースに構築しており、パイプラインの作成、スケジューリン グ、監視を可能にします。Airflow同様にPythonを使用してジョブ(DAG)を記述しま
す。
Airflow AirflowとはAirbnbがオー プンソースとして開発した、 ワークフローを記述、実行、 監視するためのツールで す。 グラフ理論がベースになっ ています。
Getting Started
Getting Started Composer はまだClosed Betaで全体には公開していません。開始するためには GCPConsoleから無料トライアルに応募しましょう。 トライアル申請が通るとGCPConsoleに Composer サービスが追加されます。
Getting Started 公式のQuickstartに沿ってさくっとSampleを作成します。 Sampleでは下記処理を実行するDAGを作成します。 1. Cloud Dataproc Clusterを作成 2. Cluster上でHadoop
を実行し 単語の出現数をGCSに書き出し 3. Cloud Dataproc Clusterを削除
Getting Started まず、公式ドキュメントに記載されているBefore you beginを通してコマンドのインス トールやAPIの有効化を行っておきましょう。 環境変数を束ねたEnviromentを作成します。この処理は実行してから小一時間ほど かかるので、実行してコーヒーでもの飲みながらのんびり待ちましょう。 gcloud beta
composer environments run ENVIRONMENT_NAME --zone us-central1-a --machine-type n1-standard-2
Getting Started Environment を作成すると右上のキャプ チャの用にComposerサービスに Environment として表示されます。 この際いくつかのサービスでバックエンド 用のプロジェクトが作成されます。 •
GCS:DAGs置き場 • GKE:Worker, Redis等 • GAE:管理画面 • SQL:進捗管理 GAE, SQLは使っている形跡はあります が、Consoleから確認できないためプロ ジェクト外に作成されている可能性もあり ます。
Getting Started コマンド経由でquickstart.pyをアップロードします。Environment作成時にできた bucketに直接アップロードしてもOKです。 gcloud beta composer environments storage dags
import --environment ENVIRONMENT_NAME --source quickstart.py
Getting Started 管理画面にUploadしたDAGが表示され ます。 quickstart.pyに記述したstart_dateが yesterdayになっているため、登録と同時 に実行もされます。
Architecture
Architecture たぶんこんな構成になっていると思いま す。 管理画面へのアクセスがAppEngineの URLになっているので、GAE経由で管理 画面へプロキシしているのではないでしょ うか。 GKEにsql proxyなるものがあるのでどこ かのCloudSQLに繋がっているのだろうと
も思えます。
まとめ
まとめ • GCEに自前で建ててた人は乗り換えありかも • Cloud Memorystoreを使っていないのは少し残念 • ちょっと値段が高い