Kubernetes環境についてTerratestでテストを書く

2021-10-28

こんにちは、もーすけです。
今回はTerratest を用いたKubernetes環境のテストについて検討します。

TerratestはGruntwork.ioが作成しているインフラのテスティングソフトウェアです。 もともとは、Terraformで作成したクラウド環境のテストとして発達がしましたが、いまの時代となってKubernetes環境やコンテナイメージもテストできるようになっています。

Kubernetesマニフェストにより、宣言的にインフラ環境を表現できるようになってきているととはいえ、その結果が期待通りに動作しているのかは日々の悩みのタネであることはかわりません。 Terratestがこの悩みを解消するのにイケてそうなので調査してみます。

かつて仮想サーバでアプリケーションを運用している時代に、Serverspecを用いてテスト駆動のインフラ構築を行っていてとても気持ちがよかったので、そのレイヤーが移ってきているとも考えられます。

続きを読む

Alibaba Cloud、Serverless KubernetesのマルチAZ対応について

2021-09-12

こんにちは、もーすけです。
本日は、Alibaba CloudのServerless Kubernetes(ASK)のマルチAZ対応について、ナレッジをためていきます。 前回も書きましたが、Serverless Kubernetesの構築を最近行っており関連のトピックについて書く頻度が増えそうです。

続きを読む

Kubeletのログ管理を追ってみる

2021-09-08

こんにちは。もーすけです。
今回はKubeletのログ管理について調べたことを残します。 Kubernetesにおけるログ管理については以前もブログを書いてきましたが、どちらかというとアプリ目線でのことで、実際のところKubeletがどうログ管理しているかよくわかっていなかったので調査してみました。 きっかけは、KubernetesのPodのログはローテートされるのか?ずっと標準出力にログを吐き続けたらストレージはどうなるのか?そのあたり気になったことです。

続きを読む

Alibaba Cloud, Kubernetesのイメージキャッシュ機能を検証する

2021-09-04

こんにちは。もーすけです。
Alibaba CloudのServerless Kubernetesを使ったシステム構築に取り組んでいて、Alibaba Cloud固有のKubernetesまわりの仕組みについて検証したことをまとめていきます。 今回は、ImageCacheについてです。

そもそも、Serverless Kubernetesって?という方は、少し古いですが以下を参照ください。(アップデートしたい…) 一言でいうとノードレスのKubernetesで、EKS on Fargateなどに近い仕組みです。

続きを読む

Kubernetes、ExternalName Serviceの検証と利用時の注意事項

2021-08-26

こんにちは。もーすけです。
いろいろとKubernetesナレッジは溜まってきているのですが、なかなかアウトプットができていないこの頃です。本日は、KubernetesのServiceタイプのひとつである「ExternalName」について解説したいと思います。 基礎的な内容ではありますが、よく説明することが多かったのでまとめます。

続きを読む

Argo CD、Resource Hooksを使ってデプロイを高度化する

2021-06-12

Argo CD学習シリーズ

こんにちは、もーすけです。
Argo CD学習シリーズをやっていきます。 今回は、Argo CDのResource Hooksという仕組みについて解説します。 前回にやったArgo CDのSyncと密接に関連するトピックです。 運用レベルでArgo CDを使っていく場合、避けて通れない内容になってきます。 Argo CDを使った本格運用に向けて学んでいきましょう。

続きを読む

TektonからArgo CDの同期をトリガーする。それぞれの使い分けの検討

2021-05-07

Tekton学習シリーズ

こんにちは、もーすけです。
今回は、クラウドネイティブな環境でのCI/CDツールとして有名なTektonとArgo CD、これらの組み合わせした場合のパイプラインフローを検討してみます。どのように使い分けていくことができるのか考えていきたいと思います。 本記事はTekton学習シリーズとして行ったわけではないですが、関連トピックとして番外編扱いにしておきます。

続きを読む

第3回: Argo CD、Syncの実行方法やタイミングについての検討

2021-05-06

Argo CD学習シリーズ

こんにちは、もーすけです。
Argo CD学習シリーズどんどんやっていきます。 今回は、Argo CDがアプリケーションをSync(同期)するタイミングに関する検討です。 軽めの話題ですが、実運用を検討する上で重要になるのでしっかりおさえておきましょう。

続きを読む

第2回: Argo CD、Kustomizeを使った複数環境へのデプロイ

2021-05-06

Argo CD学習シリーズ

こんにちは、もーすけです。 Argo CD学習シリーズの続きを行っていきたいと思います。 前回はチュートリアル的に動かしてみるところまで行いましたが、もう少し細かなアプリケーションの設定を見ていきます。

続きを読む

Kubernetesのロギングパターンは結局どれを採用したらいいの?

2021-04-18

こんにちは、もーすけです。
本日は、Kubernetes上で動くアプリケーションのロギングについて考えていきたいと思います。 以前に「Sidecar方式のFluentdでCloudWatch logsへログを集約することについての検討」という記事を書いたのですが、この記事では、ロギングパターンのひとつであるSidecar方式(サイドカー方式)の検討についてのみ触れており、「で、結局どうしたらいいの?」という部分がたりなかったためです。
本記事では、その他の方式も含めて、どれを採用したらいいのか?という考え方についてまとめていきたいとおもいます。

続きを読む