版本在运维的重要性

前两天遇到一个问题,就是部署在华为云的容器的某个应用,无论怎么更新似乎应用的版本都没有真正被更新。

这里有一个很有趣的问题:你怎么判断是应用没有更新问题,还是更新了没有解决问题?

这个问题,我们这么解决的:

在所有打包的java应用(包括前端web应用上面都标记了版本),因此,我查…com/app1/version/latest.json

image


发现git-sha是老的版本,编译时间也不对。

从上面发现版本是v1.0,编译时间为10点43分,git-sha1是d558049, 根据这个信息再去检查是否用了最新的代码。

再去看是否推送到华为云的镜像库,根据 digest id 是正确的。

最后发现,原来k8s 里面有一个image pull policy,用的 Ifnotpresent,即如果本地有,则不去拉取最新的镜像。

呃呃。。。

改为 always 正常了。


回到问题的初始: 你现在的运行应用,你知道它是那个git的分支,哪个commit 版本么?

不要跟小明一样,我要我认为。。。不要你认为。。。










对。

posted on 2020-02-18 23:43  一望无际的南  阅读(203)  评论(0编辑  收藏  举报

导航