ry's Tech blog

Cloud Native技術などについて書いていきます。

Kubenews #43

2022-1-14

Zarf (click here to source)

Air gapというAir gapサーバーなどをかませて、インターネットとLANを隔離しているような環境でKubernetes Clusterを容易に構築するためのものらしい。

ここを見る限り、zarf initを叩くだけでkubernetesが動いてそう。

Improving Application Availability with Pod Readiness Gates (click here to source)

場合によっては、Liveness ProveやReadiness ProveをPodに対して適用できる状態では無かったり、より複雑なreadinessチェックをしたい場合にどうすれば良いかという問いに対して、Readiness Gateがあるよというお話。

設定としては以下のように定義を追加するだけ。

kind: Pod
...
spec:
  readinessGates:
    - conditionType: "www.example.com/some-gate-1"

これをapplyすると、このPodをdescribeすると以下のように表示される。

...
Conditions:
  Type                          Status
  www.example.com/some-gate-1   False
  Initialized                   True
  Ready                         False
  ContainersReady               True
  PodScheduled                  True

以下のような例が上がっていた。

qiita.com

PodとしてはReadyになっているものの、Readuness Gateで設定されたものがTrueにされるまで、ServiceのEndpointに配置されないというものである。

ここのパラメータは、kubectl patch などでは変更できないため、kubectl proxy をして、curlを用いて直接APIを叩く必要がある。

Hello youki! (click here to source)

Rustで書かれたOCI Runtimeであるyoukiについて書かれている。

ちょっとしたベンチマークの情報なども載っている。

BumbleBee: Build, Ship, Run eBPF tools (click here to source)

Bumblebeeは、eBPFプログラムのパッケージ化、配布、およびユーザースペースコードの自動生成に重点を置いています。

initコマンドは、ビルドする予定のeBPFプログラムについていくつかの設定を行うようなリクエストをして、コードテンプレートを自動生成します。 この時点で、カーネルに必要な機能を実装するために必要なeBPFコードを追加できます。

bee init

buildで、OCIパッケージのeBPFイメージが作成され、ワークフローに配置し、環境にデプロイできます。

bee build <initで作成したファイル名> my_probe:v1

runをすることで、プログラムを実行出来ます。

bee run my_probe:v1

Minecraft as a k8s admin tool (click here to source)

すごい昔の記事だが、面白そうなので紹介します。

  • 豚はPod
  • 牛はReplicaSets
  • 鶏はService
  • 馬はDeployment