如何使用k8s部署nginx服務
前言
首先我們要先理解k8s中的幾個比較核心的概念
他們分別是Deployment、POD、Service
簡單理解
deployment: 控制Pod副本數(shù)量
pod:管理容器
service:對外發(fā)布服務
詳細解釋
pod(容器組)
是 Kubernetes 中最小的調(diào)度單元,它可以包含一個或多個容器,并共享相同的網(wǎng)絡命名空間和存儲卷。Pod 提供了部署應用程序所需的環(huán)境,并且可以被創(chuàng)建、刪除或替換。
Deployment
是用來定義和管理 Pod 的高級控制器。它描述了應用程序的期望狀態(tài),例如需要運行的 Pod 數(shù)量、使用的鏡像版本等信息。Deployment 會負責根據(jù)這些描述來創(chuàng)建、刪除或更新 Pod,以確保實際運行的 Pod 符合期望狀態(tài)。
Service
是用來暴露 Pod 提供的服務給其他應用程序或用戶的方式。Service 定義了一組 Pod 的訪問策略,通過標簽選擇器將請求路由到匹配的 Pod 上。Service 可以提供負載均衡、服務發(fā)現(xiàn)、內(nèi)部集群通信等功能。
應用
環(huán)境
Ip | 主機名 | cpu | 內(nèi)存 | 硬盤 |
---|---|---|---|---|
192.168.10.11 | master01 | 2cpu雙核 | 4G | 100G |
192.168.10.12 | worker01 | 2cpu雙核 | 4G | 100G |
192.168.10.13 | worker02 | 2cpu雙核 | 4G | 100G |
已部署k8s-1.27
步驟
創(chuàng)建資源控制器deployment(created就是創(chuàng)建好了)
注:deployment會自動創(chuàng)建pod
kubectl create deployment nginx --image=nginx:1.20
查看
kubectl get pod -o wide
-o wide 查看詳細信息
可以看到pod在worker01上成功運行
可以在集群內(nèi)進行ip訪問
curl 10.244.5.2
可以看到訪問到了
而外界是訪問不到的
讓外界訪問則需要service
創(chuàng)建service
kubectl expose deployment nginx --name=nginx-svc --port=80 --type=NodePort
–name 服務名稱
–port 容器內(nèi)暴露的端口
type=BodePort 表示對外暴露端口,端口號隨機,外部主機通過這個端口可以訪問
查看
kubectl get service nginx-svc
可以看到對外暴露的端口為32639
訪問
訪問到了
實驗完成
到此這篇關于如何使用k8s部署nginx服務的文章就介紹到這了,更多相關k8s部署nginx服務內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
nginx rewrite 偽靜態(tài)配置參數(shù)和使用例子
nginx下偽靜態(tài)配置參數(shù)詳細說明,使用nginx的朋友,nginx rewrite 偽靜態(tài)配置參數(shù)和使用例子 附正則使用說明2010-07-07keepalived+nginx實現(xiàn)網(wǎng)站高可用性
本文主要介紹了keepalived+nginx實現(xiàn)網(wǎng)站高可用性,包含配置Keepalived實現(xiàn)雙主熱備集群架構,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2025-02-02Nginx開啟一個參數(shù)就能讓你的WEB性能提升3倍的方法
這篇文章主要介紹了Nginx開啟一個參數(shù)就能讓你的WEB性能提升3倍的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-03-03