Kubernetes

【k8s】cm-获取和修改

本文主要是介绍【k8s】cm-获取和修改,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

环境

  1. kubernetes 1.20.6
  2. Spring Boot 2.5.0-M3

目标

学习获取和修改 cm 中数据的方式。

示例

获取 cm 中的全部数据

[root@master ~]# kubectl describe cm configmap4
Name:         configmap4
Namespace:    default
Labels:       <none>
Annotations:  <none>

Data
====
test.json:
----
{
  "name": "jiangbo",
  "age": 44
}

test.properties:
----
name=jiangbo
age=44

Events:  <none>
[root@master ~]# kubectl get cm configmap4 -o jsonpath='{.data.test\.json}'
{
  "name": "jiangbo",
  "age": 44
}
[root@master ~]# kubectl get cm configmap4 -o jsonpath='{.data.test\.properties}'
name=jiangbo
age=44
[root@master ~]#

获取 cm 中的单个数据

[root@master ~]# kubectl get cm configmap4 -o jsonpath='{.data.test\.json}' | jq -r .name
jiangbo
[root@master ~]# source <(kubectl get cm configmap4 -o jsonpath='{.data.test\.properties}');echo $name
jiangbo

修改 cm 中的数据 1

[root@master ~]# sed -i 's/age=44/age=4444/g' config/test.properties
[root@master ~]# kubectl create cm configmap4 --from-file=config -o yaml --dry-run=client | kubectl apply -f -
configmap/configmap4 configured
[root@master ~]# kubectl describe cm configmap4
Name:         configmap4
Namespace:    default
Labels:       <none>
Annotations:  <none>

Data
====
test.json:
----
{
  "name": "jiangbo",
  "age": 44
}

test.properties:
----
name=jiangbo
age=4444

Events:  <none>

修改 cm 中的数据 2

[root@master ~]# kubectl get cm configmap4 -o yaml |sed 's/age=44/age=4444/g' | kubectl apply -f -
configmap/configmap4 configured
[root@master ~]# kubectl describe cm configmap4
Name:         configmap4
Namespace:    default
Labels:       <none>
Annotations:  <none>

Data
====
test.json:
----
{
  "name": "jiangbo",
  "age": 44
}

test.properties:
----
name=jiangbo
age=4444

Events: <none>

总结

介绍了获取和修改 cm 的方式。

附录

这篇关于【k8s】cm-获取和修改的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!