Kubernetes-ラベルとセレクター
ラベル
ラベルは、ポッド、レプリケーションコントローラー、およびサービスに添付されるキーと値のペアです。これらは、ポッドやレプリケーションコントローラーなどのオブジェクトの属性を識別するために使用されます。それらは作成時にオブジェクトに追加でき、実行時に追加または変更できます。
セレクター
ラベルは一意性を提供しません。一般に、多くのオブジェクトが同じラベルを付けることができると言えます。ラベルセレクターは、Kubernetesのコアグループ化プリミティブです。これらは、ユーザーがオブジェクトのセットを選択するために使用されます。
Kubernetes APIは現在、2種類のセレクターをサポートしています-
- 平等ベースのセレクター
- セットベースのセレクター
平等ベースのセレクター
キーと値によるフィルタリングが可能です。一致するオブジェクトは、指定されたすべてのラベルを満たす必要があります。
セットベースのセレクター
セットベースのセレクターを使用すると、値のセットに従ってキーをフィルタリングできます。
apiVersion: v1
kind: Service
metadata:
name: sp-neo4j-standalone
spec:
ports:
- port: 7474
name: neo4j
type: NodePort
selector:
app: salesplatform ---------> 1
component: neo4j -----------> 2
上記のコードでは、ラベルセレクターを次のように使用しています。 app: salesplatform およびコンポーネントとして component: neo4j。
を使用してファイルを実行したら kubectl コマンド、それは名前でサービスを作成します sp-neo4j-standalone これはポート7474で通信します。ypeは NodePort 新しいラベルセレクターを app: salesplatform そして component: neo4j。