Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kubernetes Persistent Volume向け ゾーン障害への備え

Kubernetes Persistent Volume向け ゾーン障害への備え

CloudNative Days Tokyo 2023の登壇資料です。

Yukinori Sakashita

December 11, 2023
Tweet

More Decks by Yukinori Sakashita

Other Decks in Technology

Transcript

  1. ࣗݾ঺հ ‣ ٕज़ݚڀΤϦΞ  ӡ༻؅ཧٕज़  Ϋϥ΢υ  αʔόετϨʔδ 

    ࣗಈࣗ཯ίϯϐϡʔςΟϯά  "*.- // ).. #BZFTJBO/FUXPSL  ‣ ৬ྺ  ೔ཱ੡࡞ॴ 㾎தԝݚڀॴԣ඿ݚڀॴ ओ೚ݚڀһ  㾎ւ֎ݚڀॴ!γϦίϯόϨʔ ϥϘ௕   αʔόϕϯμʔ ςΫχΧϧ4& 2 ࡔԼ޾ಙ ത࢜  :VLJOPSJ4BLBTIJUB 1I% ‣ -*/&ϠϑʔגࣜձࣾθοτϥϘגࣜձࣾ ‣ 4/*"೔ຊࢧ෦ٕज़ҕһձ෭ҕһ௕ 
 Ϣʔεέʔε෼Պձ௕ ‣ 4/*"5FDIOJDBM$PVODJM"EWJTPS ‣ ৘ใॲཧֶձ%1ฤूҕһ !ZTBLBTIJUB
  2. ετϨʔδͷো֐ ‣ ো֐ʹ͸ͦͷن໛ʹԠͯ͡େ·͔ʹͭͷύλʔϯ͕͋Γ ‣ ετϨʔδػثো֐Ͱ͸κʔϯো֐ɾϦʔδϣϯো֐͕ݪҼͱͳΔ͜ͱ΋͋Γ 6 4UPSBHF 7PMVNF %BUB σʔλো֐

    4UPSBHF 7PMVNF %BUB ϘϦϡʔϜো֐ 4UPSBHF 7PMVNF %BUB ετϨʔδػثো֐ ɾಛఆͷσʔλͷΈഁଛ ɾΞϓϦͷόάͳͲͰഁଛέʔε΋͋Γ ɾ%JTLো֐΍ίϯτϩʔϥɺωοτϫʔΫϙʔτͷ 
 ো֐౳ͰಛఆͷϘϦϡʔϜʹΞΫηεෆՄ ɾػثશମʹΞΫηεͰ͖ͳ͘ͳΔো֐ ɾిݯো֐ͳͲʹΑΔκʔϯো֐ɺ஍਒౳ʹΑΔ 
 σΟβελʹΑΔϦʔδϣϯো֐΋ؚΉ
  3. 8BJU'PS'JSTU$POTVNFS ‣ 1PEͷ഑ஔΛ׆༻͢Δ৔߹ʹ͸4$ͷWPMVNF#JOEJOH.PEFΛར༻  *NNFEJBUF σϑΥϧτ   8BJU'PS'JSTU$POTVNFS ‣

    8BJU'PS'JSTU$POTVNFS͸17$Λ࢖༻͢Δ1PE͕࡞੒͞ΕΔ·Ͱ17ͱͷ 
 όΠϯσΟϯάΛ஗ΒͤΔϞʔυ  17 7PMVNF ͕"UUBDI͞ΕΔϊʔυ͕1PEͷ഑ஔʹΑΓܾఆ 4UPSBHF /PEF
  4. $4*ͷ5PQPMPHZ"XBSF ‣ 4UPSBHF$MBTTʹͯ;POFΛࢦఆ͠17 7PMVNF ͷੜ੒ݩΛࢦఆ ৄࡉͳಈ࡞ݕূ͸ͪ͜ΒΛࢀর IUUQTRJJUBDPNZTBLBTIJUBJUFNTCBBDBEDF 4UPSBHF ;POF" ;POF#

    7PMVNF LJOE4UPSBHF$MBTT ʜ BMMPXFE5PQPMPHJFT NBUDI-BCFM&YQSFTTJPOT LFZUPQPMPHZLVCFSOFUFTJP[POF WBMVFT ;POF" WPMVNF#JOEJOH.PEF8BJU'PS'JSTU$POTVNFS LJOE4UPSBHF$MBTT ʜ BMMPXFE5PQPMPHJFT NBUDI-BCFM&YQSFTTJPOT LFZUPQPMPHZLVCFSOFUFTJP[POF WBMVFT ;POF# WPMVNF#JOEJOH.PEF8BJU'PS'JSTU$POTVNFS
  5. 1SPYZλΠϓͷ$4*%SJWFS͸஫ҙ ‣ ࣮֬ʹετϨʔδ·Ͱ5PQPMPHZͷ৘ใ͕఻Θ͍ͬͯΔ͔͸ཁνΣοΫ 15 4UPSBHF 4UPSBHF ྫ $JOEFS$4*%SJWFS 40%"$4* 5PQPMPHZͷ৘ใ͕఻೻

    5PQPMPHZͷ৘ใ ͸఻೻ͳ͠ $JOEFS"1* $4*"1* $4*"1* 7FOEPS"1*PS 
 $4*"1* 5PQPMPHZͷ৘ใ͸ 
 ఻೻͸ෆ໌
  6. ϨϓϦέʔγϣϯػೳ ‣ ετϨʔδͷᝑମΛ·͕ͨͬͯσʔλΛϛϥʔ ‣ 7PMVNF୯ҐͰͷϛϥʔ͕ଟ͍͕ɺ੡඼ʹΑͬͯ͸4UPSBHF1PPM୯Ґ΍ 
 ςφϯτ୯ҐͰϛϥʔՄೳͳ΋ͷ΋͋Γ  ,4޲͚ͷ͓͢͢Ί͸ D

    C B ͷॱ ;POF" ;POF# 4UPSBHF1PPM ;POF" ;POF# 1PSU .JSSPS 5FOBOU *1΍.BD"EESΛ 
 Ҿ͖ܧ͙΋ͷ΋͋Γ .VMUJ1BUIෆཁ ;POF" /PEF ;POF# 4UPSBHF .JSSPS .VMUJ1BUIʹ 
 ΑΔύε੾Γସ͑ ͳͲ 7PMVNF B 7PMVNF୯Ґ C 4UPSBHF1PPM୯Ґ D ςφϯτ୯Ґ .JSSPS
  7. 5SJQMF3FQMJDBUJPOͷࣦഊߏ੒ ‣ 5SJQMF3FQMJDBUJPO͸Ͳ͜ͷ4UPSBHF/PEFʹ഑ஔ͞ΕΔ͔Λҙࣝͯ͠ߏ੒Λ૊Ή 
 ඞཁ͋Γ  κʔϯຖͷ4UPSBHF/PEFͳͲͰάϧʔϓԽ 4UPSBHF1PPM ͠෼ࢄ഑ஔΛίϯτϩʔϧͳͲ 20

    ;POF" /PEF ;POF# 4UPSBHF 4UPSBHF /PEF ;POF" /PEF ;POF# 4UPSBHF /PEF 4UPSBHF1PPM 4UPSBHF1PPM σʔλ഑ஔΛҙࣝͨ͠ߏ੒ྫ σʔλ഑ஔΛҙ͍ࣝͯ͠ͳ͍ߏ੒ྫ ࣦഊྫ
  8. ར༻ऀ͔ΒΈͨϢʔβϏϦςΟ BQJ7FSTJPOBQQTW LJOE4UBUFGVM4FU NFUBEBUB OBNFNZTRM ʜ WPMVNF$MBJN5FNQMBUFT NFUBEBUB OBNFCMPDL TQFD

    BDDFTT.PEFT<3FBE8SJUF0ODF> TUPSBHF$MBTT/BNF4UPSBHF" SFTPVSDFT SFRVFTUT TUPSBHF(J ‣ 4UPSBHF$MBTT 4$ ΛͲͷΑ͏ʹઃܭ͢Δͷ͔ʹΑΓϢʔβϏϦςΟ͕มԽ  ୯Ұ4$Ϣʔβ͸ͭͷ4UBUFGVM4FUͳͲͰ؅ཧ˞  ෳ਺4$$4*5PQPMPHZͳͲʹΑΓ֤";ʹରԠͨ͠4$Λ࡞੒ 
 ɹɹɹɹˠϢʔβ͸";ຖʹ4UBUFGVM4FUͳͲΛ࡞Γ؅ཧ͕ඞཁ 
 ɹɹɹɹ εέʔϧ΍όʔδϣϯΞοϓͳͲ؅ཧ͕ෳࡶʹ ;POF" ;POF# ୯Ұ4$ ෳ਺4$ ;POF" ;POF# ˞ετϨʔδʹΑͬͯ͸ WPMVNF#JOEJOH.PEF ɹɹ8BJU'PS'JSTU$POTVNFS ͷઃఆ͕ඞཁ
  9. /PEF ෮چ࣌ͷੑೳӨڹ ‣ %#ͳͲͷεςʔτϑϧΞϓϦͰͷσʔλಉظ͸֤ϊʔυ΍/PSUI4PVUIͷ 
 ωοτϫʔΫʹෛՙେ  ো֐͔Βͷ෮چ࣌ʹ͸ಛʹେྔʹσʔλಉظ͕ೖΓੑೳΛѹഭ 26 4UPSBHF

    ΞϓϦͰͷσʔλಉظ %BUB'MPX 26 ετϨʔδͰͷ੾Γସ͑ 4PVUI /PSUI /FX 4UPSBHF /PEF 4UPSBHF 4UPSBHF /FX .JSSPS ϛϥʔઌ7PM΁ͷ ੾Γସ͑ˍ 
 "UUBDI.PVOU
  10.  σʔλ෼ࢄ഑ஔͳ͠ϨϓϦέʔγϣϯͳ͠ ୯Ұ4$ ‣ 4$ʹͯ8BJU'PS'JSTU$POTVNFSΛઃఆ ‣ ϘϦϡʔϜ͕Ͳ͜ʹ഑ஔ͞ΕΔ͔͸ӡ࣍ୈ 1PEͷεέδϡʔϦϯά࣍ୈ  

    C 1PE5PQPMPHZ4QSFBE$POTUSBJOTͰ΋׬શͳ෼ࢄͷอূෆՄ /PEF4FMFDUPSͩͱෳ਺4$ͱେࠩͳ͠  29 ;POF" /PEF ;POF# 4UPSBHF 4UPSBHF/PEF ;POF" /PEF ;POF# 4UPSBHF 4UPSBHF/PEF B ";ލͬͨετϨʔδߏ੒ C ";ຖͷετϨʔδߏ੒
  11.  σʔλ෼ࢄ഑ஔ͋Γ ୯Ұ4$ ‣ 4$ʹͯ";ࢦఆͳ͠ PS";Λෳ਺ࢦఆ $4*5PQPMPHZ  ‣ ετϨʔδࣗ਎

    FH4%4ͷΫϥΠΞϯτ Ͱ";Λҙࣝ͠σʔλΛ෼ࢄ഑ஔ 
 Ͱ͖Δ͜ͱ͕લఏ ;POF" /PEF ;POF# 4UPSBHF 4UPSBHF/PEF 4UPSBHF1PPM 4UPSBHF1PPM
  12.  ϨϓϦέʔγϣϯ͋Γ ෳ਺4$ ;POF" /PEF ;POF# 4UPSBHF 4UPSBHF/PEF .JSSPS 4UPSBHF1PPM

    4UPSBHF1PPM` 4UPSBHF1PPM` ‣ Ͳͷ୯ҐͰͷϨϓϦέʔγϣϯ ϛϥʔ ͕Ͱ͖Δ͔͸ετϨʔδ࣍ୈ  7PMVNF୯Ґ 4UPSBHF1PPM୯ҐPSςφϯτ୯Ґ ‣ 4UBUFGVM4FUͳͲ͕";ຖʹඞཁͱͳΓϢʔβϏϦςΟ௿Լ
  13. ߏ੒ύλʔϯͷൺֱ 34  σʔλ෼ࢄ഑ஔͳ͠ ϨϓϦέʔγϣϯͳ͠ ෳ਺4$  σʔλ෼ࢄ഑ஔͳ͠ ϨϓϦέʔγϣϯͳ͠ ୯Ұ4$

     σʔλ෼ࢄ഑ஔ͋Γ ෳ਺4$  σʔλ෼ࢄ഑ஔ͋Γ ୯Ұ4$  ϨϓϦέʔγϣϯ͋Γ ෳ਺4$  ϨϓϦέʔγϣϯ͋Γ ୯Ұ4$ ར༻ऀ͔ΒΈͨ 
 ϢʔβϏϦςΟ 1PE഑ஔʹґଘ͠ͳ͍ 
 σʔλอޢ σʔλอޢͷ੹೚ऀ Ϣʔβ Ϣʔβ ؅ཧऀ ؅ཧऀ ؅ཧऀ ؅ཧऀ ෮چ࣌ͷ 
 ੑೳӨڹͷগͳ͞ ‣ κʔϯো֐ʹ଱͑͏Δߏ੒Ͱͷߟྀ͢ΔϙΠϯτʹج͖ͮߏ੒ύλʔϯΛൺֱ ‣ Ͳͷߏ੒͕औΕΔ͔͸ετϨʔδͷػೳͷݟఆΊ͕ॏཁ ߏ੒ ൺֱ߲໨
  14. ߏ੒ύλʔϯͷൺֱ 35  σʔλ෼ࢄ഑ஔͳ͠ ϨϓϦέʔγϣϯͳ͠ ෳ਺4$  σʔλ෼ࢄ഑ஔͳ͠ ϨϓϦέʔγϣϯͳ͠ ୯Ұ4$

     σʔλ෼ࢄ഑ஔ͋Γ ෳ਺4$  σʔλ෼ࢄ഑ஔ͋Γ ୯Ұ4$  ϨϓϦέʔγϣϯ͋Γ ෳ਺4$  ϨϓϦέʔγϣϯ͋Γ ୯Ұ4$ ར༻ऀ͔ΒΈͨ 
 ϢʔβϏϦςΟ 1PEʹґଘ͠ͳ͍ 
 σʔλอޢ σʔλอޢͷ੹೚ऀ Ϣʔβ Ϣʔβ ؅ཧऀ ؅ཧऀ ؅ཧऀ ؅ཧऀ ෮چ࣌ͷ 
 ੑೳӨڹͷগͳ͞ ‣ κʔϯো֐ʹ଱͑͏Δߏ੒Ͱͷߟྀ͢ΔϙΠϯτʹج͖ͮߏ੒ύλʔϯΛൺֱ ‣ Ͳͷߏ੒͕औΕΔ͔͸ετϨʔδͷػೳͷݟఆΊ͕ॏཁ ߏ੒ ൺֱ߲໨ 👑 Φεεϝ /P Φεεϝ /P (,&ͩͱϦʔδϣϯ ӬଓσΟεΫ <(,&> ϦʔδϣϯӬଓσΟεΫ (,&ͩͱϦʔδϣϯ ӬଓσΟεΫ <(,&> κʔϯӬଓσΟεΫ
  15. ·ͱΊ ‣ κʔϯো֐ٴͼͦΕʹඋ͑ͨετϨʔδͷػೳ΍$4*5PQPMPHZΛ঺հ ‣ κʔϯো֐ʹඋ͑ͨߏ੒ύλʔϯͱൺֱΛ঺հ ‣ κʔϯো֐ʹඋ͑ͨಈ࡞ςετΛ࣮ࢪ͢Δ͜ͱ͕͓קΊ ‣ ៉ྷʹκʔϯͷશͯͷϦιʔε͕Ұ੪μ΢ϯ͢Δ͜ͱ͸ك ‣

    ಈ࡞ςετͰ͸ɺ1PEɺ,4ϊʔυɺωοτϫʔΫ 1PSU48 ɺ 
 ετϨʔδͷ֤ίϯϙʔωϯτຖͷμ΢ϯΞοϓΛ֬ೝ  ࠷ޙʹ·ͱΊͯશͯͷϦιʔεͷҰ੪μ΢ϯΞοϓ΋֬ೝ ‣ ສ͕Ұκʔϯো֐͕ൃੜͯ͠΋ੑೳྼԽ͕ൃੜ͠ͳ͍Α͏ϦιʔεΛ֬อ ⭐ࠓճৄ͘͠঺հ͠·ͤΜͰ͕ͨ͠