株式会社ヴァンデミックシステム

Blog

<スポンサーリンク>

ダウンロード

curl https://raw.githubusercontent.com/helm/helm/master/scripts/get 
| バッシュ

ヘルム開始

ヘルム初期化

tillerデプロイメント

kubectl create serviceaccount --namespace kube-system tiller
kubectl create clusterrolebinding tiller-cluster-rule --clusterrole 
= cluster-admin --serviceaccount = kube-system:tiller
kubectl patch deploy --namespace kube-system tiller-deploy 
-p '{"spec":{"template":{"spec":{"serviceAccount": "tiller"}}}}'

出力

名前READYステータス再起動年齢
tiller-deploy-6b549fbc4d-8c5gz 1/1実行中0 46秒

ヘルムクリエイト

helm create mychart
〜/ D / helm❯❯❯ツリーマイチャート
マイチャート
├──Chart.yaml
├──チャート
├──テンプレート
│├──NOTES.txt
│├──_helpers.tpl
│├──deployment.yaml
│├──ingress.yaml
│├──service.yaml
│├──serviceaccount.yaml
│└──テスト
│└──test-connection.yaml
└──values.yaml

3つのディレクトリ、9つのファイル

テンプレートファイルの作成

rm -fr mychart / templates / *
エコー ""> mychart / values.yaml

ConfigMap作成

vim mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:mychart-configmap
日付:
  myvalue:「Hello World」

ヘルムインストール

helm install ./mychart
名前:vehement-tarsier
最終展開:2020年2月17日12:46:05
NAMESPACE:デフォルト
ステータス:導入済み

リソース:
==> v1 / ConfigMap
名前と年齢
mychart-configmap 0s

変数化

vim mychart / templates / configmap.yaml

.Release.Name は予約語

apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:{{.Release.Name}}-configmap
データ:
  myvalue:「Hello World」

ドライラン

helm install --debug --dry-run ./mychart

出力結果

[デバッグ]ローカルポートを使用して作成されたトンネル: '53525'

[デバッグ]サーバー: "127.0.0.1:53525"

[デバッグ]元のチャートバージョン:「」
[デバッグ]チャートパス:/ Users / yuta / Desktop / helm / mychart

NAME:けんかばかりするタツノオトシゴ
改訂:1
リリース:2020年2月17日12:49:39
チャート:mychart-0.1.0
ユーザー提供の値:
{}

計算された値:
{}

フック:
マニフェスト:

---
#ソース:mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:quarreling-seahorse-configmap
データ:
  myvalue:「Hello World」

values.yamlを使った変数化

vim mychart / values.yaml
favouriteDrink:コーヒー
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:{{.Release.Name}}-configmap
データ:
  myvalue:「Hello World」
  飲み物:{{.Values.favoriteDrink}}

ドライラン

helm install --debug --dry-run ./mychart
[デバッグ]ローカルポートを使用して作成されたトンネル: '53998'

[デバッグ]サーバー: "127.0.0.1:53998"

[デバッグ]元のチャートバージョン:「」
[デバッグ]チャートパス:/ Users / yuta / Desktop / helm / mychart

名前:mewing-abalone
改訂:1
リリース:2020年2月17日12:53:05
チャート:mychart-0.1.0
ユーザー提供の値:
{}

計算された値:
favouriteDrink:コーヒー

フック:
マニフェスト:

---
#ソース:mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:mewing-abalone-configmap
データ:
  myvalue:「Hello World」
  コーヒーを飲む

変数の構造化

mychart / values.yaml
お気に入り
  飲み物 コーヒー
  食べ物 ピザ
mychart / templates / configmap.yaml
apiVersion  v1 
kind  ConfigMap 
メタデータ
  name  {{.  Release.Name  }} -configmap 
data 
  myvalue  " Hello World" drink {{. Values.favorite.drink }} food 
{{. Values.favorite.food }} 
     
     

ドライラン

---
#ソース:mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:virulent-antelope-configmap
データ:
  myvalue:「Hello World」
  コーヒーを飲む
  食品:ピザ

パイプライン

mychart / templates / configmap.yaml
apiVersion  v1 
kind  ConfigMap 
メタデータ
  name  {{.  Release.Name  }} -configmap 
data 
  myvalue  " Hello World" drink {{. Values.favorite.drink 
| quote }} food {{. Values.favorite.food | アッパー| 引用}} 
    
    

ドライラン

#ソース:mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:whopping-seagull-configmap
データ:
  myvalue:「Hello World」
  コーヒーを飲む"
  フード:「PIZZA」

デフォルト値

mychart / templates / configmap.yaml
apiVersion  v1 
kind  ConfigMap 
メタデータ
  name  {{.  Release.Name  }} -configmap 
data 
  myvalue  " Hello World" drink {{. Values.favorite.drink 
| デフォルトの「お茶」| quote }} food {{. Values.favorite.food 
| アッパー| 引用}} 
    
    
mychart / values.yaml
お気に入り
  #drink:コーヒー
  フード ピザ

ドライラン

#ソース:mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:wishing-anteater-configmap
データ:
  myvalue:「Hello World」
  お茶を飲む"
  フード:「PIZZA」

if文

mychart / templates / configmap.yaml
apiVersion  v1 
kind  ConfigMap 
メタデータ
  name  {{.  Release.Name  }} -configmap 
data 
  myvalue  " Hello World" drink {{. Values.favorite.drink 
| デフォルトの「お茶」| quote }} food {{. Values.favorite.food 
| アッパー| quote }} {{ if eq .Values.favorite.drink "coffee" }} mug 
true {{end}} 
     

ドライラン

---
#ソース:mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:mychart-1581971207-configmap
データ:
  myvalue:「Hello World」
  コーヒーを飲む"
  フード:「PIZZA」
  マグカップ:真

変数スコープの変更

.Values.favorite.drink ⇨ .drink

mychart / templates / configmap.yaml
apiVersion  v1 
種類 ConfigMap 
メタデータ
  名前 {{.  Release.Name  }} -configmap 
データ
  myvalue  " Hello World" {{ -with .Values.favorite }} 
ドリンク{{. drink | デフォルトの「お茶」| 引用}} 食品{{. food | アッパー| 引用}} 
{{ -終了}}     
   

範囲

for文

mychart / values.yaml
好きな
  ドリンク コーヒー
  食べ物 ピザ
pizzaToppings 
  -  キノコ
  -  チーズ
  -  pappers 
  -  タマネギ
mychart / templates / configmap.yaml
apiVersion  v1 
種類 ConfigMap 
メタデータ
  名前 {{.  Release.Name  }} -configmap 
データ
  myvalue  " Hello World" {{ -with .Values.favorite }}
ドリンク{{. drink | デフォルトの「お茶」| 引用}} 食品{{. food | アッパー| 引用}}
{{ -エンド}} トッピング| - {{ -レンジ.Values.pizzaToppings}} 
- {{。| タイトル| 引用}} {{-終了}} 
 
     
     
   
   
    
    
    

ドライラン

#ソース:mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:mychart-1581971691-configmap
データ:
  myvalue:「Hello World」
  コーヒーを飲む"
  フード:「PIZZA」
  トッピング:|-
    - "きのこ"
    - "チーズ"
    -「パパーズ」
    - "玉ねぎ"

変数

template内で変数を代入する

mychart / templates / configmap.yaml
apiVersion  v1 
kind  ConfigMap 
メタデータ
  name  {{.  Release.Name  }} -configmap 
data 
  myvalue  " Hello World" {{ -$ relname = .Release.Name- }} 
{{ -with .Values.favorite }} ドリンク{{. drink | デフォルトの「お茶」| 引用}} 
食品{{. food | アッパー| 引用}} リリース{{ $ relname }} {{ -終了 
     
   }}

ドライラン

#ソース:mychart / templates / configmap.yaml
apiVersion:v1
種類:ConfigMap
メタデータ:
  名前:mychart-1581971910-configmap
データ:
  myvalue:「Hello World」
  コーヒーを飲む"
  フード:「PIZZA」
  リリース:mychart-1581971910

<スポンサーリンク>

コメントを残す

Allowed tags:  you may use these HTML tags and attributes: <a href="">, <strong>, <em>, <h1>, <h2>, <h3>
Please note:  all comments go through moderation.

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)