创建 deployment 模版文件
cat nginx-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 80
部署pod
默认部署在 default namespace
kubectl apply -f nginx-deployment.yaml
查看deployment
kubectl get deployment

查看部署的pod
kubectl get pod

部署 service
创建service服务模版
cat nginx-service.yaml
apiVersion: v1
kind: Service
metadata:
name: nginx-service
labels:
app: nginx
spec:
ports:
- port: 88
targetPort: 80
selector:
app: nginx
type: NodePort
为了让主机访问 k8s 提供的nginx 服务,我们需要在 nginx-service.yaml 规范 spec 中指定 type 为 NodePort。
发布服务
kubectl create -f nginx-service.yaml
查看已发布服务
kubectl get svc

我们看到映射的外部端口为 32263
使用 vip:32263 既可访问 nginx
本文介绍如何在Kubernetes中使用yaml模版文件创建Nginx Deployment和Service,实现服务的部署和对外暴露,包括配置Deployment模版、Service模版,以及通过kubectl命令进行部署和服务发布。
144

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



