Slide 1

Slide 1 text

Copyright (c) 2018, Japan Digital Design, Inc., All rights reserved. 2018-09-20 JDDStudy #3 @ TECH PLAY SHIBUYA Japan Digital Design, Inc. Takuya Noguchi / @tn961ir DevOps in JDD

Slide 2

Slide 2 text

Takuya Noguchi ! 20-yr engineering in digital transformation (DX) ! Software Engineer, Japan Digital Design ! Activities • Core Team member, GitLab (OSS) • Cloud Native Ambassador, CNCF • Co-organizer of • GitLab Meetup Tokyo • Docker Tokyo • Kamiyacho.k8s • Prometheus Tokyo • Working on kubernetes-docs-ja 2

Slide 3

Slide 3 text

Engineering at Japan Digital Design ! Found in Oct 2017 (Spun out from MUFG) • Former Innovation Lab, MUFG Bank (Jan 2016) • See MUFG Report 2018 ! Revolutionary UX and other initiatives • aimed at reducing social cost • Wider objectives than FinTech ! 22 in engineering role out of 80 employees ! 7 projects 3 https://www.japan-d2.com MUFG AI Studio

Slide 4

Slide 4 text

Copyright (c) 2018, Japan Digital Design, Inc., All rights reserved. What’s DevOps 4

Slide 5

Slide 5 text

Copyright (c) 2018, Japan Digital Design, Inc., All rights reserved. What’s DevOps ! Read the book if you’re new to DevOps • Translated to Japanese ! “10 deploys per day” • At Flickr • (Velocity 2009) 5 https://www.amazon.com/dp/1491926309

Slide 6

Slide 6 text

DevOps is not only the combination of tools ! DevOps requires toolchain(s) • But it also does dev culture and collaboration 6

Slide 7

Slide 7 text

GitLab: single suite for complete DevOps ! 67 % market share (for Enterprise) ! Suitable for startups as well 7 https://about.gitlab.com https://about.gitlab.com/2017/06/29/whats-next-for-gitlab-ci/

Slide 8

Slide 8 text

Kubernetes integration ! Containerization of apps is important for cloud- native way ! Orchestration is crucial to manage containers ! Not famous in Japan yet… 8

Slide 9

Slide 9 text

Copyright (c) 2018, Japan Digital Design, Inc., All rights reserved. DevOps in JDD 9

Slide 10

Slide 10 text

Benefits of DevOps in JDD ! Asynchronous working style • Non-full-time members in team • Frequent work from home ! In “Legacy” enterprise way ! One-person operations ! Avoid SPOF ! Make infrastructure as code ! Adopt four-eye principle to development 10

Slide 11

Slide 11 text

Starts with PLAN ! Just started with Plan 11

Slide 12

Slide 12 text

Plan ! Planning is the most important phase ! Had multiple planning tools ! Starting to unify tools 12 + +

Slide 13

Slide 13 text

DevOps in small organization ! Devs will do Ops (DevOps) ! Org gets benefits of infrastructure from modern public clouds ! Monitoring and on-call will go later ! Developers can get experiences in operations!! 13

Slide 14

Slide 14 text

Copyright (c) 2018, Japan Digital Design, Inc., All rights reserved. Initial initiative of DevOps in JDD 14

Slide 15

Slide 15 text

! Manual management of DNS records ! Improved with GitLab CI/CD • OctoDNS (by GitHub) • Google Cloud DNS • DNSSEC-enabled • YAML-based records ! Code→MR→Review→Dry run→Go production Full integration of DNS management in DevOps 15

Slide 16

Slide 16 text

Code for CI/CD (.gitlab-ci.yml) image: "python:2.7-alpine3.8" variables: GCLOUD_CRED: "" GOOGLE_APPLICATION_CREDENTIALS: "" before_script: - echo ${GCLOUD_CRED} | base64 -d | tee ${GOOGLE_APPLICATION_CREDENTIALS} > / dev/null - pip install -r requirements.txt production: stage: planning script: - octodns-sync --config-file ./jdd-domains.yaml deploy_production: stage: deploy script: - octodns-sync --config-file ./jdd-domains.yaml --doit environment: name: production url: https://japandigital.design/ only: - master when: manual 16

Slide 17

Slide 17 text

17 Code for updating the records (MR & Review)

Slide 18

Slide 18 text

Verify & Monitoring ! Daily verification with GitLab CI/CD 18 Fully automated tests every 24 hour

Slide 19

Slide 19 text

Our TODOs ! Python 3 support • Python 2.7 support EOL in Jan 2020 • In progress (contributions to OSS) • JDD supports engineers to make contributions to OSS. ! Multi DNS provider support • Cloud DNS SLA: 100% • Mitigation to DDoS attack 19 https://www.cloudflare.com/dns/

Slide 20

Slide 20 text

20 Future plans in JDD Serverless Container Dev DataOps

Slide 21

Slide 21 text

Let’s adopt IT practices to financial industry ! Join us if you want to do digital transformation ! Careers at JDD • https://careers.japan-d2.com/ • Software Engineer • Infrastructure Engineer (public cloud) • Software Engineer (Android, iOS) • UX Designer • Data Scientist 21

Slide 22

Slide 22 text

Copyright (c) 2018, Japan Digital Design, Inc., All rights reserved.