とことんDevOps | 日本仮想化技術のDevOps技術情報メディア

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

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

開催予定の勉強会

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

Kubernetes

OpenShiftのOperatorを利用してArgo CDを導入する

OpenShiftにはOperatorという仕組みがあり、デフォルトで導入されています。これにより、コンテナベースで様々なアプリケーションサービスを簡単に導入できます。今回はそのOperatorを使って、GitOpsツールの一つであるArgo CDを導入してみました。 Argo CD…

Kubernetesの知識地図を読みました。

Kubernetesの知識地図 —— 現場での基礎から本番運用まで作者:青山 真也,小竹 智士,長谷川 誠,川部 勝也,岩井 佑樹,杉浦 智基技術評論社Amazon 私の関わっている案件ではKubernetesを使っています。私自身そこまでKubernetesに詳しいわけではないので、あくま…

microk8sのはじめ方

勉強のためにとか仕事で使うので...とか、Kubernetesを試してみたい時があると思います。 そんな時によく使われるのはminikubeだと思います。ちょっと前にこのブログでも記事が出ています。まだ見られていない方はぜひチェックしてみてください。 devops-blo…

Docker Desktop 4.15.0を触ってみる

12/1にDocker Desktop 4.15.0がリリースされました。 www.docker.com 今回のバージョンでVirtioFSがGAになったことにより、コンテナへの共有ボリュームのパフォーマンスが向上するようです。ただデフォルト設定にはなっていないようなので、設定を開いて確認…

KubernetesのNOMINATED NODEについて調べました。

先日、第8回とことんDevOps勉強会でNominated Nodeよくわからんっと言ったら社長が色々調べてくれたので、こちらも再現手順など確認していきます。 とことんDevOps勉強会のイベントレポートは以下 devops-blog.virtualtech.jp NOMINATED NODE??? kubectl get…

minikubeのはじめ方

2022-12-07に「Kubernetes再入門」というタイトルで勉強会に登壇しました。 devops-blog.virtualtech.jp そこで「勉強する環境がほしいが、どのように準備したらよいか」という質問をいただきましたので、ローカルで試す場合の環境の用意なんかを取り上げて…

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…

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リソ…

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

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

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

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

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

コンテナとは

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

sternの導入と使い方

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