$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2019-04-25 CI/CD環境のデザインパターン/20190425-cicd-env-d...
Search
opelab
April 25, 2019
Technology
3
800
2019-04-25 CI/CD環境のデザインパターン/20190425-cicd-env-design-pattern
JAWS-UGアーキテクチャ専門支部での議論資料です。
(運用設計ラボ合同会社 波田野裕一)
opelab
April 25, 2019
Tweet
Share
More Decks by opelab
See All by opelab
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全 / 20250625-aws-summit-aws-policy
opelab
15
2.6k
スモールスタート、不都合な真実 〜 耳当たりの良い言葉に現場が振り回されないために/20240930-ssmjp-small-start
opelab
14
2.5k
20分で分かるIAM全機能 (拡大版) / 20240903-jawsug-yokohama-iam
opelab
3
450
AWS IAM Identity Center議論会 〜 認証認可結合モデルと認証認可分離モデル / 20240827-jawsug-arch-iam_identity_center
opelab
5
700
運用エンジニアのための AWSドキュメントの歩き方・まとめ方 / 20240822-jawsug-tokyo-aws-documents
opelab
7
2.6k
AWS CloudShell全機能 〜 CLI活用のススメ / 20240821-nri-aws-cloudshell
opelab
3
830
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
11
6.2k
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
33
19k
20分で分かるIAM全機能 /20240621-aws-summit-iam
opelab
43
16k
Other Decks in Technology
See All in Technology
Python 3.14 Overview
lycorptech_jp
PRO
1
120
re:Invent 2025 ふりかえり 生成AI版
takaakikakei
1
210
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1.4k
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
360
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
390
因果AIへの招待
sshimizu2006
0
980
JEDAI認定プログラム JEDAI Order 2026 エントリーのご案内 / JEDAI Order 2026 Entry
databricksjapan
0
130
regrowth_tokyo_2025_securityagent
hiashisan
0
250
AIプラットフォームにおけるMLflowの利用について
lycorptech_jp
PRO
1
170
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
150
re:Invent2025 コンテナ系アップデート振り返り(+CloudWatchログのアップデート紹介)
masukawa
0
380
OCI Oracle Database Services新機能アップデート(2025/09-2025/11)
oracle4engineer
PRO
1
210
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Optimizing for Happiness
mojombo
379
70k
Site-Speed That Sticks
csswizardry
13
1k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Docker and Python
trallard
47
3.7k
For a Future-Friendly Web
brad_frost
180
10k
Building Flexible Design Systems
yeseniaperezcruz
330
39k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Transcript
Operation Lab ӡ༻ઃܭϥϘ ӡ༻ઃܭϥϘ߹ಉձࣾ $*$%ڥͷσβΠϯύλʔϯ 1 Architecture 8BOUFE0VSPSJHJOBMMPHP JAWS-UG
ARCH ΞʔΩςΫνϟઐࢧ෦ γχΞΞʔΩςΫτా༟Ұ
ࡢࠓͷΤϯδχΞք۾ Operation Lab ӡ༻ઃܭϥϘ 2 $*$%ͬͯ͏ͨΓલͩΑͶ ύΠϓϥΠϯݟͯΔ͚ͩͰ൧Ϛʂ ͝൧ഋΠέΔʂ ͱ͍͏͕ͦ͜Β͡Ύ͏͔Βฉ͑͜Δͷय़Ͱ͕͢ɺ
ͱݴ͏ͷͷ Operation Lab ӡ༻ઃܭϥϘ 3 ʮ$*$%ͬͨํ͕͍͍ͷΘ͔Δ͚ͲɺͲ͜ ͔ΒखΛ͚͍͍ͯͷ͔Θ͔ΒΜʯ ʮ$*$%ɺͳʹͦΕඒຯ͍͠ͷʁʯ ʮϫλγɺ$*$%θϯθϯϫΧϥφʔΠʼʻʯ ͱ͍͏ͪΒ΄Βฉ͖͑ͯ͜·͢ɻ
Operation Lab ӡ༻ઃܭϥϘ "84$*$%ؔ࿈αʔϏεͷશମ૾ 4
Operation Lab ӡ༻ઃܭϥϘ "84$*$%ؔ࿈αʔϏεͷશମ૾ 5 CodePipeline CodeCommit ιʔείʔυ CodeBuild Ϗϧυςετ
CodeDeploy σϓϩΠ CodeStar ͜ΕΒΛΈ߹Θͤͯ$*$%ύΠϓϥΠϯΛΉ
Operation Lab ӡ༻ઃܭϥϘ "84$*$%ؔ࿈αʔϏεͷਖ਼͍͍͠ํ 6 ͜ΕΒΛΈ߹Θͤͯ$*$%ύΠϓϥΠϯΛΉ πʔϧʹࣗୡΛ߹ΘͤΔͷͰͳ͘ ࣗୡͷύΠϓϥΠϯʹπʔϧΛΈࠐΉ ΜͰ͢Α 4"େଜ͞Μ
ࣗୡͷ$*$%ύΠϓϥΠϯʹπʔϧΛΈࠐΉ
Operation Lab ӡ༻ઃܭϥϘ "84$*$%ؔ࿈αʔϏεͷਖ਼͍͠શମ૾ 7 CodePipeline CodeCommit ιʔείʔυ CodeBuild Ϗϧυςετ
CodeDeploy σϓϩΠ ࣗୡͷ$*$%ύΠϓϥΠϯʹπʔϧΛΈࠐΉ త खஈ ࣗͨͪͷύΠϓϥΠϯ
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓΛ࡞Ζ͏ 8 ࣗୡͷύΠϓϥΠϯΛ ͪΌΜͱཧతʹઆ໌Ͱ͖Δਓ গͳ͍ΜͰ͢Α 4"େଜ͞Μ ࣗୡͷ$*$%ύΠϓϥΠϯʹπʔϧΛΈࠐΉ
ࣗୡͷ$*$%ύΠϓϥΠϯ૾Λ٬؍ԽɾߏԽ͢Δ ͦͷલʹ
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓΛ࡞Ζ͏ 9 ιʔείʔυ ࣗୡͷ$*$%ύΠϓϥΠϯʹπʔϧΛΈࠐΉ ࣗͨͪͷύΠϓϥΠϯͷߦઌϢʔβ σϓϩΠઌ Ռ
Ϧιʔε Ϧιʔε Ϧιʔε Ϧιʔε Ռ ఏڙऀ Ϣʔβ Ϗϧυςετ σϓϩΠ Ռ Ռ
Operation Lab ӡ༻ઃܭϥϘ "84$*$%ؔ࿈αʔϏεͷհ 10
Operation Lab ӡ༻ઃܭϥϘ "84$*$%ؔ࿈αʔϏεͷશମ૾ 11 CodePipeline CodeCommit ιʔείʔυ CodeBuild Ϗϧυςετ
CodeDeploy σϓϩΠ CodeStar
Operation Lab ӡ༻ઃܭϥϘ $PEF$PNNJU 12
Operation Lab ӡ༻ઃܭϥϘ $PEF$PNNJUͷ֓ཁ 13 CodeCommit ιʔείʔυ • (JU)VC૬ͷαʔϏε •
*".ϢʔβຖʹΞΫηε੍ޚͰ͖Δɻ • JTTVFཧແ͍ɻ "84ͷ$*$%ܥαʔϏεͰҰ൪͓खܰ
Operation Lab ӡ༻ઃܭϥϘ $PEF$PNNJUͷڝ߹αʔϏε 14 CodeCommit ιʔείʔυ • 4 •
(JU)VC • #JUCVDLFU • (JU)VC&OUFSQSJTF
Operation Lab ӡ༻ઃܭϥϘ $PEF#VJME 15
Operation Lab ӡ༻ઃܭϥϘ $PEF#VJMEͷ֓ཁ 16 CodeBuild ιʔείʔυ Ϗϧυςετ ΞʔςΟϑΝΫτ Ռ
• ιʔείʔυʹಉࠝ͞ΕͨCVJMETQFDZNMʹैͬͯ ϏϧυςετΛ࣮ߦ͢Δɻ • Ϗϧυͨ͠Ռ ΞʔςΟϑΝΫτ ͕ग़ྗ͞ΕΔɻ ׂͱԿͰͰ͖Δɻ ൿͷλϨԽ
Operation Lab ӡ༻ઃܭϥϘ $PEF#VJMEͱ࿈ܞͰ͖ΔαʔϏε 17 CodeBuild ςετϏϧυ ΞʔςΟϑΝΫτ Ռ ιʔείʔυ
• $PEF1JQFMJOF • 4 • $PEF$PNNJU • (JU)VC • #JU#VDLFU • (JU)VC&OUFSQSJTF • /0@4063$& • $PEF1JQFMJOF • 4 • /0@4063$& • CVJMETQFDZNMʹهड़ͨ͠ॴ • ྫ &$3 https://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/create-project.html ࣌
Operation Lab ӡ༻ઃܭϥϘ $PEF%FQMPZ 18
Operation Lab ӡ༻ઃܭϥϘ $PEF%FQMPZͷ֓ཁ 19 CodeDeploy σϓϩΠ • ιʔείʔυʹಉࠝ͞ΕͨBQQTQFDZNMʹैͬͯσϓϩΠ͢Δɻ •
4FSWFSEFQMPZΤʔδΣϯτͷೖ͍ͬͯΔ&$ΦϯϓϨʹσϓϩΠɻ • -BNCEBͱ&$4ͷσϓϩΠʹରԠɻ • #MVF(SFFOσϓϩΠʹରԠ ΦϯϓϨΛআ͘ ΞʔςΟϑΝΫτ Ռ • Server • Lambda • ECS ͦΕͧΕΞϓϦέʔγϣϯλΠϓ͕ҟͳΔͷͰɺޙ͔ΒมߋͰ͖ͳ͍ɻ
Operation Lab ӡ༻ઃܭϥϘ $PEF%FQMPZͱ࿈ܞͰ͖ΔαʔϏε 20 CodeDeploy σϓϩΠ ΞʔςΟϑΝΫτ Ռ •
Server • Lambda • ECS • 4 • 4FSWFS &$ • 4FSWFS ΦϯϓϨ • -BNCEB • &$4 https://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/applications-create.html ࣌ ΦϯϓϨҎ֎#MVF(SFFOՄೳ
Operation Lab ӡ༻ઃܭϥϘ $PEF1JQFMJOF 21
Operation Lab ӡ༻ઃܭϥϘ $PEF1JQFMJOFͷ֓ཁ 22 CodePipeline • $*$%αʔϏεΛͭͳׂ͙ɻ • جຊతʹ+40/ͰߏΛॻ͘ɻ
• ϚϧνιʔεʹରԠ ݄ • $MPVE8BUDI&WFOUTʹରԠ ݄
Operation Lab ӡ༻ઃܭϥϘ • खಈ • S3 • CodeDeploy •
ECS • CloudFormation • ElasticBeanstalk • OpsWorks • ServiceCatalog • Alexa skiils kit • ֤छSaaS $PEF1JQFMJOFͱ࿈ܞͰ͖ΔαʔϏε 23 • CodeCommit • S3 • ECR • GitHub IUUQTEPDTBXTBNB[PODPNKB@KQDPEFQJQFMJOFMBUFTUVTFSHVJEFJOUFHSBUJPOTBDUJPOUZQFIUNMJOUFHSBUJPOTUFTU • CodeBuild • DeviceFirm • Jenkins • ֤छSaaS • CodeBuild • Jenkins • ֤छSaaS ঝೝ ιʔε Ϗϧυ ςετ ࣮ߦ CodePipeline σϓϩΠ • Lambda ࣌
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓ 24
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓ 25 ιʔείʔυ ࣗୡͷ$*$%ύΠϓϥΠϯʹπʔϧΛΈࠐΉ ࣗͨͪͷύΠϓϥΠϯͷߦઌϢʔβ σϓϩΠઌ Ռ
Ϧιʔε Ϧιʔε Ϧιʔε Ϧιʔε Ռ ఏڙऀ Ϣʔβ Ϗϧυςετ σϓϩΠ Ռ Ռ
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓͰେࣄͳࣄ 26 ιʔείʔυ Ϗϧυςετ σϓϩΠ ࣗͨͪͷύΠϓϥΠϯͷߦઌϢʔβ σϓϩΠઌ
Ռ Ռ Ռ Ռ ఏڙऀ Ϣʔβ ΞʔςΟϑΝΫτ ;JQ தؒՌ • $PEF$PNNJU • 4 • &$3 • (JU)VC • #JU#VDLFU • (JU)VC&OUFSQSJTF • /0@4063$& • $PEF%FQMPZ • TDQͳͲ • $BQJTUSBOPͳͲ • 4 • &$ • ΦϯϓϨ • &$4 #MVF(SFFO • 'BSHBUF • -BNCEB • &MBTUJD#FBOTUBML • 0QT8PSLT • $MPVE'PSNBUJPO • 4FSWJDF$BUBMPH • "MFYBTLJJMTLJU • $PEF#VJME • +FOLJOT • ֤छ4BB4 πʔϧԿͰྑ͍͠ɺ࣌ͰมΘΔ
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓͷ 27
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓͷ 28 ιʔείʔυ ςετ σϓϩΠ σϓϩΠઌ •
ιʔείʔυཧ • ϦϦʔεઌڥ • EFWTUH • ϦϦʔεํ๏ • ΠϯϓϨʔε • #MVF(SFFO Ϗϧυ • ঝೝͷ༗ແ • ΞʔςΟϑΝ Ϋτͷܗࣜ • ;*1 • ίϯςφΠ ϝʔδ • ".* • ܗଶ • ϓϧ • ϓογϡ • ՝ཧ • ΞΫηε੍ޚ • ϦϦʔεઌEFWTUH • ϒϥϯν • $* • ϦϦʔεઌQSE • Ϛελϒϥϯ ν • $% • &$ɻΦϯϓϨ • 4ɻ&$4 • 'BSHBUFɻ-BNCEB • $MPVE'PSNBUJPO • ϦϦʔεઌڥ • QSE
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓͷ େاۀ 29 ιʔείʔυ ςετ σϓϩΠ σϓϩΠઌ
• ιʔείʔυཧ • ϦϦʔεઌڥ • EFWTUH • ϦϦʔεํ๏ • ΠϯϓϨʔε • #MVF(SFFO Ϗϧυ • ঝೝͷ༗ແ • ΞʔςΟϑΝ Ϋτͷܗࣜ • ;*1 • ίϯςφΠ ϝʔδ • ".* • ܗଶ • ϓϧ • ϓογϡ • ՝ཧ • ΞΫηε੍ޚ • ϦϦʔεઌEFWTUH • ϒϥϯν • $* • ϦϦʔεઌQSE • Ϛελϒϥϯ ν • $% • &$ɻΦϯϓϨ • 4ɻ&$4 • 'BSHBUFɻ-BNCEB • $MPVE'PSNBUJPO • ϦϦʔεઌڥ • QSE ӡ༻ ։ൃ
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓ͔Βݟ͑ͯ͘Δܗ 30 ೖฤ
Operation Lab ӡ༻ઃܭϥϘ $PEF$PNNJU $PEF1JQFMJOF 4 31 ιʔείʔυ ςετϏϧυ σϓϩΠ
σϓϩΠઌ Ռ Ռ ఏڙऀ Ϣʔβ ΞʔςΟϑΝΫτ ;JQ தؒՌ 4 4 Tutorial: Create a Pipeline That Uses Amazon S3 as a Deployment Provider IUUQTEPDTBXTBNB[PODPNKB@KQDPEFQJQFMJOFMBUFTUVTFSHVJEFUVUPSJBMTTEFQMPZIUNM ୯७ͳ্ॻ͖ͳͷͰɺҠಈআʹਵͰ͖ͳ͍ɻ WebSite Hosting 4 CodePipeline
Operation Lab ӡ༻ઃܭϥϘ $PEF$PNNJU $PEF1JQFMJOF 4 32 ιʔείʔυ ςετ σϓϩΠ
σϓϩΠઌ • ϦϦʔεઌڥ • EFWTUHQSE • ϦϦʔεํ๏ • ΠϯϓϨʔε • #MVF(SFFO Ϗϧυ • Ϧιʔεཧ • ࣗલ • Ϛωʔδυ • Ϛωʔδυ த • ঝೝͷ༗ແ • ΞʔςΟϑΝ Ϋτͷܗࣜ • ;*1 • ίϯςφΠ ϝʔδ • ".* • ܗଶ • ϓϧ • ϓογϡ • ιʔείʔυཧ • ՝ཧ • ΞΫηε੍ޚ 4 4 4 CodePipeline Ռ Ռ தؒՌ
Operation Lab ӡ༻ઃܭϥϘ $*$%ͷσβΠϯϚοϓ͔Βݟ͑ͯ͘Δܗ 33 ॳڃฤ
Operation Lab ӡ༻ઃܭϥϘ Πϯελϯεܕͷ$*$% $PEF%FQMPZ 34 ιʔείʔυཧ • ϦϦʔεઌڥ •
EFWTUH • ϦϦʔεํ๏ • ΠϯϓϨʔε • #MVF(SFFO • εςʔτϑϧ 4PSSZϝϯςܕ • ঝೝͷ༗ແ • ΞʔςΟϑΝ Ϋτͷܗࣜ • ;*1 • ίϯςφΠ ϝʔδ • ".* • ܗଶ • ϓϧ • ϓογϡ • ՝ཧ • ΞΫηε੍ޚ • ϦϦʔεઌEFWTUH • ϒϥϯν • $* • ϦϦʔεઌQSE • Ϛελϒϥϯ ν • $% • &$ɻΦϯϓϨ • 4ɻ&$4 • 'BSHBUFɻ-BNCEB • $MPVE'PSNBUJPO • ϦϦʔεઌڥ • QSE
ࠓޙͷٞωλ Ұ෦ • ίϯύΠϧͱඇίϯύΠϧͰҧ͍͕͋Γͦ͏ • $44ϑϩϯτίϯύΠϧ͢ΔΑͶ • ".*Λར༻ͨ͠σϓϩΠͲ͏Δ Operation
Lab ӡ༻ઃܭϥϘ 35
Operation Lab ӡ༻ઃܭϥϘ 36 IUUQXXXPQFSBUJPOMBCDPKQ OperationLab ӡ༻ઃܭ