我是kubernetes的新手。无论如何,我们可以确定pod的名称吗?如果我们仅创建一个副本,那么我想一直以相同的名称生成。它一直在产生不同的名称。如果要查看容器的日志,则每次需要使用新生成的Pod名称更改命令时。
以下是YAML文件的示例。
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nagendra-app-deploy1
spec:
replicas: 1
template:
metadata:
name: nagendra-app-deploy1
labels:
app: nagendra-app-deploy1
spec:
containers:
- name: nagendra-spring-app1
image: springbootapp:v1
ports:
- containerPort: 8080
- name: nagendra-myImage
image: myImage:v2
答案 0 :(得分:3)
无法为部署生产的pod生成相同的名称。就命令而言,您可以使用kubectl get po -l app=nagendra-app-deploy1 -o jsonpath={.items[0].metadata.name}
来获得广告连播的名称。
答案 1 :(得分:1)
这是诀窍,我用来获取部署的日志
kubectl logs -f $(kubectl get deployment -o name | grep DEPLOYMENT_NAME | head -n 1)
例如,在您的情况下,我只需要更改相当静态的deploy_name即可。
kubectl logs -f $(kubectl get deployment -o name | grep nagendra-app-deploy1 | head -n 1)
答案 2 :(得分:0)
如果您不需要部署(不需要滚动更新,也没有监视Pod是否启动的副本集),则可以简单地部署Pod。
一个简单的pod会在更新中保留其名称。