nginx 根據IP 進行灰度發布

2021-09-21 22:18:42 字數 1119 閱讀 5209

灰度發布,簡單來說,就是根據各種條件,讓一部分使用者使用舊版本,另一部分使用者使用新版本。

nginx 的語法本身可以看作是一門小型的程式語言,通過簡單的程式設計,可以輕鬆實現基於ip的灰度發布。

條件:辦公室網路出口有固定ip

解決辦法:

nginx 負載均衡器判斷客戶端ip位址,

如果是辦公室ip,則反向**到準生產環境;

如果不是,則反向**到生產環境。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

upstream prod

upstream pre-prod

server

location /

}

同理,也可以根據不同的ip,設定不同的**根目錄,達到相同的目的。

1

2

3

4

5

6

7

8

9

10

11

server

location /

}

同理,還可以利用geoip做基於地理位置的灰度發布,不詳細介紹。

注: set 命令依賴rewrite 模組。

nginx灰度發布

灰度發布策略 基於使用者標識,基於ip等 灰度發布實現方式 nginx lua根據來訪者ip位址區分 nginx根據cookie分流 nginx根據權重分配 nginx基於使用者標識灰度發布 upstream g1 upstream g2 server localhost nginx伺服器監聽80,...

使用Nginx實現灰度發布

灰度發布是指在黑與白之間,能夠平滑過渡的一種發布方式。ab test就是一種灰度發布方式,讓一部分使用者繼續用a,一部分使用者開始用b,如果使用者對b沒有什麼反對意見,那麼逐步擴大範圍,把所有使用者都遷移到b上面來。灰度發布可以保證整體系統的穩定,在初始灰度的時候就可以發現 調整問題,以保證其影響度...

Nginx實現系統灰度發布

在系統發布的時候,經常會遇到要停機發布的情況。大家經常會在凌晨去發布系統。這樣導致開發和測試的同時都很辛苦。那麼有沒有一種比較簡單 成本相對可以接受的方式來進行發布呢?在這裡,給大家推薦灰度發布的方式。灰度發布的方式很多,最簡單的操作方式是直接操作nginx的upstream來進行灰度發布。前提 至...