Kubernetesのノード障害時のPodの動きについての検証

2021-03-11

こんにちは、もーすけです。
本日はKubernetesのノード障害が起きたときのPodの挙動について確認します。 いままで、ノード障害が起きたときのPodの挙動、スケジューリングについて誤った認識をしていました。 お恥ずかしい限りなのですが、同じような誤った認識をしているかたに向けて確認したことを解説します。

続きを読む

Tekton、TaskをまとめてPipelineとして実行する

2021-03-07

Tekton学習シリーズ

はい、もーすけです。
Tekton学習シリーズ第5回をやっていきます。 本日はいよいよTaskをまとめPipelineをやっていきます。Taskの仕様を理解できていればおそらくそこまで難しくないと思います。

続きを読む

Tekton、TaskでPipelineResouceを利用したときの挙動を確認する

2021-03-07

Tekton学習シリーズ

こんにちは、もーすけです。
本日もTekton学習シリーズやっていきます。第4回は、TaskにPipelineResourceを追加してみます。 CIパイプライン内でGitレポジトリのソースコードを扱うことは一般的です。その方法や、設定するとなにが起きるのか見ていきましょう。

続きを読む

Tekton、Tasksにパラメータを設定する

2021-03-06

Tekton学習シリーズ

こんにちは、もーすけです。
今回はTektonのTaskにパラメータを引き渡す方法についてみていきます。 前回までは、Taskにべた書きしたコマンドを実行しましたが、パラメータ指定し変数化する方法を確認します。

続きを読む

Tekton、TaskのStepの実行順序について確認する

2021-03-06

Tekton学習シリーズ

前回、TektonのOperatorを使ったインストールについて解説しました。 今回は、もうすこしTaskの動きを確認してみます。具体的には、Task内のStepの役割や、複数のStepがある場合の実行順序の制御方法などについて確認してみます。

続きを読む

Redis on Kubernetesの検討ポイントとredis-ha Helm chart

2021-03-03

もーすけです。最近は、お金の勉強ばかりしてます。
住宅ローンをきっかけに、いままでやってきた株や投資信託のポートフォリオを見直して、確定申告やら、税金やら。。これまた学びがいのあるジャンルで楽しくて勉強しています。

今回は、インメモリDBであるRedisをKubernetesにデプロイ・運用するための方針や方法にについてまとめます。
いまとなってはRedisを検討することはめずらしくなくなりましたよね。セッションやキャッシュの保管先、ランキングデータの管理などさまざまなところで利用されているかと思います。そんなRedisをKubernetesで使う場合に考えるポイントを簡単に説明します。

続きを読む

OpenShiftでCA証明書を追加することについての検証

2021-03-01

こんにちは、もーすけです。
最近検証したOpenShiftへのCA証明書を追加することについてです。 どういうケースでCA証明書の追加が必要かというと、自己証明書で運用されているレジストリとかプロキシに接続しなければいけないケースなどです。 たとえば以下のようなケースでしょうか。

  1. 非インターネット環境でのOpenShiftのインストールでミラーレジストリを構築した場合(ミラーレジストリの証明書が必要なケース)
  2. OpenShift外にプライベートのコンテナレジストリを構築していて使っている場合(上とほぼ同義)
  3. インターネットに出るのにプロキシを経由する必要があり、その証明書が必要な場合
  4. 社内のセキュリティでTLS復号化装置(SSL可視化ソリューションとかよばれるもの)を導入しており、その機器の証明書をインストールしなければならない場合

このときの証明書の追加の動きについて確認したので見ていきたいと思います。

続きを読む

Jaegerを使った分散トレーシングの検証 on Kubernetes (1)

2021-02-08

もーすけです。
過去にDatadogでAPMを少し検証したり、トレーニングの中でJaegerを触ったりしましたが、正直ちゃんとわかっていなかったので、改めてJaegerというか分散トレーシングについて検証してみたいと思います。

今回はKubernetes上にJaegerを構築するので、Jaeger Operatorをインストールして利用します。 今回はOpenShiftにて検証していますが、他のKubernetesディストリビューションでも同じように利用可能です。ockubectl と置き換えて読んでください。 検証環境は下記のとおりです。

  • OpenShift: 4.4
  • Jaeger: 1.17
続きを読む

新形式のCKAを受験し合格しました。受験の教訓紹介。

2021-02-07

こんにちは、もーすけです。
本日は、ついに?ようやく?CKA(Certified Kubernetes Administorator)をとりましたのでその報告です。 いまさらのCKA取得に関することなので、CKAとはなんなのか?とかそのあたりについては本ブログでは割愛します。ぜひ他のブログを参照してください。 どちらかというと、個人的なモチベーションや準備したこと、受験に関する教訓(失敗談)などを中心にまとめたいと思います。 1年半ほど前にCKADをとったときのブログは以下です。合わせて読んでみてください。

続きを読む

Kubernetes上のアプリケーションをtcpdumpでデバッグする

2021-01-31

こんにちは、もーすけです。休日はもっぱら住宅購入の検討で忙しいマンです。
さて、本日は、Kubernetesのアプリケーションのデバッグに関して書きます。

Kubernetesで運用中のアプリケーションの障害対応で、ネットワーク関連のデバッグをしたいことはよくあります。 このブログでは具体的にtcpdumpを取得したいという場面を想定して書きます。 コンテナアプリケーションの開発・運用をしていると、イメージのサイズを小さく保っておきたいと思うはずです。 その理由についてはいろいろとありますが、イメージの展開のスピードを高めることで、デプロイや障害時の復旧を早めるなどが代表的なところです。(関連するトピックとして「コンテナイメージを軽くする方法と、その原理原則を考える」も読んでみてください。)

それゆえに、アプリケーションの動作に必要なライブラリ以外は入れないことが多く、デバッグツールを除外しておくことが多いでしょう。 しかし、障害発生時にいざtcpdumpやstrace, ping ,digなどを打ちたいと思ってもインストールされておらず困ることがあります。 そんな場面に遭遇しても焦らないようにあらかじめ対応策を頭に入れて練習しておきましょう。

続きを読む