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

App Dev/Runtime for Cloud Native Era

App Dev/Runtime for Cloud Native Era

JJUG CCC 2019 Spring

Nobuhiro Sue

May 18, 2019
Tweet

More Decks by Nobuhiro Sue

Other Decks in Technology

Transcript

  1. Cloud Native時代の開発環境と
    アプリケーション基盤
    - Kubernetes-Based Developer Workspaces and Runtimes -
    2019/5/18
    Nobuhiro Sue (@nobusue)
    [JJUG CCC 2019 Spring]

    View Slide

  2. コンテナベースのアプリケーション開発を容易に
    1. プロジェクトの迅速化: 開発者が直ちに開発に取り掛かれる
    2. 環境の整合性: 「自分のマシンでは動くんだよ・・・」
    3. ソースコードの保護: 開発者のラップトップにソースコードを残さない
    ECLIPSE CHE

    View Slide

  3. デスクトップは環境の統一やセキュリティ確保が困難
    Desktop IDE Manages...
    IDE Runtime
    (Local process or container)
    複製が困難、共有も困難
    Project Files
    Developer Manages...

    View Slide

  4. ECLIPSE CHEによるソリューション
    Browser
    IDE
    Container
    Runtime
    Project Files
    集中管理された個々の開発者のワークスペース(Pod)
    容易な共有 + 容易な管理 + セキュア

    View Slide

  5. ECLIPSE CHE
    CONCEPTUAL
    ARCHITECTURE
    - Users can have more than one
    workspace (admin setting)
    - One Che server per Kubernetes
    cluster
    - Che server manages the
    lifecycle and authentication of
    all workspaces in the cluster
    - Traffic to browser is minimal
    - Majority of calls are inside the
    Che workspace, giving a
    “localhost” experience

    View Slide

  6. DEV TEAMS
    SPEND MORE TIME CODING
    6
    33.2 5.8
    2.4
    25.7 5.8
    9.9
    ENVIRONMENT MANAGEMENT +
    BUILD / TEST WAITING
    ADMINISTRATIVE
    TASKS
    BRAINSTORMING, DESIGN AND CODING
    AFTER
    BEFORE
    39% MORE TIME FOR CODING.

    View Slide

  7. Developers / QA / Docs
    - Bulk of the team
    - Work off issues in a backlog
    - Need guidance from leads/experts
    Success defined by steady progress:
    effective and efficient.
    “Help me burn down the backlog faster.”
    DIFFERENT NEEDS, DIFFERENT GOALS
    7
    Experts / Architects
    - Small number in a team
    - Likely “float” or run complex tasks
    - Provide guidance and coaching
    Success defined by leaps in progress:
    innovation and outperformance.
    “Help the team run faster, with fewer stumbles.”
    Uses Che
    Builds Che Stacks and
    Factories

    View Slide

  8. Web IDE

    View Slide

  9. Stack

    View Slide

  10. Factory: 既存Workspaceを共有

    View Slide

  11. Eclipse Che入門方法いろいろ
    ● SaaS (Che on OpenShift Online)
    ○ https://www.eclipse.org/che/
    ● Minishift(MinikubeベースのOpenShift)
    ○ Che addonを使うのが簡単です
    ○ https://www.eclipse.org/che/docs/che-6/openshift-single-user.html
    ● Docker
    ○ https://www.eclipse.org/che/docs/che-6/docker-single-user.html

    View Slide

  12. CodeReady Workspaces
    ● コンテナ内でブラウザベースの
    Web IDEと開発環境を提供
    ● Eclipse Cheベース(Red Hatがサ
    ポートを提供)
    ● OpenShiftにバンドル
    ● Operatorによる導入と管理
    ● RHEL 8ベースのスタック
    (ツールとランタイム)
    2019/2/5 GA

    View Slide

  13. ● 製品構成コンポーネント
    ○ Eclipse Che
    ○ Red Hat SSO (Keycloak)
    ○ PostgreSQL
    ● 製品ページ
    ○ https://developers.redhat.com/products/codeready-workspaces/overview/
    ● ドキュメント
    ○ https://access.redhat.com/documentation/en-us/red_hat_codeready_workspac
    es/1.1/html/administration_guide/index
    CodeReady Workspaces 詳細

    View Slide

  14. CodeReady Workspaces チュートリアル
    ● Streamline your JBoss EAP dev environment with Red Hat CodeReady
    Workspaces
    ○ Stackをカスタマイズし、WorkspaceからFactoryを生成するまで
    ○ https://developers.redhat.com/blog/2019/01/21/codeready-workspace
    s-streamline-jboss-eap-development/
    ● Application Development with Red Hat CodeReady Workspaces and
    Launcher
    ○ Lancherでアプリケーションを生成して、修正/デバッグを実行
    ○ https://github.com/RedHatWorkshops/CodeReadyWorkspacesAndLau
    ncherTutorial

    View Slide

  15. Red Hat OpenShift Application Launcher(1/2)
    https://developers.redhat.com/products/rhoar/hello-world/

    View Slide

  16. Red Hat OpenShift Application Launcher(2/2)
    アプリケーションの雛形作成やサンプルコード提供 =>
    ZipダウンロードやOpenShiftへデプロイ

    View Slide

  17. Visual Studio Code Plugins
    Red HatがVSCodeのプラグインを
    提供しIDEを強化: Java,
    Kubernetes YAML, Fuse XML
    OpenShiftプラグインによって
    ローカル/リモートのOpenShiftイ
    ンスタンスへの容易な接続やデプ
    ロイが可能に
    Dependency Analyticsによって
    ライセンスやCVEパッケージア
    ラートをチェック可能
    (*)CodeReady Workspaces1.0でVSCode Pluginを利用する場合はChe7 IDEを含むStackを構成する必要あり
    https://access.redhat.com/documentation/en-us/red_hat_codeready_workspaces_for_openshift/1.0.0/html/administration_guide/proc_u
    sing-the-che-7-ide-in-codeready-workspaces

    View Slide

  18. Trusted enterprise Kubernetes
    ● Trusted Host, Content, Platform
    ● Full Stack Automated Install
    ● Over the Air Updates & Day 2 Mgt
    A cloud-like experience, everywhere
    ● Hybrid, Multi-Cluster Management
    ● Operator Framework
    ● Operator Hub & Certified ISVs
    Empowering developers to innovate
    ● OpenShift Service Mesh (Istio)
    ● OpenShift Serverless (Knative)
    ● CodeReady Workspaces (Che)
    Developer Preview: try.openshift.com 18
    Copyright 2019 Red Hat K.K

    View Slide

  19. OPERATORHUB
    ● 管理者がクラスタ毎にsubscribe
    ● すべてのオプションコンポーネントや
    アプリの検索とインストール
    ● OSS版と商用版の両方に対応
    ● ISVパートナーが、自身の提供する
    Operatorをサポート(予定)
    Red Hat Products
    ISV Partners
    Community
    TYPES OF OPERATORS
    https://operatorhub.io/ 19
    Copyright 2019 Red Hat K.K

    View Slide

  20. セルフサービスを促進するUI拡張性(via Operator)
    SERVICE MESH
    External Application Launcher
    CONTAINER-NATIVE VIRTUALIZATION
    Native Experience
    MONITORING
    Native + External Links
    Core Platform
    OPERATOR &
    BROKER APPS
    Dev. Catalog
    METERING &
    CHARGEBACK
    Native Experience
    20

    View Slide

  21. テスト環境
    OpenShiftによるテスト&リリースの自動化
    リポジトリ(構成管理)
    Playbook
    本番環境
    コンテナ
    OS
    M/W, F/W
    APP, 設定
    コンテナ
    イメージ
    OS
    M/W, F/W
    APP, 設定
    コンテナ
    OS
    M/W, F/W
    APP, 設定
    Playbook
    ソースコード
    Pull
    コンテナ
    イメージ
    OS
    M/W, F/W
    APP, 設定
    Build
    コンテナ
    OS
    M/W, F/W
    APP, 設定
    Run Test
    Push
    切替
    コンテナ
    Baseイメージ
    OS
    APP開発者 コンテナ
    イメージ
    OS
    M/W, F/W
    APP, 設定
    開発環境にて検証済みの確実に
    動くものを本番にも展開
    ソースコード
    ソースコード
    commit/push
    OpenShift
    • ソースコードをチェックインするとテスト以
    降の工程が自動で行われる
    • 新しい機能を作ることに集中できる Pull
    21 Copyright 2018 Red Hat K.K

    View Slide

  22. Dev Preview June
    New OpenShift Pipelines
    "Cloud native CI/CD"
    Customer Benefits
    ● Kubernetes-native pipelines
    ● Built for cloud-native apps
    ● Runs serverless
    ● Portable
    Tech Preview 4.2

    View Slide

  23. Red Hat
    23
    Java開発者向けイベント開催!
    5月20日(月)14:00 - 18:00 
    @レッドハット(恵比寿)
    https://red.ht/KnativeWS2019

    View Slide

  24. Red Hat
    24
    アンケートにご協力よろしくお願いします
    お手元のQRコードまたは
    https://red.ht/CCC2019spring
    からフォームへ回答ください
    ⇨Newロゴステッカーとグッズを
     プレゼント!

    View Slide

  25. THANK YOU
    plus.google.com/+RedHat
    linkedin.com/company/red-hat
    youtube.com/user/RedHatVideos
    facebook.com/redhatinc
    twitter.com/RedHatNews
    25

    View Slide