Share
Embed
S3バケットを高速で削除・空にするツール「cls3」 / s3-deletion-tool-cls3
2023/12/13開催 Storage-JAWS #2 での登壇資料です。
k.goto
December 09, 2023
Transcript
45 slides
-
ࣗݾհ LHPUP w όοΫΤϯυςοΫϦʔυ w "84$PNNVOJUZ#VJMEFS %FW5PPMT w "84$%,ίϯτϦϏϡʔλʔ
‣ $PNNVOJUZ3FWJFXFSʹબఆ w ࣗ࡞"84πʔϧͷ044։ൃʲˡࠓͷ͓ʳ w าͷςοΫ ٕज़ϒϩά w 9 5XJUUFS !@TUFQ@UFDI ‣ LHPUP าͷςοΫ -
4ͬͯআ·ΘΓେม͡Όͳ͍ʁ w 4ίϯιʔϧͷʮόέοτΛۭʹ͢Δʯػೳ͕$-*4%,Ͱͮ͠Β͍ ‣ όʔδϣχϯά͕ΦϑͳΒ$-*ͩͱBXTTSNSFDVSTJWFͰՄೳ͕ͩɺ͕͍ ‣ όʔδϣχϯά͕ΦϯͩͱͦͦͰ͖ͳ͍ Ζ͏ͱ͢Δͱ໘Ͱେม w
4όέοτΛআ͢Δࡍɺόέοτ͕ۭͰͳ͍ͱআͰ͖ͳ͍ ‣ $-*ͰBXTTSCGPSDFͰՄೳ͕ͩɺ͕͍ w ۭʹ͍͕ͨ͠ଞͷϦιʔε͔Βґଘ͞Ε͍ͯͯɺ$%,ͷBVUP%FMFUF0CKFDUTͳͲΛ ͬͯͷόέοτআ ࠶࡞͕ग़དྷͳ͍ w 4ͷϥΠϑαΠΫϧػೳͰফͦ͏ͱͯͨ͠ͳ͍ͱ͍͚ͳ͍ -
4ͬͯআ·ΘΓେม͡Όͳ͍ʁ w 4ίϯιʔϧͷʮόέοτΛۭʹ͢Δʯػೳ͕$-*4%,Ͱͮ͠Β͍ ‣ όʔδϣχϯά͕ΦϑͳΒ$-*ͩͱBXTTSNSFDVSTJWFͰՄೳ͕ͩɺ͕͍ ‣ όʔδϣχϯά͕ΦϯͩͱͦͦͰ͖ͳ͍ Ζ͏ͱ͢Δͱ໘Ͱେม w
4όέοτΛআ͢Δࡍɺόέοτ͕ۭͰͳ͍ͱআͰ͖ͳ͍ ‣ $-*ͰBXTTSCGPSDFͰՄೳ͕ͩɺ͕͍ w ۭʹ͍͕ͨ͠ଞͷϦιʔε͔Βґଘ͞Ε͍ͯͯɺ$%,ͷBVUP%FMFUF0CKFDUTͳͲΛ ͬͯͷόέοτআ ࠶࡞͕ग़དྷͳ͍ w 4ͷϥΠϑαΠΫϧػೳͰফͦ͏ͱͯͨ͠ͳ͍ͱ͍͚ͳ͍ Ήͣᙱ͍ʂʂʂ -
όέοτআ ۭʹ͢Δ ߴʂʂ όʔδϣχϯάআ Ϧʔδϣϯލ͗ ෳόέοτҰׅআ ରϞʔυͰόέοτݕࡧ ࣗಈϦτϥΠ ฒྻॲཧ ϓϩάϨεόʔ
શΦϒδΣΫτදࣔ আࡁΈ ΦϒδΣΫτදࣔ Γඵදࣔ DMTͷಛ আ੍ݶແ͠ ඇݱߦόʔδϣϯͷΈ શͯআ -
DMTͷಛ ʲෳόέοτআʳ ‣ ෳόέοτΛҰׅ ରඇରΘͣ Ͱআ·ۭͨʹ͢Δ͜ͱ͕Մೳ ʲϦʔδϣϯލ͗ʳ ‣ ୯ҰόέοτআͰෳόέοτআͰϦʔδϣϯΛҙࣝ͢Δඞཁແ͠
όέοτ໊ΛͱʹࣗಈͰϦʔδϣϯใΛऔಘͯ͠আͯ͘͠ΕΔ ‣ ෳͷϦʔδϣϯʹލΔ߹ͰෳόέοτҰׅআ͕Մೳ -
DMTͷಛ ʲόʔδϣχϯάআʳ ‣ όʔδϣχϯά͕Φϯͷ߹ͰɺΦϑͷͱ͖ͱಉ͡Α͏ʹશͯআ͞ΕΔ ‣ όʔδϣχϯάઃఆΛҙࣝͤͣʹ͑Δʂ ʲඇݱߦόʔδϣϯͷΈશͯআʳ ‣ P PME7FSTJPOT0OMZ
Φϓγϣϯ ‣ -BUFTU $VSSFOU Ͱͳ͍όʔδϣϯͱͯ͢ͷআϚʔΧʔΛআ͢Δ ࠷৽όʔδϣϯͷΦϒδΣΫτ͚ͩΛ4ʹ͢͜ͱ͕Մೳʂ -
DMTͷಛ ʲআͰ͖ΔΦϒδΣΫτͷ੍ݶແ͠ʳ ‣ $-* 4%, EFMFUFPCKFDUT"1* ͰίϚϯυΦϒδΣΫτ·ͰআՄೳ ‣ DMTͰͷ੍ݶɾ্ݶແ͠ʂ ʲΤϥʔ࣌ͷࣗಈϦτϥΠʳ
‣ ΦϒδΣΫτ͕Կສ݅͋Δ߹ɺ௨ৗ$-*4%,ͰҰؾʹআ͍ͯ͠Δͱ·Εʹ 4BQJଆͰ4MPX%PXOΤϥʔ Τϥʔ ͕ى͜Δ͜ͱ͕͋Δ ‣ DMTͰɺϥϯμϜඵͬͯԿ͔ࣗಈϦτϥΠ͢ΔΈΛೖΕΔ͜ͱͰରԠ -
DMTͷಛ ʲฒྻॲཧʳ ‣ ݸҎ্ΦϒδΣΫτɾόʔδϣϯ͕͋Δ߹ฒྻॲཧͰΦϒδΣΫτআ ฒྻΦϒδΣΫτআ "1*ݺͼग़͠ ɺฒྻͷ্ݶʮฒྻ·Ͱʯ IUUQTEPDTBXTBNB[PODPNKB@KQ"NB[PO4MBUFTUVTFSHVJEFPQUJNJ[JOHQFSGPSNBODFIUNM %&-&5&ͷ߹ඵؒ
·Ͱ͑ΒΕɺฒྻ͝ͱʹΦϒδΣΫτͰ͍͛ͯΔͨΊɺ ฒྻΦϒδΣΫτ ·Ͱ͑ΒΕΔ ˞ฒྻʹͳΔͱεϩοτϧΤϥʔ͕ग़Δ ˞੍ݶΪϦΪϦͷ ̑ฒྻͰεϩοτϧΤϥʔ͕ଟൃͨ͠ -
DMTͷಛ ʲฒྻॲཧʳ ‣ 4ίϯιʔϧͷʮۭʹ͢ΔʯϘλϯͱউෛʂ ίϯιʔϧͷʮۭʹ͢ΔʯϘλϯ74DMT ϩʔΧϧڥཧ$16ίΞ ಉ͡ສΦϒδΣΫτ
αΠζۃখ ΛೖΕͨόέοτΛͦΕͧΕ༻ҙ ίϯιʔϧ DMT -
DMTͷಛ ʲฒྻॲཧʳ ‣ 4ίϯιʔϧͷʮۭʹ͢ΔʯϘλϯͱউෛʂ ίϯιʔϧͷʮۭʹ͢ΔʯϘλϯ74DMT ϩʔΧϧڥཧ$16ίΞ ಉ͡ສΦϒδΣΫτ
αΠζۃখ ΛೖΕͨόέοτΛͦΕͧΕ༻ҙ ίϯιʔϧ DMT ඵ ඵ ഒ͍ʂʂ ΄΅ฒྻ௨Γ ສΦϒδΣΫτͩͱɺDMTͰͰྃ ສΦϒδΣΫτͩͱɺDMTͰͰྃ ˠͰສΦϒδΣΫτͷআ͕Մೳʂ ʢ˞ίϯιʔϧͰະܭଌʣ -
DMTͷಛ ʲϓϩάϨεόʔʹΑΔআࡁΈશΦϒδΣΫτআ࣌ؒͷѲʳ ‣ σϑΥϧτͰϓϩάϨεόʔ͕ग़ྗ RΦϓγϣϯͰඇදࣔ ᶃ ਐḿ ᶄ আࡁΈͷΦϒδΣΫτ
ᶅ શΦϒδΣΫτ ᶆ ܦաඵ ᶇ ྃ༧ଌඵ Γඵ ᶃ ᶄ ᶅ ᶆᶇ -
DMTͷΠϯετʔϧ ʲ)PNFCSFXʳ ‣ CSFXJOTUBMMHPUPLUBQDMT ʲΠϯετʔϧγΣϧ .BD 8JOEPXT -JOVY ʳ ‣
DVSMGT4-IUUQTSBXHJUIVCVTFSDPOUFOUDPNHPUPLDMTNBJOJOTUBMMTIcTI ‣ DVSMGT4-IUUQTSBXHJUIVCVTFSDPOUFOUDPNHPUPLDMTNBJOJOTUBMMTIcTITW ʲόΠφϦ .BD 8JOEPXT -JOVY ʳ ‣ (JU)VCϦϦʔεϖʔδ͔Β IUUQTHJUIVCDPNHPUPLDMTSFMFBTFT ʲιʔεϏϧυ ։ൃ൛ະϦϦʔε (Pڥ͕ඞཁ ʳ ‣ HJUDMPOFIUUQTHJUIVCDPNHPUPLDMTHJU ‣ DEDMT ‣ NBLFJOTUBMM -
DMTͷίϚϯυΦϓγϣϯ DMT<CCVDLFU/BNF><QQSP fi MF><SSFHJPO><G><J><R><P> ʲC CVDLFU/BNFʳ ‣ 4όέοτ໊ ରϞʔυ
ޙड़ Ͱͳ͍߹ඞਢ ରϞʔυͰࢦఆͰ͖ͳ͍ ‣ ෳόέοτ໊ࢦఆ͕Ͱ͖·͢ DMTCUFTUCUFTU ϦʔδϣϯΛލ͙Α͏ͳෳͷόέοτࢦఆՄೳ 㾎DMTCUPLZPCVDLFUCVTCVDLFU -
DMTͷίϚϯυΦϓγϣϯ DMT<CCVDLFU/BNF><QQSP fi MF><SSFHJPO><G><J><R><P> ʲQ QSP fi MF Φϓγϣϯ ʳ
‣ "84ϓϩϑΝΠϧ໊ σϑΥϧτ࣮ߦڥͷσϑΥϧτͷϓϩϑΝΠϧ͕༻ ʲS SFHJPO Φϓγϣϯ ʳ ‣ "843FHJPO σϑΥϧτBQOPSUIFBTU ‣ ࣗಈͰόέοτͷϦʔδϣϯใΛऔಘͯ֘͠Ϧʔδϣϯͷ"1*Λୟ͘ͷͰؾʹ ͠ͳͯ͘ ࢦఆ͠ͳͯ͘ 0, -
DMTͷίϚϯυΦϓγϣϯ DMT<CCVDLFU/BNF><QQSP fi MF><SSFHJPO><G><J><R><P> ʲG GPSDF Φϓγϣϯ ʳ ‣ 4όέοτ͝ͱআ͢ΔʢʮGʯແ͠ͰʮόέοτΛۭʹ͢Δʯʣ
ʲJ JOUFSBDUJWF Φϓγϣϯ ʳ ‣ ରϞʔυʢόέοτ໊ݕࡧ༻ʣ Ϧʔδϣϯލ͗ͰόέοτҰཡදࣔ 4ίϯιʔϧͱಉ༷ -
DMTͷίϚϯυΦϓγϣϯ DMT<CCVDLFU/BNF><QQSP fi MF><SSFHJPO><G><J><R><P> ʲR RVJFU Φϓγϣϯ ʳ ‣ ϓϩάϨεόʔΛදࣔ͠ͳ͍
ʲP PME7FSTJPOT0OMZ Φϓγϣϯ ʳ ‣ ඇݱߦόʔδϣϯͷΈશͯআ ‣ -BUFTU $VSSFOU Ͱͳ͍όʔδϣϯͱͯ͢ͷআϚʔΧʔΛআ͢Δ ࠷৽όʔδϣϯͷΦϒδΣΫτ͚ͩΛ4ʹ͢͜ͱ͕Մೳʂ -
DMTͷରϞʔυ JΦϓγϣϯ w όέοτ໊ݕࡧ ˒ۄػೳʂ ‣ ΩʔϫʔυͰݕࡧ͠ɺ୯Ұ·ͨෳͷόέοτΛআ·ۭͨʹͰ͖Δ ‣ ϦʔδϣϯԣஅͰग़ྗ
Ϧʔδϣϯލ͗ͰෳόέοτͷҰׅআ͕Մೳʂ ‣ ۭೖྗͩͱશόέοτ͕ग़ྗ ෳબՄೳʂ -
όέοτআ ۭʹ͢Δ ߴʂʂ όʔδϣχϯάআ Ϧʔδϣϯލ͗ ෳόέοτҰׅআ ରϞʔυͰόέοτݕࡧ ࣗಈϦτϥΠ ฒྻॲཧ ϓϩάϨεόʔ
શΦϒδΣΫτදࣔ আࡁΈ ΦϒδΣΫτදࣔ Γඵදࣔ DMTͷಛ আ੍ݶແ͠ ඇݱߦόʔδϣϯͷΈ શͯআ -
DMTͷ(JU)VC w JTTVF1VMM3FRVFTU͓ؾܰʹͲ͏ͧʂ ‣ ͜Μͳػೳཉ͍͠ͳͱ͔044ίϯτϦϏϡʔτͷ࿅शͯ͠Έ͍͓ͨؾܰʹʂ ྫ͑͜ΜͳҊͳͲ 㾎όέοτݕࡧ࣌ͷҰཡʹ࡞࣌Λද͍ࣔͨ͠ 㾎όέοτݕࡧ࣌ʹ࡞࣌ OલͳͲ
ͰߜΓࠐΈ͍ͨ 㾎ରϞʔυ J બ࣌ͷίϚϯυΦϓγϣϯʹΩʔϫʔυΦϓγϣϯΛՃ͍ͨ͠ ‣ ·ͩίϯτϦϏϡʔγϣϯΨΠυͱ͔Կͳ͍ͷͰͦΖͦΖ࡞Γ͍ͨʜ (JU)VCϦϯΫ ·ͨʮDMT"84ʯͰݕࡧ -
DMTͷ(JU)VC w (PݴޠͰ࣮ɿ(PϢʔβʔͷํͷ͍͍αϯϓϧʹͳΔͷͰ ‣ "844%,GPS(P7ϥούʔ࣮ ʮ͍͍ײ͡ʯʹ4%,Λϥοϓ͢Δ࣮ɾߏʹ͍ͯ͠·͢ ‣ JOUFSGBDF͍Βͣͷ"844%,ϞοΫʹΑΔςετ࣮
ࢀߟɿʮ"844%,GPS(P7ͰJOUFSGBDFͷϞοΫzແ͠Ͱςετʯ 㾎IUUQTHPUPLIBUFOBCMPHDPNFOUSZBXTTELHPWNJEEMFXBSFUFTU ‣ ͦͷଞ (PݴޠͰͷ$-*πʔϧͷ࡞Γํ (PݴޠͰͷύοέʔδ σΟϨΫτϦ ߏ (PݴޠͰͷฒྻɾഉଞॲཧ )PNFCSFX(JU)VC3FMFBTFTϖʔδͷࣗಈϦϦʔεॲཧ $*$% (JU)VCϦϯΫ ·ͨʮDMT"84ʯͰݕࡧ -
044͍͍ͧ w ୭Ͱؾܰʹ ‣ ίʔυͪΖΜɺطଘόάཁͷҰཡ·ͰݟΒΕΔ ‣ ։ൃʹࢀՃͰ͖ͯɺࣗͰػೳՃमਖ਼Ͱ͖Δ ‣ όάใࠂ͕Ͱ͖Δɺ࣭ɾ૬ஊ͕Ͱ͖Δ ‣
ϑΥʔΫͯࣗ͠༻ʹΧελϚΠζͰ͖Δ w ࣗͷ࡞ͬͨॻ͍ͨͷΛଞͷਓ͕ͬͯ͘Εͨͱ͖ͷخ͠͞ɾײಈ ‣ ʮྑ͍ʂʯʮ͍͍͢ʂʯʮศརʂʯʮεΫϦϓτॻ͔ͳ͍͍ͯ͘ʂʯ ϞνϕʹͳΓ·͢ʂͥͻײπΠʔτͨ͠Γ֦ࢄͯ͠Լ͍͞ʂʂʂ ‣ JTTVFཱͯͯ͘ΕͨΓɺ1VMM3FRVFTUΛग़ͯ͘͠ΕͨΓ خ͍͠Ͱ͢ʂ -
044͍͍ͧɿ"84$%,$POTUSVDU ʲJNBHFTDBOOFSXJUIUSJWZʳ$%,Ͱ5SJWZͰίϯςφΠϝʔδεΩϟϯ ‣ IUUQTDPOTUSVDUTEFWQBDLBHFTJNBHFTDBOOFSXJUIUSJWZ ʲJNBHFTDBOOFSXJUIEPDLMFʳ$%,Ͱ%PDLMFίϯςφΠϝʔδεΩϟϯ ‣ IUUQTDPOTUSVDUTEFWQBDLBHFTJNBHFTDBOOFSXJUIEPDLMF ʲFMCPUIFSYYBMBSNʳ$%,ͰϚΠφʔͳYY
ͷ&-#ΞϥʔϜ ‣ IUUQTDPOTUSVDUTEFWQBDLBHFTJNBHFTDBOOFSXJUIEPDLMF