我们是否需要在kubernetes中重复yaml文件中的端口?
目前我正在为kubernetes编写一个yaml文件,我对最佳实践有一些疑问。比如,我必须在每个{服务、部署Pod}中声明我要打开的端口吗 我没有找到任何建议:( 你看到了什么,比我可以写优化我的yaml文件? 提前感谢您的帮助和建议我们是否需要在kubernetes中重复yaml文件中的端口?,kubernetes,kubectl,minikube,Kubernetes,Kubectl,Minikube,目前我正在为kubernetes编写一个yaml文件,我对最佳实践有一些疑问。比如,我必须在每个{服务、部署Pod}中声明我要打开的端口吗 我没有找到任何建议:( 你看到了什么,比我可以写优化我的yaml文件? 提前感谢您的帮助和建议 apiVersion: v1 kind: Service metadata: name: karaf namespace: poc spec: type: NodePort selector: app: karaf ports: -
apiVersion: v1
kind: Service
metadata:
name: karaf
namespace: poc
spec:
type: NodePort
selector:
app: karaf
ports:
- name: port6443
port: 6443
targetPort: 6443
nodePort: 30105
- name: port5000
port: 6100
targetPort: 6100
nodePort: 30100
- name: port5001
port: 6101
targetPort: 6101
nodePort: 30101
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: karaf
namespace: poc
spec:
replicas: 1
template:
metadata:
labels:
app: karaf
spec:
containers:
- name: karaf
image: "xxxxxx/karaf:ids-1.1.0"
imagePullPolicy: Always
ports:
- containerPort: 6443
protocol: TCP
- containerPort: 6100
protocol: TCP
- containerPort: 6101
protocol: TCP
---
apiVersion: v1
kind: Pod
metadata:
name: karaf
labels:
app: karaf
spec:
containers:
- name: karaf
image: "xxxxxxxxxx/karaf:ids-1.1.0"
ports:
- containerPort: 6443
ports:
- containerPort: 6100
ports:
- containerPort: 6101
不要重复
端口:
多次输入部署/pod,因为您的pod继承了启动它的部署,所以我假设您将它放在这里只是为了参考,因为手动创建它没有意义),这是一个列表,所以
port:
- containerPort: 6443
- containerPort: 6100
- containerPort: 6101
此外,您实际上不必在这里定义端口,尽管这有助于明确什么在哪里运行。如果您不这样做,您的软件仍将在其使用的端口上启动,并且服务将成功地将流量定向到这些端口。感谢您的回答,我还有一个问题,如何在kubernetes中获取配置文件。我有很多配置文件,通过volumeMounts还是通过配置映射来获取更好吗?