K8S的ingress

一。ingress的介紹

對于NodePort和LoadBalance,這兩種方法,都有缺點:

1.NodePort方式缺點會占用很多集群的端口,當集群服務變多的時候,缺點更加顯著

2.LB的缺點就是每一個service都需要一個LB,浪費,麻煩,并且需要K8S之外的設備

基于上面兩種情況,K8S提供了ingress資源對象,ingress只需要一個nodeport或者一個LB就可以滿足暴露多個service需求,實際上,ingress相當于一個7層負載均衡器,是K8S對反向代理的一個抽象,他的工作原理類似于nginx,可以理解為在ingress里建立多個映射規則,ingress controller通過監聽這些配置規則并且轉化為nginx反向代理,然后對外提供服務,在這李有兩個給核心概念:

1.ingress:K8S的一個對象,作用是定義請求如何轉發到service的規則

2.ingress controller:具體實現反向代理負載均衡的程序,對ingress定義規則進行解析,根據配置的規則來實現請求轉發,事項方式很多:nginx,haproxy等

二。Ingress的工作原理:

1.用戶編寫ingress規則,說明哪一個域對應K8S集群的哪一個服務

2.ingress控制器動態感知ingress服務規則的變化,然后生成一段相應的nginx反向代理配置

3.ingress控制器會將生成的nginx配置寫入到一個運行著nginx的服務中,并動態更新

4.到此為止,其實真正的工作就是nginx了,內部配置了用戶定義的請求轉發規則

三。環境的準備:

1.下載配置文件:wget -c https://gitee.com/kong-xiangyuxcz/svn/releases/download/ingress-nginx-controller-v1.13.1/deploy.yaml

445 ? ? ? ? image: ingress-nginx/controller:v1.11.2

546 ? ? ? ? image: ingress-nginx/kube-webhook-certgen:v1.4.3

599 ? ? ? ? image: ingress-nginx/kube-webhook-certgen:v1.4.3

kubectl apply -f deploy.yaml:啟用yaml

kubectl get?-f deploy.yaml:刪除yaml

四。ingress的用法:

準備工作:

kubectl create deployment myappv1 --image nginx:1.17.1 --dry-run=client -o yaml > myappv1.yaml:創建一個控制器

kubectl create service clusterip myappv1 --tcp 80:80 --dry-run=client -o yaml >> myappv1.yaml:創建servie服務

--dry-run=client模擬執行命令(客戶端 dry run),不會實際創建服務,僅生成配置

?cp myappv1.yaml myappv2.yaml:創建兩個yaml

運行結果:

使用ingress進行負載均衡:

1.?kubectl -n ingress-nginx get ingressclasses.networking.k8s.io:查看自己所在的類

2.kubectl create ingress ingress-test --class nginx --rule="/=myappv1:80" --dry-run=client -o yaml > ingress-test.yml:生成ingress文件

3.進行檢測:

4.測試:

五。ingress基于路徑的訪問:

1.首先刪除以前的ingress,避免沖突:

2.創建基于路徑的ingress文件:

3.檢測結果:

六。基于域名的訪問:

測試:

七。建立tls加密

1.建立私鑰和證書:openssl req -newkey rsa:2048 -nodes -keyout tls.key -x509 -days 365 -subj "/CN=nginxsvc/0=nginxsvc" -out tls.crt

2.建立資源存儲,假如集群:kubectl create secret tls web-tls-secret --key tls.key --cert tls.crt

3.查看secret內容:?kubectl get secrets web-tls-secret -o yaml

4.查看類型:

5.進行配置:

6.測試:

七。建立auth認證:

1.下載軟件:?

dnf install httpd-tools

2.建立加密用戶

?htpasswd -cm auth admin
3.提取到集群空間,generic存儲任意鍵值對形式的敏感數據

kubectl create secret generic auth-web --from-file auth

4.查看加密詳細內容:

kubectl get secrets auth-web -o yaml

5.編寫yml文件:

6.測試:

八:rewirte重定向:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/93677.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/93677.shtml
英文地址,請注明出處:http://en.pswp.cn/web/93677.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

實現自己的AI視頻監控系統-序章

目錄簡介視頻監控系統是什么?該系列課程你會學到什么?需要準備哪些工具?下期預告簡介 在當今快速發展的科技時代,人工智能(AI)已經深入到我們生活的方方面面。其中,AI視頻監控系統作為安防領域…

Pytorch GPU版本安裝保姆級教程

本文將介紹在anaconda環境下安裝pytorch的詳細步驟。 Anaconda安裝教程參考Anaconda安裝保姆級教程。 目錄 一、工具安裝 二、創建虛擬環境 三、安裝Pytorch CUDA Toolkit安裝 Pytorch安裝 總結 一、工具安裝 點擊鏈接官網codetou.com,下載安裝最新版即可&…

重學React(六):脫圍機制二

背景: 話不多說,繼續學習,現在是Effect時間。 前期回顧: 重學React(一):描述UI 重學React(二):添加交互 重學React(三):狀…

【MySQL】索引(B+樹詳解)

MySQL(五)索引 一、索引的減I/O設計 1.讀取量 2.搜索樹 2.1方向 2.2有序 3.分多叉 3.1B樹 弊端: 3.2B樹 3.2.1非葉子-搜索字段 3.2.1.1海量分叉 3.2.1.1.1最大式 3.2.1.1.2最快式 3.2.1.2緩存內存 3.2.1.2.1字段總量小 3.2.1.2.2時間復雜度 3.2.1.3區間搜索向…

GPT-5博士級AI使用教程及國內平替方案

GPT-5博士級AI使用教程及國內平替方案一、GPT-5核心升級:到底強在哪里?1. **統一入口自動思考模式**2. **256K上下文40萬漢字記憶**3. **人格系統長期記憶**4. **編程能力史詩級增強**二、注冊與訪問:國內用戶也能免費上車1.官方渠道&#xf…

云計算-多服務集群部署實戰指南:從JumpServer到Kafka、ZooKeeper 集群部署實操流程

簡介圍繞企業級服務部署與集群搭建,基于 OpenStack 私有云平臺,介紹了一系列關鍵服務的實操過程。內容涵蓋使用 CentOS7 系統部署 JumpServer 堡壘機并對接 controller 與 compute 節點,構建 RabbitMQ 集群(含磁盤節點與內存節點配…

深入剖析Spring IOC容器——原理、源碼與實踐全解析

🌟 你好,我是 勵志成為糕手 ! 🌌 在代碼的宇宙中,我是那個追逐優雅與性能的星際旅人。 ? 每一行代碼都是我種下的星光,在邏輯的土壤里生長成璀璨的銀河; 🛠? 每一個算法都是我繪制…

探秘C語言:數據在內存中的存儲機制詳解

探秘C語言:數據在內存中的存儲機制詳解探秘C語言:數據在內存中的存儲機制詳解一、二進制與進制轉換:數據的不同"外衣"1.1基本概念1.2進制轉換二、整數在內存中的存儲:補碼的奧秘原碼、反碼、補碼總結探秘C語言&#xff…

HTML 常用標簽介紹

目錄 HTML 標簽 HTML 常用標簽速查表 文檔元標簽 頁面結構與布局 文本內容與排版 鏈接與媒體 列表與表格 表單與交互 其他功能標簽 文本結構標簽 文本格式化標簽 列表標簽 鏈接與導航標簽 媒體標簽 容器與結構標簽 表格標簽 表單標簽 元信息與文檔標簽 腳本…

kafka 沖突解決 kafka安裝

目錄 解法方法&#xff1a; 一般情況正常可以版本2.0.2 報錯&#xff1a; File "<frozen importlib._bootstrap>", line 1050, in _gcd_import File "<frozen importlib._bootstrap>", line 1027, in _find_and_load File "<frozen…

論文閱讀 2025-8-9 [DiC, DropKey]

閑來沒事&#xff0c;找點近一年的論文看看 1. DiC: Rethinking Conv3x3 Designs in Diffusion Models ? 一句話總結&#xff1a;DiC用沙漏架構稀疏跳躍條件門控重構純Conv3x3擴散模型&#xff0c;在速度碾壓Transformer的同時性能反超&#xff0c;為實時生成任務開辟新路徑。…

16進制pcm數據轉py波形腳本

將16bit的單聲道或者雙聲道的16進制的pcm數據轉成波形圖片出來分析數據&#xff0c;python腳本如下&#xff1a;import numpy as np import matplotlib.pyplot as plt# 1: 單聲道&#xff0c;2&#xff1a;雙聲道 PCM_CHANNELS 2# 你提供的十六進制數據 hex_str ""…

MySQL的鎖:

目錄 鎖的介紹&#xff1a; 并發事務訪問相同數據可以分為以下幾種情況&#xff1a; 都是進行讀操作&#xff1a; 都是進行寫操作&#xff1a; 有讀操作也有寫操作&#xff1a; 讀鎖、寫鎖&#xff1a; 讀鎖&#xff1a; 寫鎖&#xff1a; 按照鎖粒度分類&#xff1a;…

一道同分排名的SQL題

1 概述遇到這樣一道題&#xff1a;(1) 有一張學生課程分數表&#xff0c;字段有&#xff1a;ID、名稱、性別、科目、分數。&#xff08;名稱換為學號更能標識唯一學生&#xff0c;但名稱好閱讀&#xff0c;故這里先認為名稱可以唯一標識學生。&#xff09;(2) 用一個SQL&#x…

ICCV 2025 | Reverse Convolution and Its Applications to Image Restoration

標題&#xff1a;Reverse Convolution and Its Applications to Image Restoration作者&#xff1a;Xuhong Huang, Shiqi Liu, Kai Zhang, Ying Tai, Jian Yang, Hui Zeng, Lei Zhang單位&#xff1a;Nanjing University, The Hong Kong Polytechnic University, OPPO Research…

mysql啟動超時

mysql啟動超時&#xff1a; 管理員打開CMD后允許net start MySQL57&#xff0c; 啟動超時檢查錯誤日志 MySQL 啟動失敗的具體原因通常記錄在錯誤日志中。 日志路徑&#xff08;根據你的安裝方式可能不同&#xff09;&#xff1a; 默認位置&#xff1a;C:\ProgramData\MySQL\MyS…

Flink Stream API 源碼走讀 - window 和 sum

本文核心觀點 核心觀點&#xff1a;WindowedStream 是一個"假流"&#xff0c;它比 KeyedStream 更虛&#xff0c;只是一個 API 的過渡器&#xff0c;不是真正意義上的 DataStream&#xff0c;需要調用函數回歸。 虛擬化時刻&#xff1a;從真實流到虛擬流 KeyedStream…

藍牙 GFSK RX Core 架構解析

GFSK RX Core分為以下幾個模塊&#xff1a; 1.Frequency offset compensation CORDIC 2.A low pass filter 3.A power estimator for packet detection,RSSI and digital gaion computation for DPSK path 4.A demodulator implemented as Phase Shift Discriminator 5.A drequ…

微電網管控系統中python多線程緩存與SQLite多數據庫文件連接池實踐總結(含源碼)

1. 引言 在分散的微電網能源管理場景中,系統采用集中式云平臺模式,為100個獨立微電網用戶提供高并發數據寫入服務面臨三大挑戰:用戶數據隔離、I/O性能瓶頸、多線程安全性。本文揭示一種新式的分片鎖+三級緩存+sqlite多數據庫文件連接池架構,在保持SQLite輕量級優勢的同時,…

InfluxDB 開發工具鏈:IDE 插件與調試技巧(一)

引言 ** 在當今數字化時代&#xff0c;時間序列數據的處理與分析在眾多領域中都扮演著至關重要的角色。無論是物聯網設備產生的海量傳感器數據&#xff0c;還是金融市場中實時波動的交易數據&#xff0c;又或是服務器運維過程中不斷產生的性能指標數據&#xff0c;這些都屬于…