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

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

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

Kubernetes

kube2iamで403

先日、とあるプロジェクトでkube2iamのログを見ていると、以下のようなログを発見しました。 kube2iam-XXXXX kube2iam time="2022-09-26T10:34:03Z" level=info msg="PUT /latest/api/token (403) took 2.837123 ms" req.method=PUT req.path=/latest/api/to…

EKS 1.21で有効になったBoundServiceAccountTokenVolumeの話

EKS 1.21というか、Kubernetes 1.21以降で有効になったBoundServiceAccountTokenVolumeについての話ですね。 docs.aws.amazon.com 簡単にいうと、Kubernetes 1.21以前ではトークンに有効期限がなかったのに対し、1.21以降は1時間の制限がつきますよっという…

HelmチャートをGitHub Pagesで公開する

過去の記事でHelmの使い方やHelmチャートの作り方についてまとめました。今回はGitHub Pagesで公開する方法をまとめます。 前準備 今回使うHelmチャートはHelmチャートの作り方で作ったものを使います。もしまだ作っていなかったり、手元にないようでしたら…

openSUSE MicroOS+K3sを使って開発用のKubernetesクラスターをサクッと用意する

今回本当はRancher Labsの k3osを触ってこのブログでご紹介する予定だったのですが、次の情報によるとk3osはRancherOS 2に置き換えるようで、今は使うべきではないようです。 k3osをk3s.ioに移管してコミュニティベースでメンテナンスを継続する案も出ている…

Helmチャートを作る

前回はHelmの使い方について軽くまとめました。 今回はHelmチャートの作り方について、まとめていきたいと思います。 雛形を作成 1から手作りするとなかなか面倒なのでコマンドから雛形を作ります。Helmコマンドには雛形を作るためのhelm createコマンドが用…

Helmで自動ロールアウト

Helmはデプロイの仕様自体に変更がない場合、古い状態のまま動き続けます。これではシークレットやConfigMapsのみ更新した場合、同じタグを指定している場合にポッドの更新ができなくて困りますよね。公式ドキュメントにもこのことが取り上げられていました…

Helmを使う

弊社Opsチームではアプリケーションの管理にHelmを使います。かんたんDevOpsでもHelmを使うことがありますが、導入して終わりというわけにもいかないので、簡単な使い方や、そもそもHelmって何ってなんなの?っという情報をここにまとめておきます。 そもそ…

Docker Desktopでコンテナを動かしてみよう

CI/CDやDevOps、アジャイルな開発などを実践する際に、技術面ではコンテナを活用することが多くなってきました。一方で、なかなかコンテナを扱う機会が無い、という人も多いように思います。そんな方には、まずはコンテナを動かしてみよう、ということでDock…

MicroShiftを動かしてみる その2(Fedora 36 IoT Edition編)

今回の記事は前回の記事の続きになります。前回はFedora 36 ServerでMicroShiftを動かしてみました。 今回はFedora 36 IoT EditionでMicroShiftを動かしてみます。 devops-blog.virtualtech.jp Fedora IoT EditionはラズパイのようなARMボード、IoT機器向け…

MicroShiftを動かしてみる

今回のネタについて MicroShiftはワンバイナリーで動くエッジ及びスモールファクター向けのOpenShiftです。 サポートされているアーキテクチャーはamd64/x86_64/arm64/riscv64です。 「MicroShift」と言うキーワードでだけでWeb検索すると、様々な違う「マイ…

Rancher DesktopではじめるDocker/Kubernetes入門

Rancher Desktopはデスクトップ上でKubernetesとコンテナの管理を行うことができるツールです。containerdやDockerを使ってコンテナーイメージのビルド、プッシュ、ダウンロード、実行できます。 K3sを使ってKubernetesクラスターの実行もデスクトップ上で可…

テスト用のアプリのコンテナ化を試した話

最近、KubernetesとかDockerやPodmanを中心としたコンテナーをよく利用しています。 これらでコンテナー化していないアプリケーションをコンテナ化するために必要なことを調べるため、またはこれらのプラットフォームでアプリケーションの実行をデモするため…

eksctlとHelmでハマった

eksctlを使うとEKSにサービスアカウントを用意してくれます。これの何が嬉しいかというと、KubernetesのServiceAccountとIAMロールが紐づいてくれるので、kube2iamかkiamを使わなくてもKubernetesからAWSのリソースの操作ができるようになります、やったね☆ …

BitnamiのSealedSecretsをつかってみた

悩ましい問題 Secretの管理 クラウドのサービスを利用するにあたり、アプリケーションの実行などに使うSecret(パスワードやトークン、各種キーなど)の管理は悩みのタネになると思います。 Kubernetesではこれらのような秘密情報は、KubernetesのSecretリソ…

Trivyを使ってみる

DockerやKubernetesが当たり前に使われるようになって、ただこれらのコンテナーツールを便利に使うだけでなく、 安全に使うための工夫が必要になってきています。 コンテナーでアプリケーションを使う上で、コンテナーイメージは重要なパーツの一つです。 コ…

Docker Desktopに追加されたDocker Extensionを使ってみる

Docker Desktopは元々Linux以外のOSでDockerを気軽に使うためのソフトウェアでした。WindowsとmacOS向けにリリースされていました。 最近Linux Desktop向けにもDocker Desktopが提供されるようになったものあり、Linuxのデスクトップ環境でもDockerコンテナ…

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を使ってサービスを公開…

Rancher Fleetを触ってみる

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

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

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

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

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

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

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

Argo CDでかんたんGitOps

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

コンテナとは

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

sternの導入と使い方

Kubernetesを運用していると、Podのログが見たくなることはよくあると思います。 kubectl get podsでPod名を調べ、kubectl logs -fして、kubectl applyでPodが入れ替わるとまた1から・・・これだけでも面倒ですね。 sternというツールは、正規表現でPodを指…