SlideShare a Scribd company logo
G
A
A
Q
Q R D
Google Kubernetes Engine
MR
N S C T O
D
2 #
9 @2 0 A 0 / # :. 01 0 / #
/ # . / #
19 @2:0 A 20 7 1:2 #
)0
• A 0 J i s o d pl8D CC A C J ot l J E )
• J C l s ber4 J E J B A I
• R R M- c u l s dr s T
n kh S R l/ 1 / IJ D CA ACAJ 1E AE AE R i k S
2 22 0 ) ( 0
? @9 :
u u R
u R R
u R R
) ( & R P R R P
s g a dP
m l sch P y y P
( ) 3 1
? @ 0 00 0
: 7
/
> > -
2
5 3 015 38
• ? ?
• ? C ? CT
• U A ? A / ? C UWL
• ? / ? C p
• ? / ? C
• D
• U D
4
• k lGcWtrw Ff e ibl
• G W
• G T A ? A / ? C
• P ys W
• ? xv I
• G W ys ( E I
• - T
• m jGdn
• / F gka c o F m
• I
A 23 .
• ? / ? C -
• ? D )
• ? A -
• ? / ? C -
• ? -
4 3 5 1
•
•
•
• ?A
• E
• -
• -
Argoproj is a collection of tools
for getting work done with Kubernetes.
• Argo Workflows - Container-native Workflow Engine
• Argo CD - Declarative GitOps Continuous Delivery
• Argo Events - Event-based Dependency Manager
• Argo Rollouts(NEW!) - additional deployment strategies
https://argoproj.github.io/argo/
O D CR W G
7 K
D 7 A
L + - - -
• arfi
- - - - 8- + -, +?
• arfi 8 gc or
Wb n c M ehW
• kp cfel arfi E
cfel cfels w V kp tEd ca h v
)G E EGA ELH - 8 G H
• ) EG FH 8H 8G8 ED E LEGA ELH
• )G 8 H FFEG
• )G 8 EG / G8L
• F K DF E F H
• 8G 8 H F8G8C GH
• 1EEFH
• 8G8C G 8 ED
• ED ED8 H
• C E H H F LEGA EL K
• 3 G H F LEGA EL K
• 3 H C C CE
• HF D 3 H C
&
• 8D 8 ED
• 0(H G HE G EG H G8 ED
• , /EEAH DE 8 EDH 8D F
• 8G 8 E ED E ECF LEGA EL
• D
• 8 D E G8 EDH DE H EGH
• E C H F C G8 H D
• 8G8 HC C H
• 8 CED H FH
• D E A G D E A G
• G F H FH
1 -
- 1
H
E
- 12 E
1 3
• A F E
• c d
• c - - - - -
• We a
•
• c We a
5 /
1 /
2
6
C B C 2
C 2
11 Co B
7 1
1
• c P
• S a E
•
• A I
• c
•
8 - - -1
- 1- -1
• e U D
• ca k nt D
• g c g c L
• a EU D T
• D C g g cP
• p i r i L S I
I
• a EU
• g T IP a
- 1- -1
• DI g c
• g - -- - L E
:9- 8. - 2 / 02 10
• 9 9 1
0
:9- 8. - 2 / 02 10
• 0 2
•
8 L l I m k 8 S m g l
j d j o
• j
• j
j j iy l
k b l
j a j
C j k s j G C j k
e a ui g
• L 1 2 fa
• 1 1 p c 1 1 1
• 1 1 D n
• ( ) (
• e 1 og 1L 1 S m
sm
Csm
s LI
lknt t
( ) ( (
y
) sa
p
l o
8 l s l l
8
R h y
D S
3 2
3 2
• /
• E D
• IC
• L
L I ) 3 2L
5 E
r C reh l C jc
L
• ro_m C
• ( r in p C
• 0:: 9 /. 1: :/.0 .6 2 / 9 ) (- ) 0: 3
reh
P 1/
V
jc
/2
(
& (& &( )
3
2
• steps.{step-name}.outputs.parameters
• steps.{step-name}.outputs.artifacts
8 4
8 4
1 2 4 / 8 4
• .99 8 ::: 9 71/9 5 0 /9 79/ 2 8 ( 4 :8 ) .9 2
• .99 8 ::: 9 71/9 5 0 /9 79/ 2 8 4 :8 .9 2
2 /4
T 3E
/ 0
P S
P 4
C G 3 1 / 4
RC A F
E O .
PI
:
AWS GCS Minio
: : / .
3 2 W
/ 1
2 W / 1
/
%
%
3 2/ 2
A
B
/
4 /
H
S H
B A
R E
R
/
3
AC ( 3 3
(
(
)
5 /
2
1
5 (
6 /
2 2 3
• DC MO C z AC CK
• D g mbR V rP
D BK
• Snv S S vR C
E DC DC DCBK
• A DB K
• lI kIS R & C
BK
• D A C B gc b f b
SYhI uRMH /
2
• C f b RL st D A C B
i IRo Pp
• DBC G R , S x
• i I SaekY
• p S x
• /
3 .
• )/
• ( )/
• )/
• )/
• )/
3 )3 138 (/
( 2 /32
• ( 2 /32 )3 138 A
• ( ( ES -1 g t w t
• l AdeE ) yf yf A Rn T kpAES
• o DP ES
uBr h uBr h
uBr h
h h
h
3 3 / 39
2 T
/ 3 A 3 W P
( ( ))
2 T
E /0 G P - / Ec A
• / -/ E T a C A PE S
• 00 4 / 4 4 / / /- E UG TC
/ 3 1
/ 3 1 4 / 1 A
/ 3
/ 3 4 2 / A
•
• S G G
• C M G
3 4 4
• h E A N
• /. GH C H
3. T c ge ./ 3 /. i
/. a
• / 4 i
•
. 4 /.
21 /1
G G A io s
h e W g h ea ei
P b h
m rlE d g
k nu P bg
h E p ht
argo submit -f ci/hello.yaml
git clone
spec:
templates:
- name: approve
suspend: {}
2 4
2 /
/ n /
D w P p t
/
ID C r a c e
o d d / Ck
d i hm / Csp DC
Cn
- name: build
sidecars:
- name: dind
image: docker:18-dind
securityContext:
privileged: true
mirrorVolumeMounts: true
container:
image: docker:18
env:
- name: DOCKER_HOST
value: 127.0.0.1
command:
- sh
- -c
args: ["
until docker ps; do sleep 3; done; ¥
docker build -t example . && ¥
docker save example > example.tar
"]
I 4 C 5 DA
1 26
D C
SO e D f
g d
PR R ia Be
cCe A C i
a Be
Argo CD
Sealed Secrets
Controller
Secrets
Sealed Secrets
Custom Resource
Kubernetes API
Server
apply
sync
D 4 1241 / 24 : 4
/ A 1 C A
/
cg S A l
n 2 .
S 2 RFR
voS t
production
develop
spec:
destination:
server:
https://kubernetes.default.svc
source:
targetRevision: master
spec:
destination:
server:
https://kubernetes.default.svc
source:
targetRevision: develop
kunm Svo
a e bgSrh P
2 1 py KJSr 2
dd o si
o
apiVersion: batch/v1
kind: Job
metadata:
generateName: post-sync-
annotations:
argocd.argoproj.io/hook: PostSync
47 7 4 2 4
5 4 .
A 9 /
/ I 4/ /4 1 31
w s A / i g l
/ 5 32 i l l
/ 5 32 / / e t
• 5 32 r vo k n
• l e
• TMG c E M
gd G E
c G MiN M M Ma
fk 5 2 / 0t
• E E / 5 32 u fk o r
• TMG M
e TA E
/ 5 32 p o
u Wo P 5 hEe la
/ 9 : C l iDat v R P PESE
•
kD cjD m W Ps SE
• -
•
•
/ 9 : C.3 : 3 T P r S PE
• 57 A1 2 5 5 7 A3
• 57 A1 2 5 5 A::
kD cjD
bhgD
W s E
p . W :A 3f la
bhgD E E
w W s SE
1 0
r @
A i ? 7
e d o h Q
ng 0
4 + 5
55 4 RS g u c
g 4 o CTA
T
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
name: my-project
spec:
description: Example Project
sourceRepos:
- '*'
destinations:
- namespace: guestbook
server: https://kubernetes.default.svc
clusterResourceWhitelist:
- group: ''
kind: Namespace
namespaceResourceBlacklist:
- group: ''
kind: ResourceQuota
4 i P 4 mCTA R G
p P tl m
44 g h s BG T D 44
4 5 O e r j
apiVersion: v1
kind: ConfigMap
metadata:
name: argocd-cm
namespace: argocd
labels:
app.kubernetes.io/name: argocd-cm
data:
dex.config: |
connectors:
- type: oidc
id: google
name: Google
config: {}
helm.repositories: |
- url: https://kubernetes-
charts.storage.googleapis.com
name: sealed-secrets

More Related Content

What's hot

メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろう
Kota Mizushima
 

What's hot (20)

エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings  (EMNLP 2021)【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings  (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
 
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
 
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
 
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
 
Python入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングPython入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニング
 
DockerコンテナでGitを使う
DockerコンテナでGitを使うDockerコンテナでGitを使う
DockerコンテナでGitを使う
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達
 
メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろう
 
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
 
Amazon SageMaker で始める機械学習
Amazon SageMaker で始める機械学習Amazon SageMaker で始める機械学習
Amazon SageMaker で始める機械学習
 
WayOfNoTrouble.pptx
WayOfNoTrouble.pptxWayOfNoTrouble.pptx
WayOfNoTrouble.pptx
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
 
AWSではじめるMLOps
AWSではじめるMLOpsAWSではじめるMLOps
AWSではじめるMLOps
 
マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜マルチテナントのアプリケーション実装〜実践編〜
マルチテナントのアプリケーション実装〜実践編〜
 
論文の図表レイアウト例
論文の図表レイアウト例論文の図表レイアウト例
論文の図表レイアウト例
 

Similar to Argoによる機械学習実行基盤の構築・運用からみえてきたこと

Similar to Argoによる機械学習実行基盤の構築・運用からみえてきたこと (20)

kintone on EKS ― EKS で実現するインフラ自動構築パイプライン
kintone on EKS ― EKS で実現するインフラ自動構築パイプライン kintone on EKS ― EKS で実現するインフラ自動構築パイプライン
kintone on EKS ― EKS で実現するインフラ自動構築パイプライン
 
Cloud Design Pattern for Online Game (Amazon Game Developers Day)
Cloud Design Pattern for Online Game (Amazon Game Developers Day)Cloud Design Pattern for Online Game (Amazon Game Developers Day)
Cloud Design Pattern for Online Game (Amazon Game Developers Day)
 
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
 
Google Polymer in Action
Google Polymer in ActionGoogle Polymer in Action
Google Polymer in Action
 
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド (更新版) - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド (更新版) - OpenStack Day Tokyo 2018講演資料OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド (更新版) - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド (更新版) - OpenStack Day Tokyo 2018講演資料
 
AIアプリはこう作る!-独自の識別モデル作成も簡単 Einstein Platform Services の使い方
AIアプリはこう作る!-独自の識別モデル作成も簡単 Einstein Platform Services の使い方AIアプリはこう作る!-独自の識別モデル作成も簡単 Einstein Platform Services の使い方
AIアプリはこう作る!-独自の識別モデル作成も簡単 Einstein Platform Services の使い方
 
Edge trends mizuno
Edge trends mizunoEdge trends mizuno
Edge trends mizuno
 
JTF2018_B30_k8s_operator_nobusue
JTF2018_B30_k8s_operator_nobusueJTF2018_B30_k8s_operator_nobusue
JTF2018_B30_k8s_operator_nobusue
 
【TECH×GAME COLLEGE#22】マイクリプトヒーローズの作り方
【TECH×GAME COLLEGE#22】マイクリプトヒーローズの作り方【TECH×GAME COLLEGE#22】マイクリプトヒーローズの作り方
【TECH×GAME COLLEGE#22】マイクリプトヒーローズの作り方
 
CVPR 2020 報告
CVPR 2020 報告CVPR 2020 報告
CVPR 2020 報告
 
[OpenInfra Days Korea 2018] (Track 4) - Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
[OpenInfra Days Korea 2018] (Track 4) - Backend.AI: 오픈소스 머신러닝 인프라 프레임워크[OpenInfra Days Korea 2018] (Track 4) - Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
[OpenInfra Days Korea 2018] (Track 4) - Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
 
「ドローンや移動するロボット産業におけるIoTとAIの応用」(2018-05-11)
「ドローンや移動するロボット産業におけるIoTとAIの応用」(2018-05-11)「ドローンや移動するロボット産業におけるIoTとAIの応用」(2018-05-11)
「ドローンや移動するロボット産業におけるIoTとAIの応用」(2018-05-11)
 
Semi-convolutional Operators for Instance Segmentation
Semi-convolutional Operators for Instance SegmentationSemi-convolutional Operators for Instance Segmentation
Semi-convolutional Operators for Instance Segmentation
 
Edge trends mizuno-template
Edge trends mizuno-templateEdge trends mizuno-template
Edge trends mizuno-template
 
GitOpsではじめるKubernetes CI/CD Pipeline
GitOpsではじめるKubernetes CI/CD PipelineGitOpsではじめるKubernetes CI/CD Pipeline
GitOpsではじめるKubernetes CI/CD Pipeline
 
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) :: 한국 카오스엔지니어링 밋업
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) ::  한국 카오스엔지니어링 밋업Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) ::  한국 카오스엔지니어링 밋업
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) :: 한국 카오스엔지니어링 밋업
 
【CVPR 2019】Learning Cross Modal Embeddings with Adversarial Networks for Cook...
【CVPR 2019】Learning Cross Modal Embeddings with Adversarial Networks for Cook...【CVPR 2019】Learning Cross Modal Embeddings with Adversarial Networks for Cook...
【CVPR 2019】Learning Cross Modal Embeddings with Adversarial Networks for Cook...
 
Distributed Denial of Service Attack Prevention at Source Machines
Distributed Denial of Service Attack Prevention at Source MachinesDistributed Denial of Service Attack Prevention at Source Machines
Distributed Denial of Service Attack Prevention at Source Machines
 
DevOps導入支援サービス
DevOps導入支援サービスDevOps導入支援サービス
DevOps導入支援サービス
 
DevLove k8s nobusue 20180711
DevLove k8s nobusue 20180711DevLove k8s nobusue 20180711
DevLove k8s nobusue 20180711
 

Recently uploaded

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Recently uploaded (20)

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG Evaluation
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 

Argoによる機械学習実行基盤の構築・運用からみえてきたこと

  • 1. G A A Q Q R D Google Kubernetes Engine MR N S C T O D 2 # 9 @2 0 A 0 / # :. 01 0 / # / # . / # 19 @2:0 A 20 7 1:2 #
  • 2. )0 • A 0 J i s o d pl8D CC A C J ot l J E ) • J C l s ber4 J E J B A I • R R M- c u l s dr s T n kh S R l/ 1 / IJ D CA ACAJ 1E AE AE R i k S 2 22 0 ) ( 0 ? @9 : u u R u R R u R R ) ( & R P R R P s g a dP m l sch P y y P
  • 3. ( ) 3 1 ? @ 0 00 0 : 7 / > > - 2 5 3 015 38
  • 4. • ? ? • ? C ? CT • U A ? A / ? C UWL • ? / ? C p • ? / ? C • D • U D 4 • k lGcWtrw Ff e ibl • G W • G T A ? A / ? C • P ys W • ? xv I • G W ys ( E I • - T • m jGdn • / F gka c o F m • I A 23 . • ? / ? C - • ? D ) • ? A - • ? / ? C - • ? - 4 3 5 1
  • 6. Argoproj is a collection of tools for getting work done with Kubernetes. • Argo Workflows - Container-native Workflow Engine • Argo CD - Declarative GitOps Continuous Delivery • Argo Events - Event-based Dependency Manager • Argo Rollouts(NEW!) - additional deployment strategies https://argoproj.github.io/argo/
  • 7. O D CR W G 7 K D 7 A
  • 8. L + - - - • arfi - - - - 8- + -, +? • arfi 8 gc or Wb n c M ehW • kp cfel arfi E cfel cfels w V kp tEd ca h v
  • 9.
  • 10. )G E EGA ELH - 8 G H • ) EG FH 8H 8G8 ED E LEGA ELH • )G 8 H FFEG • )G 8 EG / G8L • F K DF E F H • 8G 8 H F8G8C GH • 1EEFH • 8G8C G 8 ED • ED ED8 H • C E H H F LEGA EL K • 3 G H F LEGA EL K • 3 H C C CE • HF D 3 H C & • 8D 8 ED • 0(H G HE G EG H G8 ED • , /EEAH DE 8 EDH 8D F • 8G 8 E ED E ECF LEGA EL • D • 8 D E G8 EDH DE H EGH • E C H F C G8 H D • 8G8 HC C H • 8 CED H FH • D E A G D E A G • G F H FH
  • 13. 1 3
  • 14. • A F E • c d • c - - - - - • We a • • c We a
  • 16. 2 6 C B C 2 C 2 11 Co B
  • 17. 7 1 1 • c P • S a E • • A I • c •
  • 18. 8 - - -1 - 1- -1 • e U D • ca k nt D • g c g c L • a EU D T • D C g g cP • p i r i L S I I • a EU • g T IP a - 1- -1 • DI g c • g - -- - L E
  • 19. :9- 8. - 2 / 02 10 • 9 9 1
  • 20. 0 :9- 8. - 2 / 02 10 • 0 2 • 8 L l I m k 8 S m g l j d j o • j • j j j iy l k b l j a j C j k s j G C j k
  • 21. e a ui g • L 1 2 fa • 1 1 p c 1 1 1 • 1 1 D n • ( ) ( • e 1 og 1L 1 S m
  • 22. sm Csm s LI lknt t ( ) ( ( y ) sa p l o 8 l s l l 8 R h y D S
  • 24. • / • E D • IC • L
  • 25. L I ) 3 2L 5 E r C reh l C jc L • ro_m C • ( r in p C • 0:: 9 /. 1: :/.0 .6 2 / 9 ) (- ) 0: 3 reh P 1/ V jc
  • 26.
  • 27. /2 ( & (& &( ) 3 2 • steps.{step-name}.outputs.parameters • steps.{step-name}.outputs.artifacts
  • 28. 8 4 8 4 1 2 4 / 8 4 • .99 8 ::: 9 71/9 5 0 /9 79/ 2 8 ( 4 :8 ) .9 2 • .99 8 ::: 9 71/9 5 0 /9 79/ 2 8 4 :8 .9 2
  • 29. 2 /4
  • 30. T 3E / 0 P S P 4
  • 31. C G 3 1 / 4 RC A F E O . PI : AWS GCS Minio : : / .
  • 32. 3 2 W / 1 2 W / 1 / % %
  • 34. 4 / H S H B A R E R / 3
  • 35. AC ( 3 3 ( ( ) 5 / 2 1 5 (
  • 36. 6 / 2 2 3 • DC MO C z AC CK • D g mbR V rP D BK • Snv S S vR C E DC DC DCBK • A DB K • lI kIS R & C BK • D A C B gc b f b SYhI uRMH / 2 • C f b RL st D A C B i IRo Pp • DBC G R , S x • i I SaekY • p S x • /
  • 37. 3 . • )/ • ( )/ • )/ • )/ • )/
  • 38. 3 )3 138 (/ ( 2 /32 • ( 2 /32 )3 138 A • ( ( ES -1 g t w t • l AdeE ) yf yf A Rn T kpAES • o DP ES uBr h uBr h uBr h h h h
  • 39. 3 3 / 39 2 T / 3 A 3 W P ( ( )) 2 T
  • 40. E /0 G P - / Ec A • / -/ E T a C A PE S • 00 4 / 4 4 / / /- E UG TC
  • 41. / 3 1 / 3 1 4 / 1 A
  • 42. / 3 / 3 4 2 / A • • S G G • C M G
  • 43. 3 4 4 • h E A N • /. GH C H 3. T c ge ./ 3 /. i /. a • / 4 i • . 4 /.
  • 44. 21 /1 G G A io s h e W g h ea ei P b h m rlE d g k nu P bg h E p ht argo submit -f ci/hello.yaml git clone spec: templates: - name: approve suspend: {} 2 4
  • 45. 2 / / n / D w P p t / ID C r a c e o d d / Ck d i hm / Csp DC Cn - name: build sidecars: - name: dind image: docker:18-dind securityContext: privileged: true mirrorVolumeMounts: true container: image: docker:18 env: - name: DOCKER_HOST value: 127.0.0.1 command: - sh - -c args: [" until docker ps; do sleep 3; done; ¥ docker build -t example . && ¥ docker save example > example.tar "] I 4 C 5 DA
  • 46. 1 26 D C SO e D f g d PR R ia Be cCe A C i a Be Argo CD Sealed Secrets Controller Secrets Sealed Secrets Custom Resource Kubernetes API Server apply sync D 4 1241 / 24 : 4 / A 1 C A
  • 47. / cg S A l n 2 . S 2 RFR voS t production develop spec: destination: server: https://kubernetes.default.svc source: targetRevision: master spec: destination: server: https://kubernetes.default.svc source: targetRevision: develop kunm Svo a e bgSrh P 2 1 py KJSr 2 dd o si o apiVersion: batch/v1 kind: Job metadata: generateName: post-sync- annotations: argocd.argoproj.io/hook: PostSync 47 7 4 2 4
  • 48. 5 4 .
  • 49. A 9 / / I 4/ /4 1 31
  • 50. w s A / i g l / 5 32 i l l / 5 32 / / e t • 5 32 r vo k n • l e • TMG c E M gd G E c G MiN M M Ma fk 5 2 / 0t • E E / 5 32 u fk o r • TMG M e TA E / 5 32 p o
  • 51. u Wo P 5 hEe la / 9 : C l iDat v R P PESE • kD cjD m W Ps SE • - • • / 9 : C.3 : 3 T P r S PE • 57 A1 2 5 5 7 A3 • 57 A1 2 5 5 A:: kD cjD bhgD W s E p . W :A 3f la bhgD E E w W s SE
  • 52. 1 0 r @ A i ? 7 e d o h Q ng 0
  • 53.
  • 54. 4 + 5 55 4 RS g u c g 4 o CTA T apiVersion: argoproj.io/v1alpha1 kind: AppProject metadata: name: my-project spec: description: Example Project sourceRepos: - '*' destinations: - namespace: guestbook server: https://kubernetes.default.svc clusterResourceWhitelist: - group: '' kind: Namespace namespaceResourceBlacklist: - group: '' kind: ResourceQuota 4 i P 4 mCTA R G p P tl m 44 g h s BG T D 44 4 5 O e r j apiVersion: v1 kind: ConfigMap metadata: name: argocd-cm namespace: argocd labels: app.kubernetes.io/name: argocd-cm data: dex.config: | connectors: - type: oidc id: google name: Google config: {} helm.repositories: | - url: https://kubernetes- charts.storage.googleapis.com name: sealed-secrets