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
日本のママをコンテナで支える
Search
tatsushim
January 25, 2018
Technology
1
3.1k
日本のママをコンテナで支える
X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く未来~ の登壇資料
https://xtechjaws.doorkeeper.jp/events/67869
tatsushim
January 25, 2018
Tweet
Share
More Decks by tatsushim
See All by tatsushim
DockerとAmazon SageMakerで実現した機械学習システムのプロダクション移行
tatsushim
0
27k
コミュニティサービスにおける機械学習のためのアノテーション
tatsushim
0
2.1k
コネヒトが考える技術選択の仕方について
tatsushim
0
22k
コネヒトが考えるサービスづくりに必要な技術とその考え方について
tatsushim
2
3.1k
word2vecで女性向けQ&Aサイトを解析してみた
tatsushim
0
6.3k
独身男性のためのデータドリブン講座
tatsushim
0
6.8k
Other Decks in Technology
See All in Technology
Contract One Dev Group 紹介資料
sansan33
PRO
0
6k
大規模PaaSにおける監視基盤の構築と効率化の道のり
lycorptech_jp
PRO
0
180
ゴリラ.vim #36 ~ Vim x SNS ~ スポンサーセッション
yasunori0418
1
360
“⾞が通れるほど⼤きな”セキュリティーホールを抑えながらログインしたい
taiseiue
0
160
いまさら聞けない Git 超入門 〜Gitって結局なに?から始める第一歩〜
devops_vtj
0
170
人とAIとの共創を夢見た2か月 #共創AIミートアップ / Co-Creation with Keito-chan
kondoyuko
1
720
Flutterアプリを⾃然⾔語で操作する
yukisakai1225
0
140
Houtou.pm #1
papix
0
670
データ戦略部門 紹介資料
sansan33
PRO
1
3.1k
金融システムをモダナイズするためのAmazon Elastic Kubernetes Service(EKS)ノウハウ大全
daitak
0
130
Javaアプリケーションの配布とパッケージング / Distribution and packaging of Java applications
hogelog
1
330
カンファレンスのつくりかた / The Conference Code: What Makes It All Work
tomzoh
8
940
Featured
See All Featured
Scaling GitHub
holman
459
140k
Become a Pro
speakerdeck
PRO
28
5.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Site-Speed That Sticks
csswizardry
7
590
Writing Fast Ruby
sferik
628
61k
Building Applications with DynamoDB
mza
95
6.4k
RailsConf 2023
tenderlove
30
1.1k
GitHub's CSS Performance
jonrohan
1031
460k
Building Adaptive Systems
keathley
41
2.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Transcript
$POOFIJUP*OD$50!UBUTVTIJN ϚϚͷҰาΛࢧ͑Δ ຊͷϚϚΛίϯςφͰࢧ͑Δ
ࣗݾհ
w ίωώτגࣜձࣾ w ڞಉۀऀऔక$50 w ઐػցֶश w 4BOTBOגࣜձࣾʹ໊ͯΞϓϦ ʮ&JHIUʯͷ্ཱͪ͛
w ,%%*άϧʔϓʹ.ˍ"͞ΕάϧʔϓೖΓ ౡాୡ࿕ !UBUTVTIJN
None
ਓͷੜ׆ʹͳͯ͘ͳΒͳ͍ͷΛͭ͘Δ
ΠϯελάϥϜͰϚϚΑΓϚϚϦͷํ͕λά͚͕ଟ͍
ϚϚϦͷΛͰࢧ͖͑ͯ·ͨ͠
Amazon S3 ElastiCache CloudFront Amazon SES Amazon RDS Amazon CloudWatch
Amazon SNS Amazon Route 53 ECS ALB GitHub Docker Docker Build Notification push ECS Scheduled Task ACM WAF Services(API, Admin, Etc…) ECR TravisCI Slack Sentry pingdom papertrail BigQuery fluentd
ίϯςφʹḷΓ͍ͭͨಓͷΓͱ ࠓίϯςφͰͲͷΑ͏ʹຊͷϚϚΛ ࢧ͍͑ͯΔ͔ʹ͍͓ͭͯ͠·͢
w ϚϚϦͷΠϯϑϥͷྺ࢙ w &$ظ w ࣗલ"VUP4DBMJOHظ w &#ظ w &$4ظ
w ίϯςφಋೖͷಓͷΓ w ͷཧͱղܾͷͨΊͷπʔϧબఆ w ಋೖϑΣʔζ w &$4Խͯ͠ྑ͔ͬͨ͜ͱ w ͜Ε͔Β w 'BSHFUFͷظ w ΠϯϑϥΤϯδχΞͷࣄΛͳ͘͢
ϚϚϦͷΠϯϑϥͷྺ࢙
&$ظ ˠͷαʔϏε্ཱͪ͛
EC2 instance web app server
EC2 instance web app server ·͔͞ͷ&$ʘ ?P? ʗ
• ࠷খߏ • MySQLApacheશ෦ೖΓ • ͪΖΜσϓϩΠπʔϧͳΜ͔ͳ͍ͷͰ ʮσϓϩΠ͠·͢ʂ(ʆŋωŋ´)ʎʯ sshͰαʔόʔʹೖͬͯΛֻ͚߹͍ git
pull origin master ࠷ॳEC2 1ͷߏ͔Βελʔτ
EC2 instance web app server ϚϚϦ(WebϝσΟΞ)ͷΠϯϑϥ
EC2 instance web app server ϚϚϦ(ΞϓϦ)ͷΠϯϑϥ
࣌ͷϚϚϦͷΠϯϑϥʢ·ͱΊʣ EC2 instance web app server EC2 instance web
app server
• 2िؒͰΞϓϦΛͭͬͯ͘ϦϦʔε • ͱʹ͔͘εϐʔυʂ • ͦΕͧΕMySQLApacheશ෦ೖΓ • ͪΖΜσϓϩΠπʔϧͳΜ͔ͳ͍ͷͰ(ry •
खಈʹΑΔஆ͔Έͷ͋ΔσϓϩΠϑϩʔ ֤αʔϏε1ͣͭ
• ͜ͷͱ͖·ͩαʔϏεͷԾઆݕূத • ͦͦαʔϏε͕৳ͼͳ͍ͱ ҆ఆͨ͠Πϯϑϥඞཁͳ͍ • (*ᵕᴗᵕ).ŇoO ( Ͱࠓ͕ࣝ͋Δঢ়ଶͰͭ͘Δ
ͳΒ࠷ॳ͔ΒALBೖΕͨߏͰΓ·͢ʣ αʔϏεͷػೳՃ͕༏ઌʂʂ
• ςϨϏऔࡐʢͱ͘μωʂʣ๒ʹεέʔϧ ͰରԠ • ඵ͘Β͍ͷ࿐ग़ͰҰॠͰઍμϯϩʔυ ͞Εͯয͕ͬͨɺແࣄࡹ͚ͨ • ֶੜىۀͰ͓ۚͳ͔ͬͨͷͰैྔ՝ۚͰ ॿ͔ͬͨ
AWSͷԸܙΛॳظ͔Βड͚͍ͯͨ
• ͓͍͖ͬΓ୯Ұো • ͍ͬͯ͏͔ʮʯ • DBͷӡ༻େม • όοΫΞοϓεΫϦϓτࣗલͰߏங •
εέʔϧΞοϓ࣌ʹαʔϏεΛࢭΊΔ ඞཁ͕͋Δɺͦͷଞͨ͘͞Μʘ(^o^)ʗ EC2 1ߏͷͭΒΈ
ࣗલ"VUP4DBMJOHظ
EC2 instance web app server EC2 instance web app server
EC2ظ
EC2 instance web app server EC2 instance web app server
Amazon RDS Availability Zone #1 RDSಋೖ
Elastic Load Balancing Amazon RDS Amazon EC2 Amazon EC2 Availability
Zone #1 Amazon EC2 Amazon EC2 Availability Zone #1 Elastic Load Balancing Amazon EC2 Amazon EC2 Availability Zone #1 Amazon EC2 Amazon EC2 Availability Zone #1 Amazon S3 ElastiCache CloudFront Amazon SES ࣗલAutoScalingߏங
Elastic Load Balancing Amazon EC2 Elastic Load Balancing Amazon EC2
Amazon S3 ElastiCache CloudFront Amazon SES Amazon RDS Amazon CloudWatch Amazon SNS Amazon Route 53 GitHub Sentry BigQuery fluentd fluentd pingdom papertrail ֤छϚωʔδυαʔϏεΛಋೖ
• ͜ͷλΠϛϯάͰEC2ʹ͋ͬͨDBΛRDS Ҡߦ • ֤छϚωʔδυαʔϏεಋೖ • Ճ͑ͯAutoScalingΛߏஙͨ͜͠ͱͰ αʔϏεͷ֦େʹ͑ΕΔΑ͏ʹͳͬͨ ࣗલͰAutoScalingΛߏங
• AMIͱLaunch Configurationͷཧ͕͠ΜͲ͍ • AMIʹؔͯ͠ChefͷProvisioning ToolΛͬͯ ɺ݁ہͦΕͷཧ͕େมͰॻ͍ͯଐਓԽ͢Δ • ݁Ռͱͯ͠ΠϯϑϥΤϯδχΞ͕
ϛυϧΣΞߋ৽ͷϘτϧωοΫʹͳΔ • ಉ͡ίϚϯυ(yumͳͲ)ͰೖΔιϑτͷόʔδϣϯ ͕มΘͬͯͨΓɺͰ͖ͳ͘ͳͬͯͨΓ ࣗલAutoScalingͷͭΒΈ
&#ظ &MBTUJD#FBOTUBML
Elastic Load Balancing Amazon EC2 Amazon S3 ElastiCache CloudFront Amazon
SES Amazon RDS Amazon CloudWatch Amazon SNS Amazon Route 53 GitHub Sentry BigQuery fluentd fluentd pingdom papertrail Elastic Beanstalk
Elastic Load Balancing Amazon EC2 Amazon S3 ElastiCache CloudFront Amazon
SES Amazon RDS Amazon CloudWatch Amazon SNS Amazon Route 53 GitHub Sentry BigQuery fluentd fluentd pingdom papertrail Elastic Beanstalk /FX
• AMIͱAutoScale Configͷཧ͔Β։์ • ebίϚϯυʹΑͬͯdeploy toolͳͲ͕Ұ௨Γ ἧ͍ͬͯΔ • 1ߏங͢ΕΞϓϦέʔγϣϯʹඞཁͳཁ
ૉΛαΫͬͱͭͬͯ͘͘ΕΔ͠ɺͦͷηοτ ΛؙͬͱίϐʔͰ͖Δ Elastic BeanstalkҠߦ
• EBͷ͕ࣝඞཁ • EBಠಛͷ֓೦ • ApplicationͱEnvironmentͷؔ • deploy࣌ͷڍಈ •
.ebextensionsͷॻ͖ํ Elastic BeanstalkͷͭΒΈ
• ϩʔΧϧڥͰͷEBڥ࠶ݱ͕͍͠ • ্ཱ͕ͪΔΠϯελϯεEB༻ʹΧελϚ Πζ͞ΕͨAmazon Linux • ैͬͯ͜ΕΒΛݕূ͢ΔͨΊʹຖdeploy͠ ͳ͍ͱ͍͚ͳ͍
• ݁Ռɺݕূ͕ΧδϡΞϧʹͰ͖ͳ͍ͷͰ݁ہ EBʹ͍ͭͯଐਓԽ͕ͪ͠ Elastic BeanstalkͷͭΒΈ
• ϛυϧΣΞͷར༻͕ຯʹ੍ݶ͞ΕΔ • ࣌php7.1͍͔͕ͨͬͨ7.0·Ͱ͠ ͔ఏڙ͞Ε͍ͯͳ͔ͬͨ • PHP × nginxͳ͍
• ʢ´-`ʣ.ŇoOʢϚωʔδυαʔϏεͳͷͰ ͠ΐ͏͕ͳ͍෦Ͱ͋Δʣ Elastic BeanstalkͷͭΒΈ
Elastic BeanstalkͷPHPαϙʔτ SFGIUUQTEPDTBXTBNB[PODPNKB@KQFMBTUJDCFBOTUBMLMBUFTUEHDPODFQUTQMBUGPSNTIUNMDPODFQUTQMBUGPSNT1)1
࡞͞ΕΔϦιʔε܈ͷ໊લ͕ͻͲ͍ͷͰϚ ωδϝϯτίϯιʔϧ͕ԚΕΔ Elastic BeanstalkͷͭΒΈ
&$4ظ
• ͭͬͨ͘VM͕ಥવյΕΔ • VM࡞Γ͕͠ॏ͍ • ෳαʔϏε্ཱͪ͛ΔͱCPUΛѹഭͯ͠ ϩʔΧϧ։ൃڥ͕ॏ͍ • ຊ൪ͱඍົʹڥࠩҟ͕ൃੜ
ϩʔΧϧ։ൃڥ(Vagrant)ͷͭΒΈ
• ίϯςφͳΒڥͷͭ͘Γ͠ϥΫ • ෳαʔϏε্ཱͪ͛ͯVMͱൺͯCPU Λѹഭ͠ͳ͍ • ϩʔΧϧͷڥΛͦͷ··ຊ൪ʹ͍͚࣋ͬͯ ΔͷͰڥࠩҟ͕ͳ͍ DockerͷಋೖͰͭΒΈΛղফ
Amazon S3 ElastiCache CloudFront Amazon SES Amazon RDS Amazon CloudWatch
Amazon SNS Amazon Route 53 ECS ALB GitHub Docker Docker Build Notification push ECS Scheduled Task ACM WAF Services(API, Admin, Etc…) ECR TravisCI Slack Sentry pingdom papertrail BigQuery fluentd
՝ͨ͘͞Μ͋Γ·ͨ͠
ίϯςφಋೖͷಓͷΓ
ͷཧͱ ղܾͷͨΊͷπʔϧબఆ
• ͭͬͨ͘VM͕ಥવյΕΔ • VM࡞Γ͕͠ॏ͍ • ෳαʔϏε্ཱͪ͛ΔͱCPUΛѹഭͯ͠ ϩʔΧϧ։ൃڥ͕ॏ͍ • ຊ൪ͱඍົʹڥࠩҟ͕ൃੜ
ϩʔΧϧ։ൃڥͷͭΒΈ(࠶ܝ)
• Πϯϑϥͷಠ͕ࣗࣝಛఆͷϝϯόʔʹภΔ • ϛυϧΣΞͷΠϯετʔϧͳͲͰΠϯϑϥ ΤϯδχΞ͕࡞ۀϑϩʔ্ͷϘτϧωοΫʹ ͳΔ • ϚωʔδυαʔϏεͷ੍ݶʹΑΓར༻͍ͨ͠ ϛυϧΣΞɾπʔϧ͕͑ͳ͍͜ͱ͕͋
Δ ͜Ε·ͰͷΠϯϑϥͷ՝
• Πϯϑϥͷಠ͕ࣗࣝಛఆͷϝϯόʔʹภΔ • ϛυϧΣΞͷΠϯετʔϧͳͲͰΠϯϑϥ ΤϯδχΞ͕࡞ۀϑϩʔ্ͷϘτϧωοΫʹ ͳΔ • ϚωʔδυαʔϏεͷ੍ݶʹΑΓར༻͍ͨ͠ ϛυϧΣΞɾπʔϧ͕͑ͳ͍͜ͱ͕͋
Δ ͜Ε·ͰͷΠϯϑϥͷ՝ ͜ΕΒΛ౿·͑ͯ ཧͷΧλνΛߟ͑Δ
• ઃఆϑΝΠϧ͕gitཧ͞Ε͓ͯΓϒϥοΫ ϘοΫε͕ͳ͍ • ϛυϧΣΞ,OS,ϓϥάΠϯͷόʔδϣϯ ઃఆϑΝΠϧͰཧ • ͦΕΒΛΞϓϦέʔγϣϯΤϯδχΞ͕ਖ਼͠ ͘ཧղͰ͖͍ͯΔ
ཧͷΧλνᶃ
• ։ൃऀίϚϯυҰͭ͘Β͍ͷϨϕϧͰɺͬ͞ ͱϩʔΧϧڥΛ্ཱͪ͛Δࣄ͕ग़དྷΔ • ୭Ͱಉ͡ڥཱ͕ͯΒΕΔ • ։ൃऀ/σβΠφʔؔͳ͘ • ຊ൪ಉ͡ઃఆϑΝΠϧ͔Β࡞ΒΕͨΠϝʔ
δ͕σϓϩΠ͞Εɺ։ൃڥͱຊ൪ڥʹશ ࠩ͘ҟͷͳ͍ঢ়ଶ ཧͷΧλνᶄ
DockerʹനӋͷཱ͕ͬͨ
DockerʹനӋͷཱ͕ͬͨ அ࣠ӡ༻ؚΊͯ νʔϜͰҭͯΒΕΔ͔Λݕূ
ಋೖϑΣʔζ
ʮ৽͍͠πʔϧΛೖΕΔ࣌খ࢝͘͞ΊΔʯ ಋೖํ
• खݩͰಈ͘ڥΛ࡞Δ • ಛఆͷϝϯό(1,2໊)ʹςεττϥΠͯ͠ Β͏ • ͍͖ͳΓશମల։͢Δͱ։ൃ͕ࢭ·ͬͯ͠·͏ • χʔζΛͯ͢ચ͍ग़͢
• VMॏ͍ɺյΕΔɺڥࠩҟ…(ůŐ`)řŕ ᶃ۩ମతͳχʔζΛચ͍ग़͢
• ͷಛఆޙɺͦͷղܾࡦΛݕ౼ • 1ͭ1۪ͭʹ௵ͯ͠ɺղܾํ๏Λݕূ͍ͯ͠ ͘ • Ex. Docker for
Mac ͱ VM on Dockerͷݕূ • Dockerؔ࿈ͷ͕ग़͙ͨ࣌͢ʹΩϟον Ξοϓͯ͠௵͍ͯ͘͠ ᶄղܾํ๏Λݕূ
• શମద༻ͷલʹϋϯζΦϯͷ࣌ؒΛͭ͘Δ • جຊૢ࡞ͷυΩϡϝϯτFAQ༻ҙ • Ҿ͖ଓ͖ɺDockerؔ࿈ͷ͕ग़ͨ࣌͢ ͙ʹΩϟονΞοϓͯ͠௵͍ͯ͘͠ ᶅϝϯόʔʹڞ༗
• Pull RequestΛΞϓϦέʔγϣϯΤϯδχΞ ʹૹΔ • ใΛΠϯϑϥΤϯδχΞͷதͰด͡ͳ͍Α ͏ʹ͢Δ • ٯʹPull
RequestΛૹͬͯΒ͏ͷΛखॿ͚ ͢Δ ᶆਁಁͤ͞Δ
• DockerfileΠϯϑϥͷ࣋ͪͰͳ͘ɺΈΜ ͳͰҭ͍͖͍ͯͯͨͱ͍͏ؾ͕࣋ͪ։ൃऀʹ Θͬͨ • ࣗͰ৽αʔϏεDockerͰ࡞Γ࢝ΊΔϝϯ ό͕ग़͖ͯͨ • ϛε͕͋ͬͨࡍʹɺ͙͢ʹDockerfileͷमਖ਼
Λࢦఠͯ͘͠Εͨ ݁Ռ
×
Amazon S3 ElastiCache CloudFront Amazon SES Amazon RDS Amazon CloudWatch
Amazon SNS Amazon Route 53 ECS ALB GitHub Docker Docker Build Notification push ECS Scheduled Task ACM WAF Services(API, Admin, Etc…) ECR TravisCI Slack Sentry pingdom papertrail BigQuery fluentd
Amazon S3 ElastiCache CloudFront Amazon SES Amazon RDS Amazon CloudWatch
Amazon SNS Amazon Route 53 ECS ALB GitHub Docker Docker Build Notification push ECS Scheduled Task ACM WAF Services(API, Admin, Etc…) ECR TravisCI Slack Sentry pingdom papertrail BigQuery fluentd νʔϜͰίϯςφΛ ҭͯͨ݁Ռ
ECSԽͯ͠ྑ͔ͬͨ͜ͱ
• ίϯςφͳΒڥͷͭ͘Γ͠ϥΫ • ෳαʔϏε্ཱͪ͛ͯVMͱൺͯCPU Λѹഭ͠ͳ͍ • ϩʔΧϧͷڥΛͦͷ··ຊ൪ʹ͍͚࣋ͬͯ ΔͷͰڥࠩҟ͕ͳ͍ DockerͷಋೖͰͭΒΈΛղফ(࠶ܝ)
• ΠϯϑϥࣝͷϒϥοΫϘοΫεԽղফ • ϛυϧΣΞͷΠϯετʔϧΞϓϦέʔγϣ ϯΤϯδχΞ͕ࣗ༝ʹͰ͖ΔΑ͏ʹͳͬͨ • ϚωʔδυαʔϏεͷ੍ݶʹΑΓར༻Ͱ͖ͳ ͍ϛυϧΣΞɾπʔϧ͕ͳ͘ͳͬͨ ϘτϧωοΫͷղফ
• EC2ͷϝϯςφϯε͔Βͷ։์ • Ex. ઌͷCPU੬ऑੑʹΑΔڧ੍restart • Jobͷ࣮ߦ͝ͱʹίϯςφ্ཱ͕͕ͪΔͷͰɺ EC2 on
Cronͷͱ͖ؾʹ͍ͯͨ͠CPUϦιʔε ΛؑΈ࣮ͨߦλΠϛϯάͳͲߟ͑Δඞཁ͕ͳ ͘ͳͬͨ • ංେԽ͢Δcrontabͷཧෆཁʹ ECS Task Scheduledʹͯ͠ྑ͔ͬͨ͜ͱ
Route53Λར༻ͨ͠ՃॏϦιʔεϨίʔυηοτΛ ར༻ͨ͠τϥϑΟοΫࢄΧφϦΞϦϦʔεతʹ ͏ࡍʹศརͳͷͰΦεεϝ ECSҠߦ࣌ͷTips
͜Ε͔Β
• ECSΛ͍ͬͯͯ݁ہ֎ଆͷEC2Πϯε λϯεΛҙࣝ͠ͳ͍ͱ͍͚ͳ͍ • 1ͭͷEC2ΠϯελϯεͷதʹԿݸίϯςφ ΛཱͯΔ͔ɺϦιʔεͷׂͲͷఔ͔ … • FargateͦΕʹର͢ΔղʹͳΓͦ͏
AWS Fargateͷظ
• ຊޠͷFargateʹݴٴͨ͠ϒϩάΛݟͯ AWSͷUSνʔϜ͕ʮ͜ΕͳΜͯॻ͍ͯ͋Δ ͷʁʯͬͯJPνʔϜʹฉ͍ͯ͘ΔΒ͍͠ • “Fargate”άάΒϏϦςΟ͕ߴ͍ͷҰҼʹ ͋Γͦ͏ • ΈΜͳͰϒϩάॻ͍ͯFargateΛ
Tokyo Regionʹ͖࣋ͬͯ·͠ΐ͏:D FargateΑʂ
• ͳΜ͔ͩΜͩɺضৼΓͱͯ͠Πϯϑϥͷ ࣄΛϝΠϯͰߦ͏ਓඞཁͩͬͨΓ͢Δ • ͰɺࠓͷίωώτͷνʔϜͳΒίϯςφʹ ؔͯ͠ΞϓϦέʔγϣϯΤϯδχΞ͚ͩͰ ݁͢Δੈք͕ͭ͘ΕΔͱ৴͍ͯ͡Δ • ͦ͜·ͰίϯςφɾΠϯϑϥٕज़ΛʮνʔϜ
ͰҭͯΔʯͷʹͯ͠ɺࣗͨͪͷࣄΛͳ ͘͢ͱ͜Ζ·ͰΓ͍ͨ ΠϯϑϥΤϯδχΞͷࣄΛͳ͘͢
·ͱΊ
• ϚϚ͚No.1ΞϓϦͷϚϚϦͷAWS ʹࢧ͑ΒΕ͖ͯ·ͨ͠ • ࠓຊͷϚϚίϯςφʹࢧ͑ΒΕ͍ͯ·͢ • ίωώτͰɺ͜Ε͔ΒίϯςφɾΠϯϑ ϥٕज़ΛʮνʔϜͰҭͯΔʯΧϧνϟʔʹ͠ ͍͖ͯ·͢
·ͱΊ
͏ͪΐͬͱΛฉ͍ͯΈ͍ͨͱ ࢥͬͨํؾܰʹ͓͕͚͍ͩ͘͞ ͘͠!UBUTVTIJNʹ%.Ͱ
$POOFIJUP*OD$50!UBUTVTIJN ϚϚͷҰาΛࢧ͑Δ ͝ਗ਼ௌ༗͏͍͟͝·ͨ͠%