Sentinel云原生K8S部署實(shí)戰(zhàn)

部署的流程圖

部署的詳細(xì)過(guò)程

編譯Docker鏡像

Sentinel源碼下載

https://gitee.com/pingfanrenbiji/Sentinel.git

Sentinel-dashboard編譯打包

編寫Dockerfile文件

FROM?openjdk:8-jdk

#?環(huán)境變量

ENV?LC_ALL=zh_CN.utf8

ENV?LANG=zh_CN.utf8

ENV?LANGUAGE=zh_CN.utf8

#?開放端口

EXPOSE?8080

#?指定工作目錄

WORKDIR?/app

#?將當(dāng)前目錄下的jar包復(fù)制道鏡像中的/app目錄下

COPY?sentinel-dashboard.jar?.

#?時(shí)間同步設(shè)置

#?設(shè)置權(quán)限?chown?用戶:所在組?文件目錄?0表示root用戶所在的組標(biāo)識(shí)盐捷;1001是指定了一個(gè)用戶標(biāo)識(shí)

#?chmod?讀取權(quán)限?r?=?4,寫入權(quán)限?w?=?2,執(zhí)行權(quán)限?x?=?1

#?3個(gè)數(shù)字分別代表?擁有者,組用戶养晋,其他用戶的權(quán)限

#?775中的第一個(gè)7表示4+2+1?表示擁有者擁有讀寫執(zhí)行權(quán)限

#?第二個(gè)7當(dāng)前用戶所在組中的用戶擁有者擁有讀寫執(zhí)行權(quán)限

#?第三個(gè)5表示其他用戶有讀和執(zhí)行的權(quán)限?沒(méi)有寫的權(quán)限

RUN?/bin/cp?/usr/share/zoneinfo/Asia/Shanghai?/etc/localtime?&&echo'Asia/Shanghai'>/etc/timezone?\

&&?chown?1001:0?-R?/app?\

&&?chmod?775?-R?/app

#?java啟動(dòng)jar包

ENTRYPOINT?["java","-Dfile.encoding=UTF8","-Dsun.jnu.encoding=UTF8","-jar","sentinel-dashboard.jar"]

編譯docker鏡像

docker?build?-t?sentinel-dashboard:1.8.2?.

啟動(dòng)下確認(rèn)Dockerfile沒(méi)問(wèn)題

docker?run?-p?8080:8080?-d?sentinel-dashboard:1.8.2?sentinel

http://localhost:8080/#/login

說(shuō)明Dockerfile沒(méi)有問(wèn)題

K8S部署

pod.yml

apiVersion:?apps/v1

kind:?StatefulSet

metadata:

name:?sentinel

labels:

app:?sentinel

spec:

serviceName:?sentinel

replicas:?1

selector:

matchLabels:

app:?sentinel

template:

metadata:

labels:

app:?sentinel

spec:

containers:

-?name:?sentinel

image:?sentinel-dashboard:1.8.2

imagePullPolicy:?IfNotPresent

resources:

limits:

cpu:?450m

memory:?1024Mi

requests:

cpu:?400m

memory:?1024Mi

env:

-?name:?TZ

value:?Asia/Shanghai

-?name:?JAVA_OPT_EXT

value:?-Dserver.servlet.session.timeout=7200

-?name:?SERVER_HOST

valueFrom:

configMapKeyRef:

name:?sentinel-cm

key:?sentinel.server.host

-?name:?SERVER_PORT

valueFrom:

configMapKeyRef:

name:?sentinel-cm

key:?sentinel.server.port

-?name:?USERNAME

valueFrom:

configMapKeyRef:

name:?sentinel-cm

key:?sentinel.auth.username

-?name:?PASSWORD

valueFrom:

configMapKeyRef:

name:?sentinel-cm

key:?sentinel.auth.password

ports:

-?containerPort:?8280#Dashboard服務(wù)的端口?客戶端向控制臺(tái)發(fā)送心跳包的控制臺(tái)地址,指定控制臺(tái)后客戶端會(huì)自動(dòng)向該地址發(fā)送心跳包

-?containerPort:?8719#客戶端的端口?提供給Dashboard訪問(wèn)

volumeMounts:

-?name:?vol-log

mountPath:?/opt/logs

volumes:

-?name:?vol-log

hostPath:

path:?/opt/docker/k8s/sentinel/logs

type:?Directory

service.yml

apiVersion:?v1

kind:?Service

metadata:

name:?sentinel

labels:

app:?sentinel

spec:

type:?NodePort

ports:

-?port:?8280

targetPort:?8280

nodePort:?30280

name:?web

-?port:?8719

targetPort:?8719

nodePort:?30719

name:?api

selector:

app:?sentinel

cm.yml

apiVersion:?v1

kind:?ConfigMap

metadata:

name:?sentinel-cm

data:

sentinel.server.host:"192.168.43.22"#服務(wù)器IP地址

sentinel.server.port:"8280"

sentinel.auth.username:"sentinel"

sentinel.auth.password:"sentinel"

create.s.sentinel.start.sh

#!/usr/bin/env?bash

DIR=$(cd$(dirname$0);pwd)

mkdir?-p${DIR}/sentinel/logs

chmod?-R?777${DIR}/sentinel/logs

kubectl?create?-f${DIR}/sentinel/cm.yml

kubectl?create?-f${DIR}/sentinel/service.yml

kubectl?create?-f${DIR}/sentinel/pod.yml

kubectl?get?pod

echo-e"\n\n\n"

echo"?success"

k8s部署

啟動(dòng)成功

kubectl?logs?-f?sentinel-0

可以看到sentinel-dashboard默認(rèn)的日志目錄是${user.home}/logs/csp/目錄下

用戶標(biāo)識(shí)是1001?和?chown配置的一致

k8s部署sentinel-dashboard成功

http://localhost:30280/#/login

在網(wǎng)關(guān)應(yīng)用中配置限流規(guī)則

引入依賴

com.alibaba.csp

sentinel-spring-cloud-gateway-adapter

1.8.2

com.alibaba.csp

sentinel-transport-simple-http

在配置文件中配置

spring:

cloud:

sentinel:

transport:

dashboard:?192.168.43.22:30280

port:?192.168.43.22:30719

定一個(gè)資源

服務(wù)起來(lái)之后就可以在控制臺(tái)看到

在sentinel中給指定資源配置限流規(guī)則

為了測(cè)試設(shè)置1秒只允許1個(gè)QPS?1秒內(nèi)超過(guò)1個(gè)的請(qǐng)求被攔截

訪問(wèn)測(cè)試接口即可以看到限流的情況

該docker鏡像沒(méi)有問(wèn)題 生成tar包上傳鏡像庫(kù)或到其他地方部署

docker?image?save?sentinel-dashboard:1.8.2?-o?sentinel-dashboard.1.8.2.tar

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末氏涩,一起剝皮案震驚了整個(gè)濱河市团滥,隨后出現(xiàn)的幾起案子颓影,更是在濱河造成了極大的恐慌,老刑警劉巖盾鳞,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件犬性,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡腾仅,警方通過(guò)查閱死者的電腦和手機(jī)乒裆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)推励,“玉大人鹤耍,你說(shuō)我怎么就攤上這事⊙榇牵” “怎么了稿黄?”我有些...
    開封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)跌造。 經(jīng)常有香客問(wèn)我杆怕,道長(zhǎng)族购,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任陵珍,我火速辦了婚禮寝杖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘互纯。我一直安慰自己瑟幕,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開白布留潦。 她就那樣靜靜地躺著收苏,像睡著了一般。 火紅的嫁衣襯著肌膚如雪愤兵。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天排吴,我揣著相機(jī)與錄音秆乳,去河邊找鬼。 笑死钻哩,一個(gè)胖子當(dāng)著我的面吹牛屹堰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播街氢,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼扯键,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了珊肃?” 一聲冷哼從身側(cè)響起荣刑,我...
    開封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎伦乔,沒(méi)想到半個(gè)月后厉亏,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡烈和,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年爱只,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片招刹。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡恬试,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出疯暑,到底是詐尸還是另有隱情训柴,我是刑警寧澤,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布缰儿,位于F島的核電站畦粮,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜宣赔,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一预麸、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧儒将,春花似錦吏祸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至砰逻,卻和暖如春鸣驱,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蝠咆。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工踊东, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人刚操。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓闸翅,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親菊霜。 傳聞我的和親對(duì)象是個(gè)殘疾皇子坚冀,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容