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
3k
日本のママをコンテナで支える
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
26k
コミュニティサービスにおける機械学習のためのアノテーション
tatsushim
0
2k
コネヒトが考える技術選択の仕方について
tatsushim
0
21k
コネヒトが考えるサービスづくりに必要な技術とその考え方について
tatsushim
2
3.1k
word2vecで女性向けQ&Aサイトを解析してみた
tatsushim
0
6.2k
独身男性のためのデータドリブン講座
tatsushim
0
6.7k
Other Decks in Technology
See All in Technology
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
770
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
600
The Rise of LLMOps
asei
9
1.8k
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
150
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
13k
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
120
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
29
13k
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
7
690
生成AIが変えるデータ分析の全体像
ishikawa_satoru
0
170
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
334
57k
Navigating Team Friction
lara
183
14k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
Adopting Sorbet at Scale
ufuk
73
9.1k
A designer walks into a library…
pauljervisheath
204
24k
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
How STYLIGHT went responsive
nonsquared
95
5.2k
Embracing the Ebb and Flow
colly
84
4.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Building Applications with DynamoDB
mza
90
6.1k
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 ϚϚͷҰาΛࢧ͑Δ ͝ਗ਼ௌ༗͏͍͟͝·ͨ͠%