kubernetes-5yamlファイルの詳細な説明

概要概要

k8sクラスターでのリソース管理とリソースオブジェクトの配置とデプロイは、ライフスタイル(YAML)ファイルを介して解決できます。つまり、リソースオブジェクトを操作する必要性をYAML形式のファイルに編集できます。このファイルをリソースリストファイル。kubectlコマンドは、リソースマニフェストファイルを直接使用して、多数のリソースオブジェクトを配置およびデプロイします。通常、開発するときは、yamlファイルを構成してクラスターをデプロイします。
YAMLファイル:リソースの配置に使用されるリソースリストファイル

YAMLファイルの紹介

YAMLの概要

YAML:はマークアップ言語です。この言語がマークアップ言語ではなくデータ中心であることを強調するために。
YAMLは、データシーケンスを表現するために使用される非常に読みやすい形式です。

YAMLの基本構文

インデントとしてスペースを使用します
。同じレベルの要素が左揃えである限り、インデントされたスペースの数は重要で
はありません。下位バージョンのインデントではTabキーは使用できません。スペースのみが許可されます。
コメントをマークするには#を使用します。この文字から行末まで。インタプリタによって無視されます。
使用—新しいyamlファイルの開始を示します。

YAMLでサポートされるデータ構造

オブジェクト

キーと値のペアのコレクション。マッピング/ハッシュ/辞書とも呼ばれ
ます。#オブジェクトタイプ:
名前を表すためにコロン構造を使用した、オブジェクトのキーと値のペアのセット:ベン
年齢:18

#yamlでは、すべてのキーと値のペアをインラインオブジェクト
ハッシュとして書き込む別の方法も使用できます:{名前:ベン、年齢:18}

アレイ

#Array type:配列を形成するための接続詞で始まる行のグループ
People
-Tom
-Jack

#Arrayはインライン表記を使用することもできます
People:[Tom、Jack]

YAMLファイルコンポーネント

主に2つの部分に分かれており、1つはコントローラーの定義であり、もう1つは制御対象です。

コントローラの定義

APIバージョン、コントローラータイプ

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  namespace: default
spec:
  replicas: 3
  selector: 
    matchLables:
      app: nginx

制御対象

いくつかの画像、バージョン、ポートなどが含まれています。

  template:
    metadata:
      lables:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:latest
        ports: 
        - containerPort: 80

プロパティの説明

YAMLファイルのコントローラー定義には、多くの属性名があります

属性名 前書き
apiVersion APIバージョン
種類 リソースタイプ
メタデータ リソースメタデータ
スペック リソース仕様(予想)
レプリカ 部数
セレクタ ラベルセレクター
テンプレート ポッドテンプレート
スペック ポッドの期待
コンテナ 容器配置

YAMLファイルを作成する簡単な方法

一般的に、YAMLファイルを自分で作成することはめったにありません。これは、関連するコンテンツが多く、通常はツールを使用して作成するためです。

kubectlcreateコマンドを使用する

この方法は通常、リソースがデプロイされていない場合に使用されます。YAML構成ファイルを直接作成できます。

#尝试运行,并不会真正的创建镜像
kubectl create deployment web --image=nginx -o yaml --dry-run=client

または、ファイルにリダイレクトすることもできます

kubectl create deployment web --image=nginx -o yaml --dry-run=client > web.yaml

次に、このテンプレートを使用して変更できます

kubectlgetコマンドを使用してyamlファイルをエクスポートします

ここでは、構成ファイルをエクスポートするためにデプロイされたイメージが必要です

kubectl get deployment web -o yaml > web.yaml

必要なYAMLファイルを変更します

閲覧していただきありがとうございます!

おすすめ

転載: blog.csdn.net/qq_51574197/article/details/115192215