0Pricing
DevOps Bootcamp · レッスン

標準ラベルと命名規則

推奨されるラベルと fullname のルールに従います。

「標準ラベルと命名規則」はCoddyKit上の無料DevOps Bootcampレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDevOps Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 DevOps Bootcampコースには全4レッスンが含まれています。

ラベルが重要な理由

チャートが作成するすべてのリソースには、後から人やツールが見つけたり、グループ化したり、削除したりできるようにラベルが必要です。適切なラベルは、整理されたクラスターの基盤です。

推奨ラベルセット

Kubernetesでは、app.kubernetes.ioプレフィックスの下に推奨ラベルが定義されています。Helmチャートはこれに従うため、リソースをダッシュボードや他のツールと適切に連携できます。

labels:
  app.kubernetes.io/name: myapp
  app.kubernetes.io/instance: myapp-prod

name と instance

ラベルapp.kubernetes.io/nameはアプリの種類を表し、app.kubernetes.io/instanceは特定のリリースを表します。同じチャートを2回インストールすると、nameは同じですがinstanceは異なります。

managed-by がツールを示す

app.kubernetes.io/managed-byをHelmに設定すると、クラスターを確認する人は誰でも、これらのリソースがHelmによって管理・更新されていることをすぐに把握できます。

app.kubernetes.io/managed-by: Helm

バージョンラベル

チャートのappVersionからapp.kubernetes.io/versionを追加し、チャート名とバージョンからhelm.sh/chartを追加します。これらを組み合わせることで、実際に配布されたものを正確に特定できます。🏷️

セレクターのラベルは安定させる

Deploymentのselectorラベルはインストール後に変更してはいけません。そのため、チャートではnameとinstanceだけからなる小さく不変のサブセットを使用し、versionは含めません。

selector:
  matchLabels:
    app.kubernetes.io/name: myapp
    app.kubernetes.io/instance: myapp-prod

fullnameの規則

Helmは、リリース名とチャート名を結合したfullnameでリソースに名前を付けます。たとえばmyapp-prod-webのようにすることで、2つのリリースがリソース名で衝突することを防ぎます。

63文字制限の理由

Kubernetesでは名前が63文字までに制限されているため、標準のfullnameヘルパーは長い名前を切り詰め、末尾のダッシュを削除して有効な名前にします。

{{ include "myapp.fullname" . }}

_helpers.tplによる再利用

ラベルを_helpers.tplに名前付きテンプレートとして一度定義し、すべてのリソースでインクルードします。変更箇所を1か所に集約することで、すべてのマニフェストの一貫性を保てます。

{{ include "myapp.labels" . | nindent 4 }}

ラベルを詰め込みすぎない

ラベルは選択とグループ化のためのものであり、大きなデータを格納するためのものではありません。説明用の、識別情報を含まない情報は代わりにアノテーションへ入れ、セレクターを高速に保ちます。

配布した内容を確認する

インストール後、kubectl get pods --show-labelsを実行し、リソースに期待どおりのラベルが付いていることを確認します。信頼するだけでなく、検証してください。

kubectl get all -l app.kubernetes.io/instance=myapp-prod

クイックチェック

同じチャートを別にインストールした場合と、あるリリースを区別するラベルはどれですか?

まとめ

推奨ラベル、fullnameの規則、63文字制限、そしてセレクターのラベルを安定させる理由を学びました。一貫した命名によって、クラスターをきれいに保てます。✅

よくある質問

「標準ラベルと命名規則」レッスンは無料ですか?

はい。「標準ラベルと命名規則」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、DevOps Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 DevOps Bootcampコースには全4レッスンが含まれています。

「標準ラベルと命名規則」で何を学びますか?

推奨されるラベルと fullname のルールに従います。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

DevOps Bootcampを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのDevOps Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「標準ラベルと命名規則」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このDevOps Bootcampレッスンでコードを書いて実行できますか?

はい。すべてのDevOps Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 標準ラベルと命名規則
  2. 適切で文書化されたデフォルト値
  3. securityContext による Pod の堅牢化
  4. バージョンの固定と latest の回避
← DevOps Bootcampに戻る