0

Kubernetes 環境で実行される 2 つのコンポーネントがあります。1 つは (Kubernetes API を使用して) クラスター内のすべてのノードをリストし、もう 1 つはそれが実行されているノードの詳細を最初のノードに報告しています。

最初のコンポーネントを、2 番目のコンポーネントから報告されたノードと、最初のコンポーネントのリスト内のノードに一致させたいと考えています。

そのためには、次の 2 つが必要です。

  1. Kubernetes クラスター内のノードの一意の値を識別します。
  2. 2 つの異なる場所 (Kubernetes API とノード自体) からノードの同じ ID を取得します。

ノードの識別:

Kubernetes ノードを特定しようとしています。しかし、ノードの一意の識別子をまだ取得できません。

最初は、フィールド machine-id が一意であると思っていましたが、そうではありません (ノードのクローン作成時にコピーされます)。次に、_ で構成される識別式を作成しました。

この式はユニークではありませんが、今のところかなりうまく機能しています。

2 つの異なる方法を使用して同じノード ID を取得します。

Kubernetes API を使用し、ノードのオペレーティング システムでコマンドを実行することによって、ノードの machine_id とホスト名を取得するのは非常に簡単です。私が直面している問題は、場合によっては ID が一致しないことです。特に、ホスト名は同一ではありません。 Kubernetes API を使用してホスト名を取得しても、ノードの実際のホスト名は返されません。 IKS と ICP でこの問題に直面しています。

Kubernetes ノードの一意の ID を取得する通常の方法はありますか? ノードでコマンドを実行し、API を使用して同じ結果を返すものはありますか?

4

1 に答える 1