通過Serverless集群快速部署Nginx應用
更新時間 2025-04-30 17:26:32
最近更新時間: 2025-04-30 17:26:32
分享文章
本文介紹如何通過Serverless集群快速部署Nginx應用。
Serverless集群不需要用戶管理維護節點,讓您將精力放在具體應用的開發和維護上,而不是底層基礎設施的管理。本文將介紹如何在Serverless集群上實現在線Web應用的免運維托管。
前提條件
確保您已經成功創建了Serverless集群。
背景信息
Serverless集群兼容原生Kubernetes語義和API,您可以在Serverless集群中輕松創建Deployment、StatefulSet、Service、Ingress、ConfigMap或Secret等資源。此外,您也可以使用Helm部部署和管理復雜的Kubernetes應用程序的生命周期。
操作步驟
1.通過kubectl工具連接Serverless集群。
2.創建Nginx應用的YAML配置文件nginx.yaml,內容示例如下:
apiVersion: v1
kind: Service
metadata:
name: nginx-service
namespace: default
spec:
selector:
app: nginx
ports:
- protocol: TCP
port: 30003
targetPort: 80
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
namespace: default
labels:
app: nginx
spec:
selector:
matchLabels:
app: nginx
replicas: 2
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: registry-huadong1.crs-internal.daliqc.cn/open-source/nginx:1.25-alpine
resources:
limits:
cpu: "1"
memory: "1Gi"
requests:
cpu: "0.5"
memory: "500Mi"
ports:
- containerPort: 80
3.通過該配置文件部署Nginx應用。
kubectl?apply?-f?nginx.yaml?
預期返回為:
service/nginx-service?created
deployment.apps/nginx-deployment?created
4.查看創建Pod和Serivce的狀態,查看Pod的狀態信息:
kubectl?get?pod
預期輸出結果為:
NAME????????????????????????????????READY???STATUS????RESTARTS???AGE
nginx-deployment-7d4df6ffc8-52dr8???1/1?????Running???0??????????12m
nginx-deployment-7d4df6ffc8-gshq4???1/1?????Running???0??????????12m
查看Service的狀態信息:
kubectl?get?svc
預期輸出結果為:
NAME????????????TYPE????????CLUSTER-IP????EXTERNAL-IP???PORT(S)?????AGE
nginx-service???ClusterIP???10.96.75.52???<none>????????30003/TCP???28m
5.進入容器內部,訪問Nginx應用:
curl?10.96.75.52:30003
預期輸出結果為:
<!DOCTYPE?html>
<html>
<head>
????<title>Welcome?to?nginx!</title>
...
</body>
</html>