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
230
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.6k
GolangでAPIドキュメント自動生成
iinomasaki
0
640
LT_Cloud_Functions.pdf
iinomasaki
1
550
Other Decks in Technology
See All in Technology
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.7k
アプリエンジニアのためのGraphQL入門.pdf
spycwolf
0
110
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
複雑なState管理からの脱却
sansantech
PRO
1
160
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
610
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
260
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
560
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
13k
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
120
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
880
Featured
See All Featured
Site-Speed That Sticks
csswizardry
0
33
Gamification - CAS2011
davidbonilla
80
5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Designing for humans not robots
tammielis
250
25k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Navigating Team Friction
lara
183
14k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
We Have a Design System, Now What?
morganepeng
50
7.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
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を使っていないのは少し残念 • ちょっと値段が高い