Configmap是kubernetes的一种资源对象,可以将应用的配置信息与容器镜像解耦,即配置信息的修改不需要重新构建容器镜像。
读取配置信息
我们将configmap的配置信息映射到容器的/etc/config/application.yaml文件中。
因此我们首先修改读取配置文件的程序common/config/config.go:
func initConfigByStream() (err error) {
// 从容器目录etc/config/application.yaml读取配置信息
values, err := ioutil.ReadFile("etc/config/application.yaml")
if err != nil {
fmt.Println(err.Error())
return
}
// 设置配置文件格式为yaml
viper.SetConfigType("yaml")
err = viper.ReadConfig(bytes.NewReader(values))
if err != nil {
fmt.Println(err.Error())
return
}
return
}
创建configmap
在configmap.go中创建三个函数,分别用于创建configmap、修改configmap和删除configmap。
func CreateConfigmap(clientset *kubernetes.Clientset, cmr *ConfigmapResource) {
configmapsClient := clientset.CoreV1().ConfigMaps(cmr.Namespace)

本文介绍了如何在Kubernetes中使用ConfigMap部署微服务的配置,通过创建、修改和验证ConfigMap来实现配置与镜像的解耦。详细讲解了在Golang中操作ConfigMap的步骤,包括读取配置信息、创建和更新ConfigMap、修改Deployment以挂载ConfigMap,以及验证ConfigMap的生效。提供了完整的代码示例链接。
最低0.47元/天 解锁文章
2745

被折叠的 条评论
为什么被折叠?



