在Kubernetes中,配置文件通常以YAML格式编写,用于定义各种资源,如Deployments、Services、Pods等。以下是一个简单的示例,展示了如何编写一个Deployment和一个Service的配置文件。
1.Deployment 配置文件
deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app-deployment
labels:
app: my-app
spec:
replicas: 3
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app-container
image: my-registry/my-app:latest
ports:
- containerPort: 80
resources:
requests:
memory: "64Mi"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"
这个Deployment配置文件定义了一个名为my-app-deployment
的Deployment,它指定了:
- 使用
my-registry/my-app:latest
作为容器的镜像。 - 容器内部监听的端口是80。
- 请求和限制的资源分别是64Mi内存和250m CPU,以及128Mi内存和500m CPU的限制。
- 副本数量为3。
2.Service 配置文件
service.yaml
apiVersion: v1
kind: Service
metadata:
name: my-app-service
spec:
type: ClusterIP
selector:
app: my-app
ports:
- port: 80
targetPort: 80
这个Service配置文件定义了一个名为my-app-service
的Service,它指定了:
- 使用
ClusterIP
类型,这意味着Service只能在集群内部访问。 - 选择标签为
app: my-app
的Pods作为服务的后端。 - 将Service的80端口映射到Pods的80端口上。
3.部署到Kubernetes集群
要将这些配置文件应用到Kubernetes集群中,您可以使用kubectl
命令行工具。首先,确保您已经连接到集群。然后,使用以下命令:
kubectl apply -f deployment.yaml
kubectl apply -f service.yaml
这些命令会读取YAML文件,并创建或更新Kubernetes集群中的Deployment和Service资源。之后,您可以通过集群内部的其他服务或Pod来访问这个Service,或者如果您配置了Ingress,那么还可以从集群外部访问它。
标签:服务,配置文件,Service,部署,app,Deployment,80,k8s,my From: https://www.cnblogs.com/you-fish/p/18407781