OpenFaaS x Rancher が気づかせてくれたこと

Ef19abf625b73a5d01e309326bedb278?s=47 CapsuleCloud
November 15, 2017

OpenFaaS x Rancher が気づかせてくれたこと

Rancher Meetup Tokyo #11で発表した内容です。
https://rancherjp.connpass.com/event/68806/

どのベンダーにも依存しないServerless FrameworkなOpenFaaS。実際に使うことで気づいたServerlessの意義とは

crash.academy
https://crash.academy/class/187

Ef19abf625b73a5d01e309326bedb278?s=128

CapsuleCloud

November 15, 2017
Tweet

Transcript

  1. 1.

    0QFO'BB4Y3BODIFS͕ ɹɹɹɹɹɹؾ͔ͮͤͯ͘Εͨ͜ͱ        

       3 B O D I F S  . F F U V Q  5 P L Z P    
  2. 2.

    ࣗ ݾ ঺ հ  ࢁ ᖒ  Ұ ਔ

    Yamazawa Kazuhito ෱ ࢁ  ݈ Fukuyama Ken !LFOGEFW ϑϩϯτΤϯυ νʔϜϦʔμʔ όοΫΤϯυ ث༻ශ๡ !LZBNB[BXB@TTM
  3. 3.

    ձ ࣾ ঺ հ  ˔ ೥ઃཱͷιϑτ΢ΣΞ։ൃձࣾ ˔ ڌ఺ɿେࡕ ຊࣾ

    ɺ౦ژɺ޿ౡɺ෱Ԭ ˔ ૊ΈࠐΈ͔ΒεϚϗΞϓϦɺ"*·Ͱ৭ʑ΍͍ͬͯ·͢ ࣗࣾΫϥ΢υαʔϏεɿ$BQTVMF$MPVE I U U Q T    D B Q T V M F D M P V E  J P ג ࣜ ձ ࣾ ε ʔ ύ ʔ ι ϑ τ ΢ Τ Ξ 4 V Q F S 4 P G U X B S F  $ P  - U E ΦϦδφϧΞχϝɿϖʔύʔͷதʹ͋ΔΧϛΛ৯΂Δ I U U Q T    Z P V U V  C F  %  4 + [ N 1 J W  : εϚϗΞϓϦ ɿອըΧϝϥ
  4. 6.

     0 Q F O ' B B 4 ͱ

    ͸ %PDLFS্Ͱಈ͘4FSWFSMFTTͳ'SBNFXPSL ίϯςφʹೖ͍ͬͯΕ͹ԿͰ΋'VODUJPOʹͳΓಘΔ ʜ %PDLFS4XBSNͱ,VCFSOFUFTͰͷಈ࡞͕αϙʔτ͞Ε͍ͯΔ
  5. 7.

     0 Q F O ' B B 4 ͱ

    ͸ ਓؾٸ্ঢதʂ
  6. 9.

    4FSWFSMFTTͳ࣮ྫʢ($1ʣ Ͷ͐(PPHMFɺ ࠓ೔ͷఱؾ͸ʁ  $ M P V E 


    ' V O D U J P O T \lJOUFOUz l'JOE8FBUIFSz^ \lTQFFDIz lࠓ೔͸੖ΕͰ͢z^
  7. 11.

    0 Q F O ' B B 4 ͷ ࢓

    ૊ Έ  gateway / / F U D  'O" Deploy Deploy Orchestrator API 'VODUJPO4UBDL 'O# Invoke Metrics/Scale جຊߏ੒ /
  8. 12.

    0 Q F O ' B B 4 ͷ ࢓

    ૊ Έ  gateway 'O" Deploy Deploy Orchestrator API 'VODUJPO4UBDL 'O# Invoke Metrics/Scale 'O" 'O" Scale ΍͹͘ͳͬͨΒࣗಈతʹεέʔϧʂ / / F U D  /
  9. 13.

     HTTP )FBEFST #PEZ )FBEFST #PEZ /usr/bin/node index.js SFRVFTU ඪ४ೖྗ

    TUEJO TUEPVU ඪ४ग़ྗ SFTQPOTF GQSPDFTT 'VODUJPOͷ࢓૊Έ 0 Q F O ' B B 4 ͷ ࢓ ૊ Έ
  10. 15.

    S e r v e r l e s s

    ʁ  S e r v e r l e s s ʁ
  11. 16.

     4 F S W F S M F T

    T https://www.slideshare.net/Docker/dockercon-eu-2017-general-session-day-1
  12. 17.

     “ C u s t o m e r

    s w a n t d e p l o y m e n t f l e x i b i l i t i e s . B u s i n e s s r u l e s c h a n g e . R e q u i r e m e n t s c h a n g e . R e g u l a t o r y e n v i r o n m e n t s c h a n g e . ” “ S e r v e r l e s s h a s t o b e a n y w h e r e . I t c a n ’ t b e l i n k e d o r t i e d t o a s i n g l e p l a t f o r m . ” - S t e v e S i n g h @ D o c k e r C o n E U 2 0 1 7 4 F S W F S M F T T  " O Z X I F S F “ C u s t o m e r s w a n t d e p l o y m e n t f l e x i b i l i t i e s . B u s i n e s s r u l e s c h a n g e . R e q u i r e m e n t s c h a n g e . R e g u l a t o r y e n v i r o n m e n t s c h a n g e . ” “ S e r v e r l e s s h a s t o b e a n y w h e r e . I t c a n ’ t b e l i n k e d o r t i e d t o a s i n g l e p l a t f o r m . ”
  13. 19.

    I n f r a s t r u c

    t u r e P o r t a b i l i t y 
  14. 20.

     Infrastructure Infrastructure Orchestrator Orchestrator P l u g &

    P l a y a b l e A p p l i c a t i o n C o r e
  15. 21.

    A p p l i c a t i o

    n P o r t a b i l i t y 
  16. 22.

     " Q Q  1 P S U B

    C J M J U Z Monolith Microservice Microservice Microservice Microservice Function Function Function Function Function Function Function Function ˚ ̋ ˕
  17. 25.

     $ M F B O  " S D

    I J U F D U V S F https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
  18. 26.

     $ M F B O  " S D

    I J U F D U V S F https://www.youtube.com/watch?v=Nltqi7ODZTM
  19. 27.

     $ M F B O  " S D

    I J U F D U V S F M a k e t h e D e l i v e r y M e c h a n i s m a P l u g i n t o y o u r A p p l i c a t i o n . A l l t h e a r c h i t e c t u r a l d e c i s i o n s w e w a n t t o d e f e r … H o w d o w e d e f e r t h e m ? W e t u r n t h e m i n t o p l u g i n s . R o b e r t C . M a r t i n ( U n c l e B o b ) M a k e t h e D e l i v e r y M e c h a n i s m a P l u g i n t o y o u r A p p l i c a t i o n . A l l t h e a r c h i t e c t u r a l d e c i s i o n s w e w a n t t o d e f e r … H o w d o w e d e f e r t h e m ? W e t u r n t h e m i n t o p l u g i n s .
  20. 28.

     “ S e r v e r l e

    s s i s a b o u t d e l i v e r i n g d e v e l o p e r e x p e r i e n c e . ” “ H o w f a s t c a n y o u i t e r a t e ? " “ H o w f a s t c a n y o u g e t t h e c o d e o u t ? ” “ H o w e a s y c a n y o u m a k e i t ? ” - A l e x E l l i s @ D o c k e r C o n E U 2 0 1 7 4 F S W F S M F T T “ S e r v e r l e s s i s a b o u t d e l i v e r i n g d e v e l o p e r e x p e r i e n c e . ” “ H o w f a s t c a n y o u i t e r a t e ? " “ H o w f a s t c a n y o u g e t t h e c o d e o u t ? ” “ H o w e a s y c a n y o u m a k e i t ? ”
  21. 29.

     4 F S W F S M F T

    T  1 B O F M https://dockercon.docker.com/watch/5Ek8NH6M7Lbxsc4KZ9PNAg
  22. 30.

     4 F S W F S M F T

    T ͷ ҙ ٛ P o r t a b i l i t y D e v e l o p e r E x p e r i e n c e C u s t o m e r E x p e r i e n c e
  23. 32.

    ' V O D U J P O ͷ ࡞

    ੒ ϑ ϩ ʔ  QBDLBHFKTPO IBOEMFSKT faas-cli new Template Docker Image faas-cli build $POUBJOFS3FHJTUSZ faas-cli push جຊతʹ࣮૷͢Δͷ͸͚ͩ͜͜ʂ
  24. 33.

    ' V O D U J P O ͷ σ

    ϓ ϩ Π  $POUBJOFS3FHJTUSZ faas-cli deploy gateway 'VODUJPO 'VODUJPO 'VODUJPO Pull Pull Deploy Deploy Orchestrator API / / F U D  /
  25. 35.

    ࢀߟ  ˔ IUUQTHJUIVCDPNPQFOGBBTGBBT ˔ 0QFO'BB4ͷίΞϓϩδΣΫτ ˔ IUUQTHJUIVCDPNPQFOGBBTGBBTDMJ ˔ 0QFO'BB4Λศརʹ࢖͏ͨΊͷ$-*

    ˔ IUUQTHJUIVCDPNPQFOGBBTGBBTOFUFT ˔ LVCFSOFUFT্Ͱ0QFO'BB4Λಈ͔ͨ͢ΊͷίωΫλ ˔ IUUQTHJUIVCDPNPQFOGBBTJODVCBUPSGBBTSBODIFS ˔ 3BODIFS্Ͱ0QFO'BB4Λಈ͔ͨ͢ΊͷίωΫλ ˔ IUUQTHJUIVCDPNGBBTBOEGVSJPVT ˔ 0QFO'BB4ͷ044ͳ'VODUJPO͕ू·͍ͬͯΔ৔ॴ
  26. 38.