2025年2月9日日曜日

Cilium(少し深掘り)トレースしてみる

公式:

https://docs.cilium.io/en/latest/gettingstarted/k8s-install-default/



Mac版を導入:

CILIUM_CLI_VERSION=$(curl -s https://raw.githubusercontent.com/cilium/cilium-cli/main/stable.txt)

CLI_ARCH=amd64

if [ "$(uname -m)" = "arm64" ]; then CLI_ARCH=arm64; fi

curl -L --fail --remote-name-all https://github.com/cilium/cilium-cli/releases/download/${CILIUM_CLI_VERSION}/cilium-darwin-${CLI_ARCH}.tar.gz{,.sha256sum}

shasum -a 256 -c cilium-darwin-${CLI_ARCH}.tar.gz.sha256sum

sudo tar xzvfC cilium-darwin-${CLI_ARCH}.tar.gz /usr/local/bin

rm cilium-darwin-${CLI_ARCH}.tar.gz{,.sha256sum}















インストール後の確認を行う

cilium status --wait












動作確認テストを行ってみる

cilium connectivity test
























以下結果











次にhubbleという解析コマンドを導入する

HUBBLE_VERSION=$(curl -s https://raw.githubusercontent.com/cilium/hubble/master/stable.txt)

HUBBLE_ARCH=amd64

if [ "$(uname -m)" = "arm64" ]; then HUBBLE_ARCH=arm64; fi

curl -L --fail --remote-name-all https://github.com/cilium/hubble/releases/download/$HUBBLE_VERSION/hubble-darwin-${HUBBLE_ARCH}.tar.gz{,.sha256sum}

shasum -a 256 -c hubble-darwin-${HUBBLE_ARCH}.tar.gz.sha256sum

sudo tar xzvfC hubble-darwin-${HUBBLE_ARCH}.tar.gz /usr/local/bin

rm hubble-darwin-${HUBBLE_ARCH}.tar.gz{,.sha256sum}












以下の結果をみると、エラーがでてるな







valeus.yamlを作成する

# values.yaml

securityContext:
# Pod全体に対して特権モードを有効にする
privileged: true

# BPFの設定
bpf:
enabled: true

hubble:
enabled: true
relay:
enabled: true
ui:
enabled: true # Hubble UI (Grafana) も有効にする場合は true


更新する

helm upgrade cilium cilium/cilium -f values.yaml -n cilium



ちなみにcliでも追加可能:

cilium install --set hubble.enabled=true --set hubble.relay.enabled=true --set hubble.ui.enabled=true # Hubble UI も有効にする場合

# または

cilium install --set hubble.enabled=true --set hubble.relay.enabled=true # Hubble Relay のみ有効にする場合



試しにポートフォワード実行










全体で確認



















以下のコマンドで、トラフィックの検索ができる(DROPの確認も含めて)









hubbleUIを入れてみる:

cilium hubble enable --ui


起動させる:

cilium hubble ui



以下、起動画面:















































各種、通信の状況が把握できる











0 件のコメント:

コメントを投稿

istio ingress gateway(指定したEnvoyプロキシが接続しているクラスターの情報表示)

指定した Envoy プロキシが接続しているクラスターの情報を表示しています。 出力からは、Envoy プロキシがどのサービスに対して接続設定を持っているか またはどのサービスとの通信が行われているかを確認できます。 [出力の説明] SERVICE FQDN :  接続先サービス...