8月31日(水)に開催されたCircleCI様との共催セミナー「CircleCIを使ったDevOpsの始め方 - かんたんDevOps x CircleCI ジョイントセミナー」のイベントレポートです。
今回のイベントではCircleCIの舟木様から「CircleCIで始めるDevOps」、弊社の水野から「日本仮想化技術が考えるDevOps環境とは」をテーマにお話をさせていただきました。
セミナー動画 YouTubeライブ アーカイブ
最初に弊社新村から「かんたんDevOps」の紹介をさせていただきました。
「かんたんDevOpsのご紹介」要約
かんたんDevOpsは弊社が提供するDevOps支援サービスで、汎用的なDevOps環境とDevOpsの振る舞いを実践するための手順書を提供し、「習うより慣れろ」のコンセプトで、DevOpsを実践しながら、徐々に自分達のDevOpsを見つけ、実現していくためのサービスとなります。
また、CircleCIの舟木様からはCircleCIがなぜDevOpsの実現に役立つかという観点でお話をいただきました。
「CircleCIで始めるDevOps」要約
ソフトウェアがモノからサービスへと変化したことで、常に最高の品質を提供し続ける必要が出てきました。それを実現するのがDevOpsという考え方です。DevOpsの中でも、自動化できる部分を自動化して継続的に実行できるようにすることで、ビジネスを継続し、ソフトウェアを進化させることが容易になります。それに加えて、ツールで自動化し、実行することでソフトウェアの開発の状況の指標をデータとしてツールから可視化することができます。これらのことを実現する機能をCircleCIが提供しています。その結果、エンジニアは自動化できない部分の開発や運用を強化に注力することができます。
そして、弊社水野からは、かんたんDevOpsで提供するDevOps環境についてデモを交えて紹介いたしました。
「日本仮想化技術が考えるDevOps環境とは」要約
DevOpsはソフトウェアの価値をお客様に継続的に届けるための考え方で、厳密な定義はありません。しかし、DevOpsを実現するためにはなくてはならない仕組みがあります。DevOpsにおいては、各フェーズで様々なキーとなるツールがあり、それを組み合わせてツールチェーンを構成していきます。それを連携させて、品質を落とさずに自動化して繰り返し実行するのがCI/CDです。そのCI/CDをCircleCIを使って、実現するデモを実施しました。デモでは、HTMLを編集して、HTMLの静的チェック、コンテナの静的チェック、そしてコンテナをビルドして、AWSにデプロイするという流れを紹介しました。
Q&A まとめ
また、最後にQ&Aにおいても質問をいくつかいただき、登壇者のお二方に回答いただきました。こちらにまとめましたので、併せてご確認ください。
Q : GitHubActionsというものを使っているのですが、CircleCIとの差としてはレベル3のテストの並列実行できることでしょうか。
注釈:レベル3の意味に関しては動画の13:56からの説明をご参照ください。
テストを自動分割する機能はCircleCIにあってGitHub Actionsにはない機能になります。他にも、マシンタイプや言語など様々な環境に対応しているのもCircleCIの特徴です。また、SSHデバッグが可能な点もCircleCIの大きな特徴です。
Q : CircleCIのデプロイについて、EKSではなく、ECSへデプロイは可能でしょうか。
CircleCIの定義を部品化したorbというものがあります。そちらでAWSのECSに対応したorbがありますので、そちらを活用いただければ簡単にECSへのデプロイが可能になります。
Q : 日本仮想化技術の視点でCircleCIとGitHub Actionsを比較した時、CircleCIが優れていると思った点はどこですか?
SSHデバッグはすごく使いやすいです。あと、タイムアウトの指定が非常に使いやすいです。標準出力に出力が止まってからどのぐらい時間が経過したかなど、柔軟に設定きでる点が良いと思っています。あと、統計情報が見られるInsightの機能がとても使いやすいです。
Q : 静的なテストに対して使いやすいのは自分でも利用していてわかるのですが、その先のE2Eテストというところまでいくと使い捨て環境作るとか色々作ることが増えてしまって手が止まっちゃうのですが、そちらのサポートまで行われるようなイメージなのでしょうか
E2Eテストの自動化は可能で、どういったツールを使ってどういうテストをするのかはプロジェクトによって変わってくると思います。また、かんたんDevOpsではIaCにTerraformを採用しているので、コードがコミットされてテストする際にEKSのクラスターECSのタスクのサービスの環境をテスト用にまっさらに作ることができます。
Q : CircleCIを使いはじめました。プロダクトロードマップや新機能はありますか?
こちらのサイトを参照ください。どんどん更新されていくので、日本語への対応は難しいためご了承ください。
また、プロダクトロードマップにリクエストを載せるにはこちらのCircleCI Ideasというサイトにアカウントを作っていただき、英語になりますが投稿していただくか、すでに投稿されているリクエストに上矢印で投票すると、開発対象の候補となります。
また、英語でリクエストを出すのが難しい場合は、サポートサイトから日本語でリクエストいただくこともできます。