在kubernetes集群中运行nginx
在完成前面kubernetes數據持久化的學習之后,本節我們開始嘗試在k8s集群中部署nginx應用,對于nginx來說,需要持久化的數據主要有兩塊:
1、nginx配置文件和日志文件
2、網頁文件
一、配置nginx網頁文件持久化
1、ReplicationController配置文件如下
2、sevice配置文件如下
# cat nginx-svc.yaml apiVersion: v1 kind: Service metadata:name: nginx-testlabels: name: nginx-test spec:type: NodePortports:- port: 80protocol: TCPtargetPort: 80name: httpnodePort: 30088selector: name: nginx-test3、通過配置文件創建ReplicationController和service
# kubectl create -f nginx-rc.yaml # kubectl create -f nginx-svc.yaml
4、在nfs服務器上創建測試html文件
二、配置nginx配置文件持久化
我們需要在前面網頁文件持久化的基礎上把nginx配置文件和日志文件也進行持久化
1、創建PVC,其中nfs-data存儲網頁文件,nfs-nginx-etc存儲配置文件和日志文件
2、修改nginx-rc.yaml配置文件,掛載兩個pvc
3、重新創建rc驗證兩個PVC是否成功掛載
# kubectl delete -f nginx-rc.yaml # kubectl create -f nginx-rc.yaml # kubectl get pod # kubectl describe pod nginx-test-kllfw
通過在對應的node節點上inspect docker容器驗證
4、通過訪問網頁,發現nginx的server_token為開啟狀態
5、這里我們通過修改error_log和access_log到nfs路徑下,同時將server_token修改為off
6、重啟nginx使配置文件
通過將rc的副本數重新設置為0后,再將副本數設置為2,達到重啟nginx的效果。
當然這里也可以通過kubectl exec的方式進行。
7、驗證
驗證server_token已經成功關閉
驗證在nfs server上能看到nginx的訪問日志,證明配置文件修改成功。
在生產環境中,nginx服務的發布需要考慮使用ingress,nginx配置文件應當首先考慮使用configmap來實現。
總結
以上是生活随笔為你收集整理的在kubernetes集群中运行nginx的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于喝酒的心情说说222个
- 下一篇: 纸巾盒的种类-纸巾盒的使用维护