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

Progress the system operation drastically with Cloud Automator — AMIMOTO side—

Progress the system operation drastically with Cloud Automator — AMIMOTO side—

More Decks by Amimoto - Flexible Cloud WordPress Hosting

Other Decks in Technology

Transcript

  1. Progress the system operation drastically with Cloud Automator
    — AMIMOTO side—
    @Amimoto_Ami
    amimoto-ami.com
    The service design concept of Amimoto and its underlying thought

    View Slide

  2. WordPress users should want to focus on 

    their content publication.

    View Slide

  3. Summary
    You can launch high speed WordPress website on AWS, just a few clicks; 

    If you choose AMIMOTO.
    Launching high speed WordPress website which doesn’t not make full use of AMIMOTO.
    True worth to utilise the AMIMOTO, which is “you can fully focus to your business”.
    We AMIMOTO development team has always carried out the service of design for it.

    View Slide

  4. Technology base and services to support the Amimoto
    1. Automation → Fully automation
    2. Cloud Native → Full use of managed services
    3. MicroServices → Implementing functions as loosely-coupled
    By taking advantage of the three points above, everyone can develop in easily the same
    quality of the environment and services, to enable the operational management.
    We are providing the platform to build environment "to focus on your business".

    View Slide

  5. Issues to be solved
    1.Dark side of WordPress: Hard to full use of AWS scaleabilities;
    2.Bloated databases and tightly-coupled plugins: Hard to maintain WordPress;

    View Slide

  6. The way to solve
    1.The Infrastructure as Code with WordPress utilise JIN-KEI CloudFormation.
    2.Modern developing approach with MicroServices and Server-less Architecture.

    View Slide

  7. Session1

    View Slide

  8. WordPress
    with
    Infrastructure as Code
    @Amimoto_Ami
    ja.amimoto-ami.com

    View Slide

  9. Tentatively install plugins
    WordPress + Performance
    Manually server optimising
    Manually apps optimising

    View Slide

  10. ʊਓਓਓਓਓਓਓਓਓਓʊ
    ʼSir? I can’t find AWS on itʻ
    ʉY^Y^Y^Y^Y^Y^Y^Y^Yʉ

    View Slide

  11. Issues
    Google doesn’t scare me
    EC2 Dependancy
    More AWS you should learn
    By hand: the path to dark side

    View Slide

  12. Automate them!

    View Slide

  13. AutoScaling
    WordPress + Automation
    Utilise the Managed services
    Anyone can do it with
    CloudFormation

    View Slide

  14. AutoScaling
    WordPress + Automation
    Utilise the Managed services
    Anyone can do it with
    CloudFormation

    View Slide

  15. 8PSE1SFTTJTNBOBHFETFSWJDFTGSJFOEMZ
    w "NB[PO3%4
    w "NB[PO4
    w "NB[PO$MPVE'SPOU
    w "NB[PO$FSUJpDBUJPO.BOBHFS
    w FUDʜ
    Managed Services
    6TF.BOBHFE4FSWJDFT

    View Slide

  16. 1IZTJDBMMBZFS
    04
    .JEEMFXBSF
    "QQMJDBUJPO
    1IZTJDBMMBZFS
    04
    .JEEMFXBSF
    "QQMJDBUJPO
    Extent of Limitation of Liability
    Extent of Limitation of Liability
    EC2 Managed services

    View Slide

  17. 3FEVDFUIF
    lTZTUFNTUIBUTIPVMECF
    NBJOUBJOFEz
    XJUINBOBHFETFSWJDFT
    Managed Services
    6TF.BOBHFE4FSWJDFT

    View Slide

  18. AutoScaling
    WordPress + Automation
    Utilise the Managed services
    Anyone can do it with
    CloudFormation

    View Slide

  19. 8IFOUIFEFWFMPQNFOUNFUIPEBOEXPSL
    JTDPNQMJDBUFE BMMUIFEFWFMPQNFOUT
    XPVMEEFQFOEPOUIFIVNBOQPXFS
    &WFOJGZPVIBEMFWFSBHFENBOBHFE
    TFSWJDFT

    View Slide

  20. This architecture was ……

    View Slide

  21. we have just built same system while ago.
    https://amimoto.doorkeeper.jp/events/41522

    View Slide

  22. we have just built same system while ago.
    https://amimoto.doorkeeper.jp/events/41522

    View Slide

  23. we have just built same system while ago.
    https://amimoto.doorkeeper.jp/events/41522
    *GZPVCVJMEJUNBOVBMMZ 

    JU`TBMMEBZXPSL

    View Slide

  24. View Slide

  25. Automate linking up plugins
    CloudFormation
    Define resources by code
    Make unit with kumogata

    View Slide

  26. Codes are opened to the public on GitHub
    https://github.com/megumiteam/amimoto-enterprise-cfn

    View Slide

  27. Dividing the files to improve reusability
    _include 'include/vpc/vpc.rb'
    _include 'include/ec2/waithandle_ec2.rb'
    _include "include/security_group.rb"
    _include "include/elb.rb"
    _include 'include/iam/for_stack_001.rb'
    _include "include/cloudfront/cf.rb"
    _include "include/s3/s3-media.rb"
    https://github.com/megumiteam/amimoto-enterprise-cfn/blob/master/
    include/001-base-resource.rb

    View Slide

  28. Of course listed on AWS MP
    https://aws.amazon.com/marketplace/pp/B01B3ZE1NC/

    View Slide

  29. Aurora edition is ready
    https://aws.amazon.com/marketplace/pp/B01B3ZE1NC/
    "VSPSB3FBEZ

    View Slide

  30. .BOVBMMZ

    CVJMETUBDLGSPNQJFDFTGPSBMMEBZ


    $MPVE'PSNBUJPO

    BGFXDMJDLTMBVODIJONJO
    8IJDIJTUIFCFUUFSTUB⒎GPSZPVSCVTJOFTT

    View Slide

  31. AutoScaling
    WordPress + Automation
    Utilise the Managed services
    Anyone can do it with
    CloudFormation

    View Slide

  32. Bottle neck: file systems
    AutoScaling
    Automate scale up and down
    Auto recovery

    View Slide

  33. 'JMF4ZTUFN

    View Slide

  34. View Slide

  35. CloudFormation compatible
    http://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/aws-
    resource-efs-filesystem.html

    View Slide

  36. *U`TBQSFWJFXFEJUJPOOPX 

    CVUJU`TNPSFUIBOUIBU

    View Slide

  37. AutoScale architecture on 

    AMIMOTO Managed Hosting

    View Slide

  38. 1FPQMFTBZ

    :PVTIPVMENBJOUBJO
    "VUP4DBMFBSDIJUFDUVSF UPP

    View Slide

  39. GPSFYBNQMF
    w 8IBUXFBSFHPJOHUPEPJG$PEF%FQMPZBHFOUIBTDSBTIFE
    w /PWJDFFOHJOFFSDBOCVJMETBNFTZTUFN TBNFBSDIJUFDUVSF
    w $BOXFTFMMUIFNPO"84.BSLFU1MBDF

    View Slide

  40. Now Developing

    View Slide

  41. Session2

    View Slide

  42. AMIMOTO + Server-less Architecture
    @Amimoto_Ami
    amimoto-ami.com
    Server-less Architecture on AMIMOTO

    View Slide

  43. Summary
    1. Maintenance free infrastructure
    2. Cost effective
    3. Implementing functions as loosely-coupled with MicroServices
    On the feature developments of AMIMOTO, our developers commit to the implement the
    server-less architecture to reap the following benefits:

    View Slide

  44. 1. Maintenance free infrastructure
    2. Cost effective
    3. Implementing functions as loosely-coupled with MicroServices

    View Slide

  45. 1IZTJDBMMBZFS
    04
    .JEEMFXBSF
    "QQMJDBUJPO
    1IZTJDBMMBZFS
    04
    .JEEMFXBSF
    "QQMJDBUJPO
    Extent of Limitation of Liability
    Extent of Limitation of Liability
    EC2 Managed services

    View Slide

  46. 1. Maintenance free infrastructure
    2. Cost effective
    3. Implementing functions as loosely-coupled with MicroServices

    View Slide

  47. Time
    Cost
    Time
    Cost
    EC2 Lambda

    View Slide

  48. 1. Maintenance free infrastructure
    2. Cost effective
    3. Implementing functions as loosely-coupled with MicroServices

    View Slide

  49. Current WordPress feature development
    8PSE1SFTT$PSF

    1MVHJO
    1MVHJO
    1MVHJO
    1MVHJO

    1MVHJO

    View Slide

  50. Issue that occur
    • Bloated source codes;
    • Bloated database;
    • Tightly-coupled features,
    core and themes ;
    • These will make Auto
    Scaling malfunction;
    8PSE1SFTT$PSF
    1MVHJO 1MVHJO 1MVHJO 1MVHJO
    1MVHJO 1MVHJO 1MVHJO 1MVHJO
    1MVHJO 1MVHJO 1MVHJO 1MVHJO

    View Slide

  51. Solution
    Idea: MicroServices

    View Slide

  52. Microservices
    • Building system with multiple components;
    • Each component is able to run as an
    independents system;
    • Loose coupling;
    • Linking system with Restful API

    View Slide

  53. 8PSE1SFTT$PSF
    $POOFDUPS1MVHJO
    "1* "1* "1*
    .JDSP4FSWJDF .JDSP4FSWJDF .JDSP4FSWJDF
    Future WordPress feature development

    View Slide

  54. Implementation
    Case 1

    View Slide

  55. Issue
    More power to search feature

    View Slide

  56. 1. WordPress has simply LIKE search feature for title and body, have not full-text search
    feature.
    2. Retrieval processing speed is rapidly decreasing if you customise the custom field in the
    search.
    3. More contents published, more DB loads
    Issues

    View Slide

  57. AMAZON 

    Elasticsearch
    Awesome Search

    View Slide

  58. Architecture
    8PSE1SFTT$PSF
    $POOFDUPS1MVHJO
    "1*
    ".";0/&MBTUJDTFBSDI

    View Slide

  59. Implementation
    Case 2

    View Slide

  60. Problem
    Visualise sales data through site search.

    View Slide

  61. AMAZON 

    lambda
    AMAZON 

    DynamoDB
    AMAZON 

    API Gateway
    Implement visualising feature with Server-less Architecture

    View Slide

  62. Architecture
    8PSE1SFTT$PSF
    $POOFDUPS1MVHJO
    "1* "1* "1*
    'VMMUFYUTFBSDI
    $PMMFDU
    TVCTDSJQUJPOEBUB
    7JTVBMJTF
    TVCTDSJQUJPOEBUB

    View Slide

  63. View Slide

  64. 'VMM5FYU
    4FBSDI
    %BUB7JTVBMJTJOH
    %BUB$PMMFDUJPO

    View Slide

  65. View Slide

  66. Implementation
    Case 3

    View Slide

  67. Problem
    Give us AMIMOTO user console page

    View Slide

  68. Cognito 

    User Pools
    Awesome 

    user authentication
    infrastructure

    View Slide

  69. View Slide

  70. View Slide

  71. View Slide

  72. Changes in development methodology
    with Server-less Architecture

    View Slide

  73. Why development method is changed?
    1.Develop, test and deploy them in the world without SSH;
    2.Rendering transition: server-side to client-side;
    Wu will not be able to use the development method
    which has been developed on the assumption that the server is present.

    View Slide

  74. 1. Develop, test and deploy them in the world without SSH;
    2. Rendering transition: server-side to client-side;

    View Slide

  75. • Project management with API Gateway and
    Lambda;
    • Run Lambda in locally;
    • Centralised configuration of API Gateway;
    • Switching development, staging and production
    stage;
    • Deploying to AWS;
    • Publishing your homebrew apps to GitHub;
    Serverless Framework

    View Slide

  76. 1. Develop, test and deploy them in the world without SSH;
    2. Rendering transition: server-side to client-side;

    View Slide

  77. • Rich UI library specialised in View;
    • Rendering with precompiled;
    • Lightweight, easy to coding;
    • Easy to make the application for the API Gateway
    Lambda as a View;
    Riot.js

    View Slide

  78. http://qiita.com/horike37
    For more detail about the architecture, I've already posted to Qiita, includes source code.
    Check out my Qiita page. Thanks!

    View Slide

  79. Conclusion

    View Slide

  80. Issues and Solutions
    1.Dark side of WordPress: Hard to full use of AWS scaleabilities;
    2.Bloated databases and tightly-coupled plugins: Hard to maintain WordPress;

    View Slide

  81. We’ll resolve them all

    View Slide

  82. Issues and Solutions
    OK, now we can develop it with automation. 

    What about the operations?

    View Slide

  83. ʊਓਓਓਓਓਓਓਓਓਓਓʊ
    ʼMake operation automateʻ
    ʉY^Y^Y^Y^Y^Y^Y^Y^Y^Yʉ

    View Slide

  84. Next Stage

    View Slide

  85. @Amimoto_Ami
    amimoto-ami.com
    THANK YOU!

    View Slide