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
kintone.comのAWS移行と その舞台裏
Search
Shin'ya Ueoka
July 14, 2020
Technology
4
5.2k
kintone.comのAWS移行と その舞台裏
Cybozu Tech Meetup #3 US版kintoneのAWS移行とその裏側
https://cybozu.connpass.com/event/179483/
Shin'ya Ueoka
July 14, 2020
Tweet
Share
More Decks by Shin'ya Ueoka
See All by Shin'ya Ueoka
エンジニアが主導できる組織づくり ー 製品と事業を進化させる体制へのシフト
ueokande
1
1k
どこで動かすか、誰が動かすか 〜 kintoneのインフラ基盤刷新と運用体制のシフト 〜
ueokande
0
270
kintone開発組織のDevOpsへの移り変わりと実践
ueokande
3
1.2k
運用できる開発組織の作り方 ― kintone開発組織のストーリー
ueokande
0
150
英語ができなかった自分達が、グローバルチーム立ち上げに挑戦!?
ueokande
1
980
技術書典12協賛企業サイボウズゲストトーク
ueokande
0
290
サービス間をテストするフレームワーク集
ueokande
0
340
kintone.comを支える技術
ueokande
0
220
SLO策定とアラート設定までの長い道のり
ueokande
6
4.9k
Other Decks in Technology
See All in Technology
“それなりに”安全なWebアプリケーションの作り方
xryuseix
0
340
エンジニアに定年なし! AI時代にキャリアをReboot — 学び続けて未来を創る
junjikoide
0
180
探求の技術
azukiazusa1
7
1.8k
プログラミング言語を書く前に日本語を書く── AI 時代に求められる「言葉で考える」力/登壇資料(井田 献一朗)
hacobu
PRO
0
150
今日から使える AWS Step Functions 小技集 / AWS Step Functions Tips
kinunori
7
660
ユーザーストーリー x AI / User Stories x AI
oomatomo
0
180
技術の総合格闘技!?AIインフラの現在と未来。
ebiken
PRO
0
250
決済システムの信頼性を支える技術と運用の実践
ykagano
0
540
CodexでもAgent Skillsを使いたい
gotalab555
9
4.5k
AI時代におけるドメイン駆動設計 入門 / Introduction to Domain-Driven Design in the AI Era
fendo181
0
680
3年ぶりの re:Invent 今年の意気込みと前回の振り返り
kazzpapa3
0
210
CloudFormationコンソールから、実際に作られたリソースを辿れるようになろう!
amixedcolor
1
170
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Producing Creativity
orderedlist
PRO
348
40k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Designing for humans not robots
tammielis
254
26k
BBQ
matthewcrist
89
9.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Speed Design
sergeychernyshev
32
1.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
920
Transcript
LJOUPOFDPNͷ"84Ҡߦͱ ͦͷཪ $ZCP[V5FDI.FFUVQ αΠϘζגࣜձࣾ ্Ԭਅ
.F ‰্Ԭਅ !VFPLBOEF ‰αΠϘζגࣜձࣾ ‰ٳ044Λ࡞ͬͨΓจॻΛ ॻ͍͍ͯ·͢
kintone.com
LJOUPOF 4
LJOUPOF ‰ۀγεςϜΛ؆୯ʹ࡞ΕΔ##͚αʔϏε ‰ࠃ֎ ࣾͰಋೖ ‰άϩʔόϧࢢ ʮLJOUPOFDPNʯ Ͱల։ 5
άϩʔόϧͷνϟϨϯδ ‰ࠃͷച্҆ఆͯ͠৳ͼ͍ͯΔ ‰64ࢢΛ͡Ίάϩʔόϧʹνϟϯδ͍ͨ͠ ‰ݱʹ͋ΘͤͨϦϦʔεϑϩʔൢചઓུ͍ͨ͠ 6
ͷLJOUPOFͱٕज़త՝ ‰ࠃαʔϏεDZCP[VDPNͱಉ͡Πϯϑϥج൫ wͷϨΨγʔ͕ཷ·ͬͨϞϊϦεγεςϜʢ˞ʣ ‰৫తͳνϟϨϯδඞཁ wαʔϏε։ൃऀͱӡ༻ऀ͕৫తʹ͔Ε͍ͯΔ 7 ˞ࠃΠϯϑϥ/FDP.BOFLJϓϩδΣΫτ͕ਐߦத
"84Ҡߦͷΰʔϧ ‰64ϦʔδϣϯͰ҆ఆͨ͠αʔϏεఏڙ ‰ࠃͷγεςϜ͔Βͷಠཱ wݱʹ߹ΘͤͨϦϦʔεܭըɺൢചઓུ wΫϥυωΠςΟϒͳ։ൃӡ༻ϓϩηεͷཱ֬ 8
"84Ҡߦ͕ྃ ‰݄ʹશҠߦ͠·ͨ͠ʂ w݄৽نސ٬͚ϦϦʔε w݄طଘސ٬ͷڥΛ"84ʹҠߦ 9 9݄ ৽نސ٬ ϦϦʔε 6݄ طଘސ٬ͷ
Ҡߦ (1/3) طଘސ٬ͷ Ҡߦ (2/3) طଘސ٬ͷ Ҡߦ (3/3) 20204݄ 5݄ L7LB Γସ͑ DNS Ҡ 20197݄ 8݄ 20181݄ ϓϩδΣΫτ ελʔτ
LJOUPOFDPNج൫ͷߏங ʢʙ݄ʣ 9݄ ৽نސ٬ ϦϦʔε 6݄ طଘސ٬ͷ Ҡߦ (1/3)
طଘސ٬ͷ Ҡߦ (2/3) طଘސ٬ͷ Ҡߦ (3/3) 20204݄ 5݄ L7LB Γସ͑ DNS Ҡ 20197݄ 8݄ 20181݄ ϓϩδΣΫτ ελʔτ
LJOUPOFDPNͷΞʔΩςΫνϟ ‰ސ٬ ʢձࣾʣ ͝ͱͷڥΛఏڙ͢ΔϚϧνςφϯτ ‰֤ڥ͝ͱʹҟͳΔ'2%/ 11 bar.kintone.com foo.kintone.com
ߏΛͦͷ··AWS্ʹ Ҡ২ɾɾɾʁ
΄ͱΜͲ࡞Γ͠·ͨ͠ɹ
ΞʔΩςΫνϟͷ৽ ‰ҠߦͱڞʹLJOUPOFج൫ͷΞʔΩςΫνϟΛݟ͠ 14 cybozu.comج൫ ϛυϧΣΞ kintone JP ϛυϧΣΞ kintone US
(AWS) ৽ن։ൃ ίϯςφԽ ϚωʔδυαʔϏε ஔ͖͑
ΠϯϑϥϨΠϠ ‰ΠϯϑϥϨΠϠϚωʔδυαʔϏεΛར༻ w"NB[PO"VSPSBɺ4ɺ"NB[PO&,4 15 ϛυϧΣΞ kintone
ϛυϧΣΞ ‰ඇಉظδϣϒϚϧνςφϯτΛཧ͢Δ ‰ΞʔΩςΫνϟΛݟͯ͠,PUMJO(PͰ৽ن։ൃ 16 ϛυϧΣΞ kintone
,JOUPOFຊମ ‰,JOUPOFຊମΛίϯςφͰಈ͘Α͏ʹ͢Δ ‰ಉ͡ίʔυϕʔεͰಈ࡞Λ%*ͰΓସ͑Δ 17 ϛυϧΣΞ kintone
ͦͷଞ࡞Γ͠ ‰αʔϏεҎ֎ͷ৽ن։ൃ࡞Γ͠·ͨ͠ w$*$%ύΠϓϥΠϯ wϩάɺϞχλϦϯά wεςʔλεϖʔδ wΦϯίʔϧମ੍ɺΞϥʔτγεςϜ 18
৽نϦϦʔεͱฒߦӡ༻ ʢ݄ʙʣ 9݄ ৽نސ٬ ϦϦʔε 6݄ طଘސ٬ͷ Ҡߦ (1/3)
طଘސ٬ͷ Ҡߦ (2/3) طଘސ٬ͷ Ҡߦ (3/3) 20204݄ 5݄ L7LB Γସ͑ DNS Ҡ 20197݄ 8݄ 20181݄ ϓϩδΣΫτ ελʔτ
৽نސ٬͚ϦϦʔε ‰݄৽نސ٬͚ϦϦʔε ‰طଘސ٬Ҿ͖ଓ͖ຊͷ%$͔Βఏڙ 20
ฒߦӡ༻ ‰શͯͷϦΫΤετ"84ͷ"-#Ͱड͚͚Δ ‰طଘڥͷϦΫΤετຊʹϦόʔεϓϩΩγ 21 kintone kintone Internet ϦόʔεϓϩΩγ NGINX NGINX
AWS ALB AWS JP ৽نސ٬ طଘސ٬
ϏοάόϯϦϦʔεΛආ͚Ζ ‰ϦϦʔεӨڹΛ͑ͯ؆୯ʹΓ͠Ͱ͖ΔΑ͏ʹ ஈ֊తʹϦϦʔε w݄%/4Λ"84ʹҠ w݄ϩʔυόϥϯαΛ"84ʹΓସ͑ w݄৽نਃ͠ࠐΈઌΛ"84൛LJOUPOFʹΓସ͑ 22
݄%/4ͷҠ ‰%/4ͷཧΛຊͷDZCP[VDPN͔Β"84ʹҠ w LJOUPOFDPNͷ໊લղܾઌҾ͖ଓ͖ຊͷ%$ 23 kintone NGINX ᶃ foo.kintone.comͷ ໊લղܾ
ᶄ kintoneʹΞΫηε Route 53 AWS JP
݄ϩʔυόϥϯαͷΓସ͑ ‰)551ϦΫΤετͷड͚ઌΛ"84ଆʹΓସ͑ wʮ LJOUPOFDPNʯͷ໊લղܾͷઌΛ"84ͷ"-#ʹ wϦΫΤετΛຊ%$ʹϦόʔεϓϩΩγ 24 kintone kintone Internet ϦόʔεϓϩΩγ
NGINX NGINX AWS ALB AWS JP
݄৽نސ٬͚ϦϦʔε ‰৽نސ٬ͷڥΛLJOUPOFDPNͷ"84ʹ࡞ wLJOUPOFDPN͓ਃ͠ࠐΈઌΛΓସ͑ 25 kintone kintone NGINX NGINX JP AWS
kintone.com ͓ਃ͠ࠐΈϖʔδ Γସ͑
طଘސ٬ͷ"84Ҡߦ ʢ݄ʙ݄ʣ 9݄ ৽نސ٬ ϦϦʔε 6݄ طଘސ٬ͷ Ҡߦ (1/3)
طଘސ٬ͷ Ҡߦ (2/3) طଘސ٬ͷ Ҡߦ (3/3) 20204݄ 5݄ L7LB Γସ͑ DNS Ҡ 20197݄ 8݄ 20181݄ ϓϩδΣΫτ ελʔτ
طଘސ٬ͷҠߦ ‰৽نϦϦʔεҎલͷސ٬σʔλΛ"84ʹҠߦ ‰ఀࢭϝϯςφϯεΛ݄ɺ݄ɺ݄ʹܭը 27 kintone kintone NGINX NGINX AWS (US)
JP ৽نސ٬ طଘސ٬ Ҿͬӽ͠ʂ
Ҡߦ͢Δରσʔλ ‰طଘސ٬ͷLJOUPOFڥΛ"84ʹҠߦ͢Δ wఴϑΝΠϧ5# wσʔλϕʔε(# wશจݕࡧΠϯσοΫε 28
‰,JOUPOFͷΦϒδΣΫτετϨʔδXSJUFPODF wࣄલʹࠩసૹΛͯ͠ɺҠߦʹΓͷసૹΛͭ ఴϑΝΠϧͷҠߦ 29 S3 AWS JP
‰NZTRMEVNQͨ݁͠ՌΛ4ʹసૹޙɺΠϯϙʔτ σʔλϕʔεͷసૹ 30 Amazon Aurora S3 AWS JP mysqldump import
શจݕࡧͷ࠶ΠϯσΫγϯά ‰ఴϑΝΠϧɾ%#ͷసૹޙɺΠϯσΫγϯά։࢝ wLJOUPOF෦ͷඇಉظδϣϒͰΠϯσΫγϯάΛ࣮ߦ wطʹΩϡʔʹੵ·Ε͍ͨδϣϒ࠶։ POINT OF NO RETURN Amazon Aurora
S3 indexing Elasticsearch kintone จࣈྻநग़ จࣈྻநग़
LJOUPOFDPNͷ͜Ε͔Β ʢ݄ʙʣ 9݄ ৽نސ٬ ϦϦʔε 6݄ طଘސ٬ͷ Ҡߦ (1/3)
طଘސ٬ͷ Ҡߦ (2/3) طଘސ٬ͷ Ҡߦ (3/3) 20204݄ 5݄ L7LB Γସ͑ DNS Ҡ 20197݄ 8݄ 20181݄ ϓϩδΣΫτ ελʔτ
Ҡߦޙͷ64൛LJOUPOF ‰݄͔ΒLJOUPOF։ൃνʔϜશମͰ։ൃɾӡ༻ ‰ҠߦϓϩδΣΫτதʹͰ͖ͳ͔ͬͨ՝͋Δ wϢʔβʔɺΞϓϦέʔγϣϯࢹͷ4-*4-0 w.JDSPTFSWJDFTͳͲͷϞϊϦε wࢄτϨʔγϯάͳͲΫϥυωΠςΟϒͳࢹ 33
αΠϘζͱࠓޙͷLJOUPOFDPN ‰"84ҠߦྃΰʔϧͰͳ͘৽ͨͳελʔτ ‰ٕज़తɾ৫తͳνϟϨϯδ͕Ͱ͖ΔΑ͏ʹͳͬͨ wLJOUPOFDPNͷ҆ఆӡ༻ʹ͚ͨνϟϨϯδ wࠃ /FDP.BOFLJ ͷӡ༻ݟͷల։ wੈքల։ͷͨΊͷͮ͘Γ 34 Զͨͪͷઓ͍·ͩ࢝·͔ͬͨΓͩʂ