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

Kubernetesはじめの一歩 / The first step of Kubernetes

ihcomega56
December 10, 2020

Kubernetesはじめの一歩 / The first step of Kubernetes

JFrog webinar

未経験・未学習からはじめの一歩を踏み出すためのプレゼン。

この資料は引き続き育てていきます!
内容に誤りや分かりづらい点があったらぜひフィードバックいただけたら嬉しいです。

よこなのはじめの一歩シリーズその1 Git: https://speakerdeck.com/ihcomega56/githazimefalse-bu

ihcomega56

December 10, 2020
Tweet

More Decks by ihcomega56

Other Decks in Technology

Transcript

  1. 1 ࣗݾ঺հ • "ZBOB:PLPUB • +'SPHͷ%FWFMPQFS"EWPDBUF • લ৬·Ͱ͸ओʹόοΫΤϯυͷ։ൃ • ʢ4*FS

    ޿ࠂձࣾ ূ݊ελʔτΞοϓʣ • ژ౎ͷࡩΛݟʹߦ͖͍ͨ 5XJUUFS !JIDPNFHB ໊͋ͩ͸ Α͜ͳ
  2. 12 ࠓ೔໨ࢦ͍ͯ͠ͳ͍͜ͱ •,VCFSOFUFTͷར༻Λ୭ʹͰ΋קΊ͍ͨΘ͚Ͱ͸ ͳ͍ • ,VCFSOFUFT͸೉͍͠ ηογϣϯ͕ऴΘΔࠒʹ෼͔Δ͸ͣ • ίϯςφԽ͞Ε͍ͯΔ͜ͱ͕લఏͱͳΔ •

    ίϯςφ਺͕গͳ͍৔߹͸͏·Έ͕গͳ͍Մೳੑ΋͋Δ • ΠϯϑϥͷϞμϯԽ ৄࡉ͸ޙड़ɻ͜͜Ͱ͸͋͑ͯࡶʹ͜͏දݱ͠·͢ ɺ ࣗಈԽɺ$*$%ͷ੔උͳͲઌʹ΍͓ͬͯ͘΂͖͜ͱ͕͋Δ • ͋͘·Ͱར༻Մ൱ཁ൱ͷ൑அࡐྉʹͯ͠ཉ͍͠
  3. 16 Ұੲલ ·ͩ%FW0QTͷߟ͑ํ΋ͳ͔ͬͨࠒ • ϞϊϦγοΫͳΞϓϦέʔγϣϯͱͯ͠αʔϏεΛҭ ͍ͯͯ͘ͷ͕౰ͨΓલͩͬͨ • ϦϦʔε͸ҰେΠϕϯτͰɺ਺ϲ݄ɺ਺೥ʹ౓ͱ͍͏ ස౓Ͱ͔͠ߦΘΕͳ͍͜ͱ΋͋ͬͨ •

    ։ൃɾӡ༻͸ผ૊৫ͱͯ͠ผʑͷ໨ඪΛ௥͍ɺ ڠྗ͕Ͱ͖͍ͯͳ͍͜ͱ΋͋ͬͨ ਺ϲ݄ ·ͨ਺ϲ݄ ༨ஊ ϞϊγϦοΫ ͡Όͳͯ͘ ϞϊϦγοΫ Ͱ͢Α
  4. 19 ྫ͑͹࡞ۀΛޮ཰Խ͢Δྫ • ࣗಈԽɺ$*$%ɺΫϥ΢υར༻ͳͲͷϓϥΫςΟε ˠৄ͘͠͸ʜ • ʮԐͰ΋Θ͔Δ$*$%ʯ • IUUQTTQFBLFSEFDLDPNUTVZPBNPOLFZTHVJEFUPDJDE •

    ʮ%FW0QTͬͯԿͩΖ͏ʯ • IUUQTTQFBLFSEFDLDPNJIDPNFHBXIBUJTEFWPQT • IUUQTTQFBLFSEFDLDPNJIDPNFHBXIBUJTEFWPQTXJUIEFNP
  5. 20 ྫ͑͹։ൃΛεέʔϧͤ͞Δྫ • ϚΠΫϩαʔϏεԽͷಈ͖ ͻͱΓͰ ͳΜͰ΋ Ͱ͖Δ΋Μʂ ڊେͰෳࡶ ͗͢Δʂ ͜Μͳେ੎Ͱ

    ͭͷΞϓϦ ৮Δͷେมʂ ΞΧ΢ϯτ ৘ใ୲౰ʂ ঎඼৘ใ ୲౰ʂ ൃ஫୲౰ʂ ηʔϧ৘ใ ୲౰ʂ
  6. 32 Ϧιʔε • ,VCFSOFUFTͷʮϦιʔεʯ • ҰൠతͳʮϦιʔεʯͱಉ͡จষʹొ৔͢ΔͷͰཁ஫ҙ • ࠓ೔঺հ͢Δͷ͸Ұ෦ • 8PSLMPBE

    • 4FSWJDFͱ*OHSFTT • $POGJH.BQͱ4FDSFUT • ؔ࿈ϫʔυʮίϯτϩʔϥʔʯ • ίϯτϩʔϥʔ͕ϦιʔεΛ؂ࢹͯ͠ɺ,VCFSOFUFTͷੈքΛ ઃఆ௨Γʹอͭಇ͖Λͯ͘͠ΕΔ
  7. 48 ,VCFSOFUFTͷ༏Εͨػೳ • ηϧϑώʔϦϯά • ϩʔϦϯάΞοϓσʔτ • Ϧιʔε؅ཧ • εέʔϦϯά

    • ϩʔυόϥϯγϯά • αʔϏεσΟεΧόϦʔ • ઃఆɾػີൿಗ৘ใͷ؅ཧ
  8. 49 ,VCFSOFUFTͷ༏Εͨػೳ • ηϧϑώʔϦϯά • ϩʔϦϯάΞοϓσʔτ • Ϧιʔε؅ཧ • εέʔϦϯά

    • ϩʔυόϥϯγϯά • αʔϏεσΟεΧόϦʔ • ઃఆɾػີൿಗ৘ใͷ؅ཧ ΞϓϦέʔγϣϯ͕ࢭ·Βͣ ࢖͍ଓ͚ΒΕΔ ෼͔Γ΍҆͘͢શʹΞϓϦέʔγϣϯΛ ؅ཧͰ͖Δ Ϣʔβʔͱίϯςφͷ઀ଓɺ ίϯςφಉ࢜ͷ઀ଓΛࢧ͑Δ গ͠Ͱ΋෼͔Γ΍͘͢ͳΔΑ͏ ΍΍ڧҾʹ ΧςΰϥΠζ͠·ͨ͠ ϝϦοτʹ͸ॏෳ΋͋ΔͨΊ׬શʹਖ਼֬Ͱ͸͋Γ·ͤΜ͕ ཧղͷώϯτʹͲ͏ͧ
  9. 50 ηϧϑώʔϦϯά ࣗݾम෮ • ॲཧ͕ࣦഊͨ͠ίϯςφΛऴྃɾೖΕସ͑ɾ࠶ىಈ͠ɺ ॲཧͰ͖Δঢ়ଶΛอͭ • 3FQMJDB4FUΛ࢖ͬͨࡍͷηϧϑώʔϦϯά • ඞཁͳ਺ͷ1PE͕Քಇ͢ΔΑ͏ࣗಈͰ։࢝ɾఀࢭ͢Δ

    • 3FQMJDB4FUҎ֎Ͱ΋ߦ͑Δ1PEͷϔϧενΣοΫ • ϔϧενΣοΫͷ࢓૊ΈΛͭඋ͍͑ͯΔ • ࠶ىಈͷϧʔϧΛઃఆ͓͚ͯ͠͹ࣗಈͰίϯςφΛम෮͢Δ
  10. 55 Ϧιʔε؅ཧɺεέʔϦϯά • ϊʔυͷ$16΍ϝϞϦͷۭ͖ʹԠͯ͡ɺ֤1PEΛͲͷϊʔυͰ Քಇ͢Δ͔͕ࣗಈతʹܾఆ͞ΕΔ • %FQMPZNFOU΍3FQMJDB4FUΛ࢖͍ͬͯΔ৔߹ɺ$16࢖༻཰ʹԠ͡ ͯ1PEΛΦʔτεέʔϦϯά͢Δ • ؀ڥʹΑͬͯ͸ΫϥελʔͷΦʔτεέʔϦϯά΋ՄೳͳͷͰ

    ϊʔυͷ௥Ճɾ࡟আ͕ߦΘΕΔ • ΦʔτεέʔϦϯάͱ͸Ϧιʔεͷۭ͖Λݟͯɺ଍Γͳ͘ͳͬ ͖ͯͨΒ૿Ճͤ͞ εέʔϧΞ΢τ ɺ༨͍ͬͯͨΒݮগ εέʔ ϧΠϯ ͤ͞ΔมߋΛࣗಈͰՃ͑Δ͜ͱ
  11. 56 ϩʔυόϥϯγϯάɺ αʔϏεσΟεΧόϦʔ • 4FSWJDFϦιʔε͕ࢦఆͨ͠௨Γͷϩʔυόϥϯγϯά ΍αʔϏεσΟεΧόϦʔΛ࣮ݱ͢Δ • ϩʔυόϥϯγϯάಛఆͷ1PEʹෛՙ͕ूத͠ͳ͍Α͏ʹ ͢Δ •

    αʔϏεσΟεΧόϦʔ4FSWJDFΛݟ͚ͭͨΓؔ࿈͢Δ1PE Λྻڍͨ͠Γ͢Δ • *OHSFTTϦιʔε͕Ϋϥελʔ֎ͱ4FSWJDF͕઀ଓͰ͖Δ Α͏)551 4 ͷܦ࿏Λઃ͚Δ
  12. 63 ͢΂ͯͷઃఆ͸ϑΝΠϧͰ࣮ݱ͢Δ • :".- +40/΋Մ Ͱॻ͔ΕͨʮϚχϑΣετϑΝΠϧʯͱ͍͏ ઃఆϑΝΠϧΛ࢖͏ apiVersion: v1 kind:

    Pod metadata: name: myapp-pod labels: app: myapp spec: containers: - name: myapp-container image: busybox command: ['sh', '-c', 'echo Hello Kubernetes! && sleep 3600'] apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment labels: app: nginx spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.14.2 ports: - containerPort: 80
  13. 64 ʮએݴతͳʯઃఆ • ઃఆϑΝΠϧʹ͸ཧ૝ͱ͢Δঢ়ଶΛهड़͢Δ • աఔΛهड़͢Δʮ໋ྩతͳʯઃఆͱ͸ରশతͳΞϓϩʔν • ݁Ռ͚ͩΛߟ͑Ε͹ྑ͍ͨΊ෼͔Γ΍͍͢ • όʔδϣϯؒͷൺֱ΍੾Γସ͕͑༰қʹߦ͑Δ

    ձܭ1PE ձܭ1PE ໋ྩతઃఆ ઌഐௐཧ1PEΛ༻ҙ͢Δ ˠޙഐௐཧ1PEΛ༻ҙ͢Δ ˠձܭ1PEΛ༻ҙ͢Δ ˠձܭ1PEΛ༻ҙ͢Δ ˠձܭ1PEΛ༻ҙ͢Δ ઌഐௐཧ1PE ޙഐௐཧ1PE એݴతઃఆ ઌഐɾޙഐௐཧ1PEΛͭ ձܭ1PEΛͭ ձܭ1PE
  14. 65 ϕετϓϥΫςΟεΛऔΓೖΕΔ • *OGSBTUSVDUVSFBT$PEFΠϯϑϥͷઃఆΛίʔυͱͯ͠؅ཧ • ख࡞ۀͰߦ͍ͬͯͨΠϯϑϥͷ࡞੒ɾઃఆɾςετ౳ΛࣗಈԽͰ͖Δ • (JUͳͲόʔδϣϯ؅ཧγεςϜͰอ؅Ͱ͖ΔͨΊɺաڈͷόʔδϣϯ Λ֬ೝͨ͠Γ࠶ར༻ͨ͠Γ͢Δ͜ͱ͕༰қͱͳΔ •

    ಉ͡ΠϯϑϥઃఆΛϛεͳ͘࠶ݱͰ͖Δ • *NNVUBCMF*OGSBTUSVDUVSFΠϯϑϥΛΠϛϡʔλϒϧ ෆม ͳ ΋ͷͱͯ͠؅ཧ • ౓ߏஙͨ͠Πϯϑϥʹ͸खΛೖΕͣɺߋ৽͍ͨ͠ͱ͖͸࡞Γ௚͢ • Կ౓΋มߋΛՃ͑Δ͜ͱʹΑΔෳࡶੑΛഉআ͢Δ • ಈ࡞֬ೝʹ༻͍ͨ؀ڥΛͦͷ··࢖͑ΔͨΊ҆ఆ͠΍͍͢
  15. 68 ,VCFSOFUFTجૅ஌ࣝ • ೥݄೔ʹϦϦʔε͞Εͨ • ൃදͱಉ࣌ʹ(PPHMFͱ-JOVY'PVOEBUJPOʹΑΓ$MPVE /BUJWF$PNQVUJOH'PVOEBUJPO $/$' ͕ઃཱ͞Εɺࠓ ΋$/$'͕ϝϯςφϯε͍ͯ͠Δ

    • Ϋϥ΢υɺΦϯϓϨͷ͍ͣΕͰ΋࢖͑Δ • Ϋϥ΢υαʔϏε"NB[PO&MBTUJD$POUBJOFS4FSWJDFGPS,VCFSOFUFT &,4 "[VSF ,VCFSOFUFT4FSWJDF ",4 (PPHMF,VCFSOFUFT&OHJOF (,& ͳͲ • ΦϯϓϨͰ࢖͑ΔެࣜπʔϧLVCFBEN
  16. 71 ·ͱΊ • ,VCFSOFUFTͷ֎ͱதΛେ·͔ʹͱΒ͑Α͏ͱ͖ͯͨ͠ • ٕज़ͷτϨϯυʹ͸എܠ΍ཧ༝͕͋Δ͜ͱΛཧղͨ͠ ্Ͱ޲͖߹͑͹গ͠ා͘ͳ͘ͳΔ͸ͣ • ࠓ೔ͷ಺༰͸·͞ʹʮ͸͡ΊͷҰาʯ •

    ,VCFSOFUFT͸೉͍͠ • ࣮ࡍʹ࢖͏ʹ͸΋ͬͱͨ͘͞Μͷ͜ͱΛ஌Δඞཁ͕͋ΔͷͰ ΍ͬͺΓࠓ͙͢ӡ༻։࢝ΛקΊΔ͓࿩Ͱ͸ͳ͍ • Ͱ΋ɺΞϓϦέʔγϣϯ։ൃɾӡ༻Λ͢Δͷʹେࣄͳ஌ࣝ΍ ߟ͑ํ͕٧·͍ͬͯͯɺֶͿՁ஋͕͋Δ
  17. 72 ͓·͚ ࠓ೔ѻͬͨΩʔϫʔυ ͓͞Β͍ʮؤுͬͨͧʯͱࢥ͏༻  ΦʔέετϨʔγϣϯ1PE8PSLMPBEϦιʔείϯτϩʔϥʔ 3FQMJDB4FU%FQMPZNFOU4UBUFGVM4FU+PC$SPO+PC%BFNPO4FUΫϥελʔ ϊʔυίϯτϩʔϧϓϨʔϯϊʔυηϧϑώʔϦϯάϔϧενΣοΫ ϩʔϦϯάΞοϓσʔτϦιʔε؅ཧ Φʔτ

    εέʔϦϯάΦʔτε έʔϦϯάεέʔϧΞ΢τεέʔϧΠϯϩʔυόϥϯγϯάαʔϏε σΟεΧόϦʔ4FSWJDF*OHSFTT$POGJH.BQ4FDSFUTϚχϑΣετϑΝΠϧ એݴతઃఆ໋ྩతઃఆ*OGSBTUSVDUVSFBT$PEF*NNVUBCMF *OGSBTUSVDUVSFLVCFDUM$/$'
  18. 73 ࢀߟจݙ • ,VCFSOFUFTυΩϡϝϯτ IUUQTLVCFSOFUFTJPKBEPDTIPNF • ੨ࢁਅ໵ʰ,VCFSOFUFT׬શΨΠυʱୈҰ൛ɺୈೋ൛ • ,FMTFZ)JHIUPXFS #SFOEBO#VSOT

    +PF#FEBʰೖ໳ ,VCFSOFUFTʱ • +PIO"SVOEFM +VTUJO%PNJOHVTʰ,VCFSOFUFTͰ࣮ફ͢ΔΫϥ΢ υωΠςΟϒ%FW0QTʱ