とことんDevOps | 日本仮想化技術が提供するDevOps技術情報メディア

DevOpsに関連する技術情報を幅広く提供していきます。

日本仮想化技術がお届けするとことんDevOpsでは、DevOpsに関する技術情報や、日々のDevOps業務の中での検証結果など、DevOpsのお役立ち情報をお届けします。
主なテーマ: DevOps、CI/CD、アジャイル開発、コンテナ開発など

開催予定の勉強会

各種SNSのフォローもよろしくお願いいたします。

GitOpsツール Flux v2を触ってみた

今回も前回に引き続き、GitOpsツールのFluxについて書いていきたいと思います。 前回はEKS Anywhereを使って手持ちのvSphere環境にKubernetesとFluxを導入してGitOpsを体験してみました。 devops-blog.virtualtech.jp 今回は、もう少しどこでも動くようにmic…

vSphereプロバイダーのEKS AnywhereでKubernetes + GitOps環境を利用する

以前、「EKS AnywhereをvSphereプロバイダーで利用してみる」というブログ記事を以下に書いたことがあります。 tech.virtualtech.jp EKS AnywhereにはオプションでGitOpsツールのFluxをセットアップするオプションが用意されていてそれを試してみましたので…

Argo CD API ServerをIngressを使って公開する(HTTP Ver)

概要 Argo CDはGitOpsツールの一つで、使いやすいGUIインターフェイスとCLIベースでGitOpsを実現できるツールです。 ブログでも何度か取り上げたことがあります。 最近の記事だと例えば... devops-blog.virtualtech.jp 前回はNodePortを使ってサービスを公開…

CircleCIでUbuntu 22.04ベースのコンテナをビルドすると、apt-getが失敗する問題

忙しい人向けの結論 現在CircleCIでUbuntu 22.04のコンテナイメージをビルドする場合は、Remote Dockerの場合はバージョン20.10.12以降、Machine Executorの場合はubuntu-2204:2022.04.1以降を、明示的に指定して利用してください。 解説 2022年4月21日に、U…

Rancher Fleetを触ってみる

Rancher Fleetはかなり多くのKubernetesクラスタの統合管理とGitOpsを実現するためのソフトウェアです。 Kubernetesクラスタの管理については100万クラスターの管理も可能としています。 www.rancher.co.jp Rancher FleetにはGitOpsの機能も実装されています…

イベントレポート 第3回とことんDevOps勉強会 「VS Codeやコンテナ、CI/CDを活用した DevOps時代の開発環境を考えよう」

4月26日に第3回とことんDevOps勉強会を開催しました。 第3回とことんDevOps勉強会 今回の勉強会は日本仮想化技術の石本から「VS Codeやコンテナ、CI/CDを活用した DevOps時代の開発環境を考えよう」と題してお話しをさせていただきました。今回は開発者の視…

オンプレミスでCircleCI Serverを動かそう(その5) VMサービスの構築編

オンプレミスでCircleCI Serverを動かすシリーズの第5回、今回で最終回となります。前回はNomadクライアントを構築し、ジョブの実行を可能にしました。今回はさらにVMサービスを構築し、Machine ExecutorやRemote Dockerの実行を可能にしていきます。 セキュ…

オンプレミスでCircleCI Serverを動かそう(その4) Nomadクライアントの構築編

オンプレミスでCircleCI Serverを動かそうシリーズの第4回です。前回までで、CircleCI Serverのコントロールプレーンは動作しました。今回は実際にジョブを実行するNomadクライアントを構築します。 Terraform設定ファイルの取得 Nomadクライアントは、EKSク…

オンプレミスでCircleCI Serverを動かそう(その3) コアサービスのインストール編

オンプレミスでCircleCI Serverを動かすシリーズの第3回目です。前回までで、インストールの準備は整いましたので、いよいよCircleCI Server本体をインストールしていきます。 コアサービスのインストール 以下のようにKOTSを使ってアプリをインストールしま…

オンプレミスでCircleCI Serverを動かそう(その2) 事前準備編

オンプレミスでCircleCI Serverを動かすシリーズの第2回です。前回は必要となるツールをインストールしました。今回はこれらのツールを使い、CircleCIサーバーを動かすためのEKSクラスター、アーティファクトを保存するS3バケット、アーティファクトをセキュ…

オンプレミスでCircleCI Serverを動かそう(その1) ツールのインストール編

CircleCIを利用することで、お手軽にCIを開始できることは、過去のエントリーでも繰り返し紹介してきました。しかし機密保持等の事情から、クラウドサービスを利用できない環境もあるのではないでしょうか。 こうしたケース向けに、CircleCIではオンプレミス…

Docker DesktopとVS Codeでコンテナを使ったローカル環境でのアプリ開発

Visual Studio Code(以下VSCode)はマイクロソフトが開発している拡張可能なエディターであり、元々はオープンソースではありませんでしたが、現在はオープンソースで開発されています。 何かの言語でソフトウェア開発をする場合、開発用のマシンに開発環境…

Kubernetesマニフェストの雛形を作ってみる

Kubernetesでアプリの管理をしているとマニフェストを弄る機会が結構でてくると思います。同じことを色々なところに書かなければいけなかったり、作成するリソース毎に記述する内容が変わったりで、こここれでいいんだっけ?など、悩みは尽きません。そこで…

GitHub Actions/CircleCIを使ったCIOpsの実践

CI/CDの処理の中で、何らかのテストを行なったあと、Kubernetesクラスターにコンテナアプリケーションをデプロイするということがあると思います。 今回は、CI/CDの研究で最近よく使うGitHub ActionsとCircleCIを使って、Kubernetesへのアプリケーションデプ…

CircleCI CLIを活用してローカルでテストを行う方法

CircleCIを使えば、VCSにコードをPushするだけで自動的にCIを行えます。非常にお手軽ですが、テストの内容に間違いがって正しくテストが行えなかったり、YAMLの文法エラーによってそもそもジョブが起動しなかったり、といったことがよくあります。つまりCIの…

kindでKubernetesクラスターを動かす

今回はDockerの中でKubernetesクラスターを簡単に作成できる「kind」を使ってみたいと思います。 kindは、Dockerコンテナの「ノード」を使用してローカルのKubernetesクラスタを実行するためのツールです。 kindは元々、主にKubernetes自体をテストするため…

Argo CDでかんたんGitOps

GitOpsについては以下の記事の後半で触れました。 tech.virtualtech.jp GitOpsツールは様々ありますが、今回はいくつかある中でArgo CDについて取り上げようと思います。 Kubernetesのセットアップ まず初めにAlgo CDを実行するためのKubernetesクラスターを…

イベントレポート 第2回とことんDevOps勉強会「実際にCI/CDを動かしてみよう」

3月16日に第2回とことんDevOps勉強会「実際にCI/CDを動かしてみよう」を開催しました。前回同様にたくさんの皆さんに参加いただきました。 今回のとことんDevOps勉強会は日本仮想化技術の水野から、「実際にCI/CDを動かしてみよう - GitHubとCircleCIで始め…

CircleCIのキャッシュを活用してビルド時間を短縮する

CIを日常的に行うようになると、気になってくるのがジョブの実行時間です。無視できないほど長いビルドの待ち時間は、開発における大きなボトルネックです。それにCircleCIでは利用した時間に応じて課金が行われますので、なるべく無駄な処理は慎み、短い時…

Flutterで作ったネイティブアプリをAppiumでUIテストしてみた(node.js/Android編)

こんにちは。話題のFlutter使ってアプリ開発を始めてみたので、UIテストについてAppiumを使った自動化についてインストールの流れからテスト実行までの流れを記載していきます。 iOS版もまとめて掲載しようと思ったのですが、諸事情で別記事で投稿する予定で…

CircleCIのテスト結果をSlackに通知するには

前回のエントリーで、コミットをトリガーとしてCIが動作するようになりました。ですがCIの結果は、CircleCIのダッシュボードから確認する必要があります。コミットの度に発火するCIの結果を、都度確認しに行くのは面倒ですよね。そして人間は面倒なことはす…

ニフクラのDevOpsサービスを使ってみた

ニフクラがDevOpsサービスのBeta版を始めたと聞いたので触ってみることにしました。 公式サイトはこちらです(これを書いた当初はBeta版サービスとして提供されていましたが、現在は正式版として利用可能のようです) pfs.nifcloud.com このサービスはAll-in…

GCPのフォルダ作成でハマった

GCP

最近GCPを触る機会を頂いたので、今まで自分ではやってこなかったリソース管理周りを勉強中です。 GCPにはリソース階層というものがあるらしく?組織直下のフォルダで色々まとめて、各環境ごとにプロジェクトを生やしていくといいみたいですね。 完全に理解…

アジャイル開発とは

CI/CDやDevOpsとセットで語られることが多いアジャイル開発とは、どのようなものでしょうか。 アジャイル開発の意味 アジャイル(Agile)とは「素早い」というような意味の言葉です。アジャイル開発と言った場合、短期間の開発工程を(素早く)繰り返してい…

HadolintでDockerfileを静的解析

Dockerfileを書くとき、ベストプラクティスに則っているか、RUNの実行に問題はないかなど、意識していますか?コンテナイメージのサイズは目に見えるので意識しやすのですが、Dockerfileがベストプラクティスに則っていなくても警告なく動いてしまうので、つ…

コンテナとは

コンテナのメリット コンテナは、CI/CDやDevOpsを実現するための重要な技術です。コンテナを理解しようとするには、仕組みよりも先にそのメリットを理解する方がよいでしょう。理解にあたっては、主に仮想マシンと比較するとそのメリットが分かりやすいでし…

イベントレポート 第1回とことんDevOps勉強会 「今から始めるDevOps」

2022年2月9日に「とことんDevOps勉強会」の第1回を開催しました。第1回にもかかわらず多くの皆さんにご参加いただけました。 今回のとことんDevOps勉強会では「今から始めるDevOps 〜VTJと一緒に始めましょう〜」というテーマで日本仮想化技術株式会社 代表…

Ruby on RailsでRSpecとSimpleCovを使ってテストでカバレッジ取得までやってみた

Ruby on RailsでRSpecとSimpleCovを使ってテストでカバレッジ取得までやってみた こんにちは。 Ruby on Railsを触り始めたので、せっかくならTDDな開発で学習を進めてみようと思いテストコード+カバレッジ率取得を試してみました。 雑談ですが、ExcelやGoog…

GitHubとCircleCIでCI/CDをはじめよう

CI/CDとは何かのエントリーでは、CI/CDの概要について解説しました。そこで本エントリーでは、実際にGitHubとCircleCIを用いて、CI/CDワークフローを動かしてみましょう。 なぜCircleCIなのか 前述のエントリーで、CI/CDを実現する様々なツールを紹介しまし…

AWSプロファイルを環境変数で切り替える

AWS

AWS環境を操作する場合、省力化や自動化のためにawsコマンドをターミナルから叩くのは日常的ですよね。操作する環境がひとつだけであればよいのですが、テスト環境と本番環境でアカウントが分かれていたり、また複数のプロジェクトに参画している場合に問題…