K8S 環境變數

2021-10-01 23:06:34 字數 2528 閱讀 6727

建立 pod 時,可以為其下的容器設定環境變數。通過配置檔案的env或者envfrom欄位來設定環境變數。

本示例中,將建立乙個只包含單個容器的 pod。pod 的配置檔案中設定環境變數的名稱為demo_greeting, 其值為"hello from the environment"。下面是 pod 的配置檔案內容:

apiversion: v1

kind: pod

metadata:

name: envar-demo

labels:

purpose: demonstrate-envars

spec:

containers:

- name: envar-demo-container

image: gcr.io/google-samples/node-hello:1.0

env:

- name: demo_greeting

value: "hello from the environment"

- name: demo_farewell

value: "such a sweet sorrow"

1、基於 yaml 檔案建立乙個pod

2、獲取一下當前正在執行的pods資訊:

kubectl get pods -l purpose=demonstrate-envars
3、查詢結果應為:

name            ready     status    restarts   age

envar-demo 1/1 running 0 9s

4、進入該pod下的容器並開啟乙個命令終端:

kubectl exec -it envar-demo -- /bin/bash
5、在命令終端中通過執行printenv列印出環境變數。

root@envar-demo:/# printenv
列印結果應為:

node_version=4.4.2

example_service_port_8080_tcp_addr=10.3.245.237

hostname=envar-demo

...demo_greeting=hello from the environment

demo_farewell=such a sweet sorrow

6、通過鍵入exit退出命令終端。

注意:通過envenvfrom字段設定的環境變數將覆蓋容器映象中指定的所有環境變數。

您在 pod 的配置中定義的環境變數可以在配置的其他地方使用,例如可用在為 pod 的容器設定的命令和引數中。在下面的示例配置中,環境變數greetinghonorificname分別設定為warm greetings tothe most honorablekubernetes。然後這些環境變數在傳遞給容器env-print-demo的 cli 引數中使用。

apiversion: v1

kind: pod

metadata:

name: print-greeting

spec:

containers:

- name: env-print-demo

image: bash

env:

- name: greeting

value: "warm greetings to"

- name: honorific

value: "the most honorable"

- name: name

value: "kubernetes"

command: ["echo"]

args: ["$(greeting) $(honorific) $(name)"]

建立後,命令echo warm greetings to the most honorable kubernetes將在容器中執行

在pod中配置環境變數,這些變數可以傳遞到pod中的容器裡,最後再傳遞到容器對應的映象中的指令碼裡,這樣可以靈活控制容器的行為,非常方便。

K8s集群環境搭建 K8s安裝(2)

k8s集群環境搭建 基礎環境配置 1 k8s集群環境搭建 k8s安裝 2 k8s集群環境搭建 安裝keepalived和haproxy 3 k8s集群環境搭建 k8s集群初始化 4 k8s集群環境搭建 安裝metrics和dashboard 5 一 安裝docker 所有節點 檢視docker版本有...

k8s本地環境搭建

提前安裝docker,學習使用絕大部分的場景使用的是docker驅動,而且k8s學習與docker相一致。不要使用docker desktop for mac windows 中的 k8s,其安裝配置在國內 因為網路問題 是乙個天坑,浪費時間生命,還會搞的docker下一堆映象和容器,影響docke...

K8s部署prometheus監控K8s細節

prometheus 一些配置檔案可以再github上找到。部署 root kube prometheus manifests 目錄下所有檔案 部署 root kube prometheus manifests setup 目錄下所有檔案 要注意的是自己要建立乙個工作空間 如果報錯執行下面語句 部署...