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
620
LT_Cloud_Functions.pdf
iinomasaki
1
550
Other Decks in Technology
See All in Technology
開発者の定量・定性データを組み合わせて開発者体験を把握するための取り組み
ham0215
1
180
プロダクトエンジニアを支えるための開発生産性向上施策
tsukakei
0
150
2ヶ月かかるDBアップグレード検証を最大2週間に短縮した自作Go製CLIツール「Platinum」を紹介する / Introducing Go CLI tool "Platinum" for shortened DB upgrade validation
vtryo
2
110
不動産tech Product Night#2_AIことはじめ_GA橋本
takehikohashimoto
0
190
サーバー管理しないサーバーサービスManaged DevOps Pool
kkamegawa
0
140
学術機関におけるID連携とOpenID Connect
fujie
0
320
Segment Anything Model 2
tenten0727
3
720
Analytics-Backed App Widget Development - Served with Jetpack Glance
miyabigouji
0
630
グイグイ系QAマネージャーの仕事
sadonosake
0
360
Swift Testingのconfirmationを コードリーディング/Dive into Swift Testing confirmation
laprasdrum
2
270
Road to Single Activity
yurihondo
2
240
Mocking in Rust Applications
taiki45
2
420
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
36
7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
29
2.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
38
9.2k
The Language of Interfaces
destraynor
153
23k
The Invisible Customer
myddelton
119
13k
The Brand Is Dead. Long Live the Brand.
mthomps
53
38k
Typedesign – Prime Four
hannesfritz
39
2.3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
Fireside Chat
paigeccino
31
2.9k
The Mythical Team-Month
searls
218
43k
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を使っていないのは少し残念 • ちょっと値段が高い