$30 off During Our Annual Pro Sale. View Details »

わかる!Hashicorp Waypoint | HashiTalks: Japan2023

kazue
September 16, 2023

わかる!Hashicorp Waypoint | HashiTalks: Japan2023

kazue

September 16, 2023
Tweet

More Decks by kazue

Other Decks in Programming

Transcript

  1. 1
    わかる!
    Masaki Kazue
    クラスメソッド株式会社 CX事業本部 Delivery部

    View Slide

  2. 2
    自己紹介
    Masaki Kazue
    クラスメソッド株式会社
    CX事業本部 Delivery部
    2019年1月 JOIN
    JOINまでの職歴
    受託開発 8年
    自社サービス開発運用保守 2年
    HashiCorp Ambassador 2023
    blog : https://dev.classmethod.jp/author/kazue-masaki/
    X(twitter): https://twitter.com/kazueeee_

    View Slide

  3. 3
    このセッションのゴール
    ● Waypointがどういうものなのか何となく分かる
    ● Waypoint使ってみたい!となる

    View Slide

  4. 4
    Waypoint知ってますか?󰢧

    View Slide

  5. 5
    Waypoint使ったことありますか?󰢧

    View Slide

  6. 6
    😶

    View Slide

  7. 7

    View Slide

  8. 8
    これまでの私のWaypointの理解
    ● CDのためのサービス?
    ● GitHub Actionsとか AWS CodePipelineとかが競合なんで
    しょ?

    View Slide

  9. 9
    これまでの私のWaypointの理解
    ● CDのためのサービス?
    ● GitHub Actionsとか AWS CodePipelineとかが競合なんで
    しょ?
    違います

    View Slide

  10. 10
    Waypointが解決したいこと󰢏

    View Slide

  11. 11
    とある会社のできごと
    ● とあるプロジェクトでアプリケーションを開発中
    ● コンテナ使ってローカルで開発中
    ● リリースすることになった
    ● どんなプラットフォームを使ってリリースする?

    View Slide

  12. 12
    ECSを使うことになりました

    View Slide

  13. 13
    ECSを使う際に理解・設定しないといけないこと

    View Slide

  14. 14
    覚えること多すぎない…?🤯

    View Slide

  15. 15
    やっとECS使ってリリースできた。が…
    上司󰸥「やっぱりEKS使ってくれ」
    🙂「」

    View Slide

  16. 16
    EKSで理解・設定しないといけないこと

    View Slide

  17. 17
    また違うこと色々覚えなあかんの…?🤯

    View Slide

  18. 18
    ここでWaypoint

    View Slide

  19. 19
    Waypointは、
    開発プロセスにおけるビルド以降のフェーズを抽
    象化し、簡単にするツール

    View Slide

  20. 20
    どういうこと?

    View Slide

  21. 21
    プラットフォームごとにやることが違いすぎる
    Build Deploy Release

    View Slide

  22. 22
    各ステージが分断されている
    Build Deploy Release

    View Slide

  23. 23
    Build Deploy Release
    Waypointが抽象化して簡単に

    View Slide

  24. 24
    どういうこと?
    ECSにデプロイするときの
    設定はこれだけ
    https://github.com/hashicorp/waypoint-examples/blob/main/aws/aws-ecs
    /nodejs/waypoint.hcl

    View Slide

  25. 25
    どういうこと?
    ECS→EKSに変更するなら
    差分はこれだけ
    ※ 事前に以下が必要
    - EKSクラスターの作成
    - 上記クラスターにアクセス
    できるようkubectlのcontextを設定

    View Slide

  26. 26
    使うコマンドは waypoint up だけ

    View Slide

  27. 27
    URL Service
    ● デプロイ毎に xxx.xxx.waypoint.run みたいなURLを払い出
    してくれて、デプロイ内容の確認ができる
    ● Let's Encrypt で自動生成された証明書でTLS化してる
    ● 過去のデプロイも確認可能 例: xxx.xxx--v2.waypoint.run
    ● 誰でもアクセス可能なので不要な場合は設定でオフにで
    きる

    View Slide

  28. 28
    Web UI

    View Slide

  29. 29
    リリース後のデバッグも共通コマンドで ①
    waypoint logs

    View Slide

  30. 30
    リリース後のデバッグも共通コマンドで ②
    waypoint exec

    View Slide

  31. 31
    便利!😃

    View Slide

  32. 32
    のびしろ
    ● LambdaのZipデプロイパッケージは未対応
    ■ コンテナ版は利用可能
    ● API Gateway / AppSyncも未対応
    ■ サーバーレススタックで使うのは時期尚早?
    ● Buildpacksが私のローカル(M1 Mac)で失敗する
    ■ WaypointじゃなくてBuildpacksの問題
    ● Function URL払い出されなかった
    ■ おそらく私が理解不足なだけ…

    View Slide

  33. 33
    Waypointは、
    開発プロセスにおけるビルド以降のフェーズを抽象化し、簡
    単にするツール
    1設定ファイル
    1コマンドで
    あらゆるプラットフォームを利用できる
    まとめ

    View Slide

  34. 34
    ご清聴ありがとうございました󰢛

    View Slide