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

ウェブサービスのCentOS5撤退 / Centos5 Retiring For Web Servicies

ウェブサービスのCentOS5撤退 / Centos5 Retiring For Web Servicies

Hosting Casual Talks #3

Yuuki Tsubouchi (yuuk1)

June 28, 2016
Tweet

More Decks by Yuuki Tsubouchi (yuuk1)

Other Decks in Technology

Transcript

  1. ΢ΣϒαʔϏεͷ
    $FOU04ఫୀ
    Z@VVLJ
    )PTUJOH$BTVBM

    View Slide

  2. @y_uuk1
    id:y_uuki
    ΢ΣϒΦϖϨʔγϣϯΤϯδχΞ
    @͸ͯͳ

    View Slide

  3. CentOS 5
    EOL

    View Slide

  4. ͋ͱ9ϲ݄

    View Slide

  5. EOL੾ΕϦεΫ
    • ੬ऑੑରԠ͕೉͘͠ͳΔ
    • OpenSSLͳͲͷηΩϡϦςΟύονͷ͋ͨͬͨ
    ύοέʔδͷߋ৽͕ͳ͘ͳΔ
    • ֎෦αΠτͷTLSࣄ৘ʹ௥͍͚ͭͳ͘ͳΓɺ઀ଓ
    Ͱ͖ͳ͘ͳΔ
    • CentOS 5ͷOpenSSL͸0.9.8ܥͰݹ͍
    • TLS 1.2ʹඇରԠ + SNI͕࢖͑ͳ͍ͳͲ

    View Slide

  6. 1000+ CentOS5
    100+ roles

    View Slide

  7. ରࡦ͢Δαʔόͷબ୒
    • ϦόʔεϓϩΩγ
    • ֎෦͔Β઀ଓΛड͚෇͚ΔɻTLS઀ଓ͢Δ΋ͷ༏ઌ
    • ΞϓϦέʔγϣϯαʔόɺόοναʔόɺϫʔΧ
    • ͳΜΒ͔ͷϏδωεॲཧΛ࣮ߦ͢Δαʔό
    • Ϋϩʔϥ΍֎෦APIΛୟ͘ͱ͜ΖΛ༏ઌ
    • ϦεΫͷ௿͍σʔλϕʔε͸ޙճ͠
    • ͦͷଞ֎෦ͱͷ઀఺ͷͳ͍؅ཧܥαʔό΋ޙճ͠

    View Slide

  8. ରࡦํ਑
    • ☓ ࣗ෼ͰηΩϡϦςΟύονΛ͋ͯΔ
    • ࠷ऴखஈͱ͍ͨ͠
    • ☓ CentOS 7ʹΞοϓάϨʔυ
    • ○ ଞͷσΟετϦ΁Ҡߦ
    • 5೥લ͔Β৽αʔϏε͸Debian

    View Slide

  9. DebianԽʢϓϩΩγʣ
    • ݱࡏͷ؀ڥ͸ Apache2 or Nginx
    • httpd.conf͕؆୯ͳ΋ͷ͸Nginx΁
    • ؆୯Ͱͳ͍΋ͷ͸Apache 2ͷ࠷৽൛΁
    • 300ߦͷRewriteRule
    • ςετίʔυΛॻ͍ͯಈ࡞֬ೝ͢Δ

    View Slide

  10. https://github.com/yuuki/
    yuuki/blob/master/misc/
    proxy-config-test.md

    View Slide

  11. DebianԽʢΞϓϦέʔγϣϯʣ
    • mod_perl1, mod_perl2ΛDebianͰϏϧυ
    • rpmԽ͞ΕͨCPANϞδϡʔϧ؅ཧΛ
    cpanfileԽ
    • XSͳͲCͷϥΠϒϥϦʹґଘ͢Δ΋ͷ΋͋
    ΔͨΊɺDebianͰϏϧυͰ͖Δ͔Ͳ͏͔

    View Slide

  12. mod_perl1, mod_perl2ΛϏϧυ
    • ϏϧυͰ͖ͳ͍ͷͳΒϞμϯͳ؀ڥʢPlackʣ
    ʹҠߦ͢Δඞཁ͕͋Δʢ΋ͷ͘͢͝େมʣ
    • DockerfileͰϏϧυ͠ϑΝΠϧαʔόʹઃஔ
    • ChefͰ /opt/httpdʹઃஔ͢Δ͚ͩ
    • Perlґଘ͕͋ΔͨΊdebύοέʔδԽ͕໘౗

    View Slide

  13. IUUQTHJUIVCDPNZVVLJEPDLFSpMFT
    USFFNBTUFSNPE@QFSM

    View Slide

  14. cpanfileԽ
    • rpm -qa perl ͔Βੜ੒
    • ҰൃͰ carton install ͕௨ΔΑ͏ʹͳ
    Δ·Ͱͱʹ͔͕͘Μ͹Δ
    • ಈ࡞֬ೝͯ͠ಈ͔ͳ͔ͬͨΒɺCPAN
    Ϟδϡʔϧͷόʔδϣϯͷࠩ෼Λٙ͏

    View Slide

  15. initεΫϦϓτ vs daemontools
    • Systemd …
    • daemontoolsͰࠔ͍ͬͯͳ͍ͷͰ
    daemontoolsԽ
    • daemontools͸มԽ͕ͳ҆͘ఆͯ͠
    ͍ͯࠓޙ΋҆৺

    View Slide

  16. ม͑ͳ͍΋ͷ
    • Perlͷόʔδϣϯ
    • mod_perlϝδϟʔόʔδϣϯ
    • Apacheϝδϟʔόʔδϣϯ
    • CPANϞδϡʔϧͷόʔδϣϯ
    • ݹ͍΋ͷ͕खʹೖΒͳ͍Մೳੑ͸͋Δ

    View Slide

  17. Ұ൪େมͳͷ͸
    ಈ࡞֬ೝ

    View Slide

  18. ಈ࡞֬ೝ
    • ݹ͍ΞϓϦέʔγϣϯ͸ςετ͕ͳ͍
    • खಈͰ͕Μ͹Δ
    • ϓϩΩγઃఆͷςετͲ͏͢Δͷ͔
    • PerlͰૉ๿ʹHTTPΛୟ͘ςετΛॻ
    ͍ͯΔ

    View Slide

  19. ೖΕସ͑࡞ۀ
    • ϩʔυόϥϯα഑Լʹ1୆͚ͩ౤ೖ༷͠
    ࢠݟ
    • ΤϥʔϩάͳͲΛSlackʹྲྀ͢
    • ໰୊͕ى͖ͨΒ௚͢
    • શ୆ೖΕସ͑

    View Slide

  20. Debian8ͷEOL
    2020-06ʢLTSʣ

    View Slide

  21. ͋ͱ4೥

    View Slide

  22. ΞοϓσʔταΠΫϧ
    Λճ͠ଓ͚ΔͨΊʹ͸

    View Slide

  23. ࡞ۀ಺༰͓͞Β͍
    • ৽OS্Ͱmod_perlϏϧυ
    • cpanfile࡞੒
    • αʔόͷ࡞Γ௚͠ͱஔ͖׵͑
    • ΞϓϦέʔγϣϯͷಈ࡞֬ೝ
    • ϓϩΩγͷಈ࡞֬ೝ

    View Slide

  24. ϛυϧ΢ΣΞґଘ͠ͳ͍ςετ
    • Apache => nginxͷΑ͏ʹಉ͡໾ׂͷϛ
    υϧ΢ΣΞΛϦϓϨΠε͢Δ͜ͱ͕͋Δ
    • ઃఆϑΝΠϧΛςετ͢ΔͷͰ͸ͳ͘ɺ
    ֎͔ΒΈͨৼΔ෣͍Λςετ͢Δ
    • ϓϩΩγͷ৔߹͸ɺ࣮ࡍʹϦΫΤετ͢
    ΔςετΛॻ͘

    View Slide

  25. ΞϓϦέʔγϣϯ؀ڥͷ෼཭
    • ͍·ͩͱαʔό͝ͱ৽͘͠༻ҙͯ͠ೖΕସ
    ͕͑ඞཁ
    • ݹͯ͘ࠔΔͷ͸ΞϓϦέʔγϣϯ
    • ΞϓϦέʔγϣϯ࣮ߦ؀ڥΛಠཱͯ͠Ξο
    ϓσʔτ͍ͨ͠
    • ίϯςφԽ (chrootɺDocker)

    View Slide

  26. ͓ΘΓ

    View Slide