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
0
63
エンジニアが主導できる組織づくり ー 製品と事業を進化させる体制へのシフト
ueokande
1
1.6k
どこで動かすか、誰が動かすか 〜 kintoneのインフラ基盤刷新と運用体制のシフト 〜
ueokande
0
330
kintone開発組織のDevOpsへの移り変わりと実践
ueokande
3
1.3k
運用できる開発組織の作り方 ― kintone開発組織のストーリー
ueokande
0
200
英語ができなかった自分達が、グローバルチーム立ち上げに挑戦!?
ueokande
1
1k
技術書典12協賛企業サイボウズゲストトーク
ueokande
0
310
サービス間をテストするフレームワーク集
ueokande
0
370
kintone.comを支える技術
ueokande
0
230
Other Decks in Technology
See All in Technology
20260323_データ分析基盤でGeminiを使う話
1210yuichi0
0
170
Copilot 宇宙へ 〜生成AIで「専門データの壁」を壊す方法〜
nakasho
0
180
CloudFrontのHost Header転送設定でパケットの中身はどう変わるのか?
nagisa53
1
150
Windows ファイル共有(SMB)を再確認する
murachiakira
PRO
0
260
How to install a gem
indirect
0
1.2k
RGBに陥らないために -プロダクトの価値を届けるまで-
righttouch
PRO
0
110
ReactのdangerouslySetInnerHTMLは“dangerously”だから危険 / Security.any #09 卒業したいセキュリティLT
flatt_security
0
480
Laravelで学ぶOAuthとOpenID Connectの基礎と実装
kyoshidaxx
4
1.8k
Phase08_クイックウィン実装
overflowinc
0
1.6k
DDD×仕様駆動で回す高品質開発のプロセス設計
littlehands
5
2.3k
韓非子に学ぶAI活用術
tomfook
1
200
コンテキスト・ハーネスエンジニアリングの現在
hirosatogamo
PRO
6
790
Featured
See All Featured
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
89
YesSQL, Process and Tooling at Scale
rocio
174
15k
The Curse of the Amulet
leimatthew05
1
10k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
68
38k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
140
Docker and Python
trallard
47
3.8k
Design in an AI World
tapps
0
180
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
How to make the Groovebox
asonas
2
2k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
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 Զͨͪͷઓ͍·ͩ࢝·͔ͬͨΓͩʂ