spec: containers: - name: xxx env: # 獲取pod ip,並賦值給容器內的環境變量POD_IP - name: POD_IP valueFrom: fieldRef: apiVersion: v1 fieldPath: status.podIP
檢查api
echo $POD_IP
獲取pod的其餘屬性添加到環境變量,如pod名, pod所在命名空間等運維
spec: containers: - name: xxx env: # 獲取pod id,並賦值給容器內的環境變量POD_ID - name: POD_ID valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.uid # 獲取pod 名字,並賦值給容器內的環境變量POD_NAME - name: POD_NAME valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.name # 獲取pod所在namespace,並賦值給容器內的環境變量POD_NAMESPACE - name: POD_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace
同一應用啓n個pod時, 若是對應業務機器數量小於n, 就會有多個pod被部署在同一機器, 而應用日誌都會經過數據卷掛載到宿主機, 所以會發生多個pod同時寫入日誌到宿主機相同文件的狀況,這樣不只影響性能, 並且多個pod的日誌混雜在一塊兒, 不利於運維分析.性能
能夠在應用的日誌文件名字中加入POD_IP, 由於pod ip是不會重複的ui