用k8s構建生產環境下應用服務


1.生成鏡像

見https://www.cnblogs.com/mushou/p/9713741.html,把測試成熟的應用添加到tomcat鏡像生成新的鏡像,用ansible部署到集群的幾點服務器中。

2.部署環境

1)安裝docker-ce

2)安裝k8s

一定記得kubectl,kubeadm,kubelet,kubernetes-cni版本與使用的kube-apiserver,kube-schedule,etcd,kube-controll-manager的版本相同

見https://www.cnblogs.com/mushou/p/9613365.html

3)部署集群

見 https://www.cnblogs.com/mushou/p/9613365.html

3.部署應用

應用依賴的數據庫,圖片,Java環境部署在數據庫服務器,采用nfs服務器共享供集群節點使用,也可以把應用服務的應用數據包共享供節點掛載。

1)配置nfs服務器

2)創建數據庫服務

創建persistentVolume,創建persistentVolumeClaim

3)創建應用配置文件.yml文件

其中,Deployment應用的鏡像為前面生成的新鏡像,

volumes包括了persistentVolumeClaim,有數據庫卷,圖片卷,Java環境卷,其中還有一個tomcat/conf下的 server.xml文件也需要掛到生成的deployment中,

需要使用configMap,需要先建好,kubectl create configmap  server-xml-key   --from-file=server.xml,

在 yml配置文件中的volumes使用:

name: server-xml-key
        configMap:
          name: server-xml-key

同時在volumeMounts:

- name: server-xml-key
          mountPath: /usr/local/tomcat/conf/server.xml
          subPath: server.xml

這樣就把該文件掛到pod中,我們如果更改pod中容器的tomcat的配置,只需更改該文件即可。其實我們使用nfs服務器,采用共享掛載的方式就是方便更改,同時做到不因pod 或者節點的故障而導致應用服務不可用。

4.

上文只是針對用k8s部署應用服務到生產環境的一些基本思路,具體的細節因公司業務保密的關系未在文中詳細列出,供大家參考。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM