เชจเซเซ
เชง. เช
เชจเซเชตเชพเชฆ:
เช
เชฎเซ เชคเชฎเชจเซ เช เชชเชฃ เชฏเชพเชฆ เช
เชชเชพเชตเซเช เชเซเช เชเซ เชฒเซเช เชฐเซเชชเซเชเซเชเชฐเซเชฎเชพเชเชฅเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจเซ (เชเซเชฌเชฐเชจเซเชเซเชธ เช
เชจเซ เชเชธเซเชเชฟเช เชฎเชพเชเซ เชฎเซเชจเชฟเชซเซเชธเซเช) เชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ
เชเซเชฐเชพเชซเชฟเช เชตเซเชฏเชตเชธเซเชฅเชพเชชเชจ
Istio เชธเชพเชฅเซ, เชชเซเชฐเชฆเชพเชจ เชเชฐเชตเชพ เชฎเชพเชเซ เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชจเชตเซ เชเซเชทเชฎเชคเชพเช เชฆเซเชเชพเชฏ เชเซ:
- เชเชคเชฟเชถเซเชฒ เชตเชฟเชจเชเชคเซ เชฐเซเชเซเชเช: เชเซเชจเซเชฐเซ เชฐเซเชฒเชเชเชเซเชธ, A/B เชชเชฐเซเชเซเชทเชฃ;
- เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเช: เชธเชฐเชณ เช เชจเซ เชธเซเชธเชเชเชค, เชนเซเชถ เชชเชฐ เชเชงเชพเชฐเชฟเชค;
- เชงเซเชง เชชเชเซ เชชเซเชจเชเชชเซเชฐเชพเชชเซเชคเชฟ: เชธเชฎเชฏเชธเชฎเชพเชชเซเชคเชฟ, เชซเชฐเซ เชชเซเชฐเชฏเชพเชธเซ, เชธเชฐเซเชเชฟเช เชฌเซเชฐเซเชเชฐเซเชธ;
- เชเซเชทเชคเชฟเช เชฆเชพเชเชฒ เชเชฐเชตเซ: เชตเชฟเชฒเชเชฌ, เชกเซเชฐเซเชช เชตเชฟเชจเชเชคเซเช, เชตเชเซเชฐเซ.
เชเซเชฎ เชเซเชฎ เชฒเซเช เชเชพเชฒเซ เชฐเชนเซเชถเซ เชคเซเชฎ, เช เชเซเชทเชฎเชคเชพเชเชจเซ เชชเชธเชเชฆ เชเชฐเซเชฒ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ เชฆเชฐเซเชถเชพเชตเชตเชพเชฎเชพเช เชเชตเชถเซ เช
เชจเซ เชฐเชธเซเชคเชพเชฎเชพเช เชจเชตเซ เชตเชฟเชญเชพเชตเชจเชพเช เชฐเชเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ. เชเชตเซ เชชเชนเซเชฒเซ เชเซเชจเซเชธเซเชชเซเช เชนเชถเซ DestinationRules
(เชเชเชฒเซ โโโโเชเซ เชเซเชฐเชพเชซเชฟเช/เชตเชฟเชจเชเชคเซเชเชจเชพ เชชเซเชฐเชพเชชเซเชคเชเชฐเซเชคเชพ เชตเชฟเชถเซเชจเชพ เชจเชฟเชฏเชฎเซ - เชเชถเชฐเซ เช
เชจเซเชตเชพเชฆ.), เชเซเชจเซ เชฎเชฆเชฆเชฅเซ เช
เชฎเซ A/B เชชเชฐเซเชเซเชทเชฃ เชธเชเซเชฐเชฟเชฏ เชเชฐเซเช เชเซเช.
A/B เชชเชฐเซเชเซเชทเชฃ: เชชเซเชฐเซเชเซเชเชฟเชธเชฎเชพเช เชเชเชคเชตเซเชฏ เชจเชฟเชฏเชฎเซ
A/B เชชเชฐเซเชเซเชทเชฃเชจเซ เชเชชเชฏเซเช เชเชตเชพ เชเชฟเชธเซเชธเชพเชเชฎเชพเช เชฅเชพเชฏ เชเซ เชเซ เชเซเชฏเชพเช เชเชชเซเชฒเชฟเชเซเชถเชจเชจเชพ เชฌเซ เชธเชเชธเซเชเชฐเชฃเซ เชนเซเชฏ เชเซ (เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชคเซ เชฆเซเชทเซเชเชฟเชจเซ เชฐเซเชคเซ เช เชฒเช เชนเซเชฏ เชเซ) เช เชจเซ เช เชฎเชจเซ 100% เชเชพเชคเชฐเซ เชจเชฅเซ เชเซ เชเชฏเซเช เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เช เชจเซเชญเชต เชธเซเชงเชพเชฐเชถเซ. เชคเซเชฅเซ, เช เชฎเซ เชฌเชเชจเซ เชธเชเชธเซเชเชฐเชฃเซ เชเชเชธเชพเชฅเซ เชเชฒเชพเชตเซเช เชเซเช เช เชจเซ เชฎเซเชเซเชฐเชฟเชเซเชธ เชเชเชคเซเชฐเชฟเชค เชเชฐเซเช เชเซเช.
A/B เชชเชฐเซเชเซเชทเชฃ เชฆเชฐเซเชถเชพเชตเชตเชพ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชซเซเชฐเชจเซเชเชเชจเซเชกเชจเชพ เชฌเซเชเชพ เชธเชเชธเซเชเชฐเชฃเชจเซ เชเชฎเชพเชตเชตเชพ เชฎเชพเชเซ, เชจเซเชเซเชจเซ เชเชฆเซเชถ เชเชฒเชพเชตเซ:
$ kubectl apply -f resource-manifests/kube/ab-testing/sa-frontend-green-deployment.yaml
deployment.extensions/sa-frontend-green created
เชเซเชฐเซเชจ เชตเชฐเซเชเชจ เชฎเชพเชเซ เชกเชฟเชชเซเชฒเซเชฏเชฎเซเชจเซเช เชฎเซเชจเชฟเชซเซเชธเซเช เชฌเซ เชเชเซเชฏเชพเช เช เชฒเช เชเซ:
- เชเชฌเซ เชเช เช
เชฒเช เชเซเช เชชเชฐ เชเชงเชพเชฐเชฟเชค เชเซ -
istio-green
, - เชถเซเชเชเซเชจเซเช เชฒเซเชฌเชฒ เชนเซเชฏ เชเซ
version: green
.
เชฌเชเชจเซ เชเชฎเชพเชตเชเชฎเชพเช เชฒเซเชฌเชฒ เชนเซเชตเชพเชฅเซ app: sa-frontend
,เชตเชฐเซเชเซเชฏเซเช
เชฒ เชธเซเชตเชพ เชฆเซเชตเชพเชฐเชพ เชฐเซเช เชเชฐเชพเชฏเซเชฒ เชตเชฟเชจเชเชคเซเช sa-external-services
เชธเซเชตเชพ เชฎเชพเชเซ sa-frontend
, เชคเซเชจเชพ เชคเชฎเชพเชฎ เชเชฆเชพเชนเชฐเชฃเซ เชชเชฐ เชฐเซเชกเชพเชฏเชฐเซเชเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ เช
เชจเซ เชฒเซเชก เชฆเซเชตเชพเชฐเชพ เชตเชฟเชคเชฐเชฟเชค เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ
เชตเชฟเชจเชเชคเซ เชเชฐเซเชฒเซ เชซเชพเชเชฒเซ เชฎเชณเซ เชจเชฅเซ
เช เชซเชพเชเชฒเซ เชฎเชณเซ เชจ เชนเชคเซ เชเชพเชฐเชฃ เชเซ เชคเซเชเชจเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเชพ เชตเชฟเชตเชฟเชง เชธเชเชธเซเชเชฐเชฃเซเชฎเชพเช เช เชฒเช เชฐเซเชคเซ เชจเชพเชฎ เชเชชเชตเชพเชฎเชพเช เชเชตเซเชฏเซเช เชเซ. เชเชพเชฒเซ เชเชจเซ เชเชพเชคเชฐเซ เชเชฐเซเช:
$ curl --silent http://$EXTERNAL_IP/ | tr '"' 'n' | grep main
/static/css/main.c7071b22.css
/static/js/main.059f8e9c.js
$ curl --silent http://$EXTERNAL_IP/ | tr '"' 'n' | grep main
/static/css/main.f87cd8c9.css
/static/js/main.f7659dbb.js
เชคเซเชจเซ เช
เชฐเซเชฅ เช เชเซ เชเซ index.html
, เชธเซเชเซเชเชฟเช เชซเชพเชเชฒเซเชจเชพ เชเช เชธเชเชธเซเชเชฐเชฃเชจเซ เชตเชฟเชจเชเชคเซ เชเชฐเซเชจเซ, เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฐ เชฆเซเชตเชพเชฐเชพ เชชเซเชกเซเชธ เชชเชฐ เชฎเซเชเชฒเซ เชถเชเชพเชฏ เชเซ เชเซเชจเซเช เชเช เช
เชฒเช เชธเชเชธเซเชเชฐเชฃ เชเซ, เชเซเชฏเชพเช, เชธเซเชชเชทเซเช เชเชพเชฐเชฃเซเชธเชฐ, เชเชตเซ เชซเชพเชเชฒเซ เช
เชธเซเชคเชฟเชคเซเชตเชฎเชพเช เชจเชฅเซ. เชคเซเชฅเซ, เชเชชเซเชฒเชฟเชเซเชถเชจ เชเชพเชฐเซเชฏ เชเชฐเชตเชพ เชฎเชพเชเซ, เช
เชฎเชพเชฐเซ เชเช เชชเซเชฐเชคเชฟเชฌเชเชง เชธเซเช เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ: โเชเชชเซเชฒเซเชเซเชถเชจเชจเซเช เช เช เชตเชฐเซเชเชจ เชเซ เชเซ index.html เชจเซ เชธเซเชตเชพ เชเชชเซ เชเซ เชคเซ เช
เชจเซเชเชพเชฎเซ เชตเชฟเชจเชเชคเซเช เชชเซเชฐเซ เชชเชพเชกเชตเซ เชเซเชเชยป.
เช เชฎเซ เชธเชคเชค เชนเซเชถ-เชเชงเชพเชฐเชฟเชค เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเช เชธเชพเชฅเซ เชคเซเชฏเชพเช เชชเชนเซเชเชเซเชถเซเช (เชธเชคเชค เชนเซเชถ เชฒเซเชกเชฌเซเชฒเซเชจเซเชธเชฟเชเช)... เช เชฌเชพเชฌเชคเซ เชธเชฎเชพเชจ เชเซเชฒเชพเชฏเชจเซเชเชจเซ เชตเชฟเชจเชเชคเซเช เชธเชฎเชพเชจ เชฌเซเชเชเชจเซเชก เชเชฆเชพเชนเชฐเชฃ เชชเชฐ เชฎเซเชเชฒเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เชเซเชจเชพ เชฎเชพเชเซ เชชเซเชฐเซเชตเชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเซเชฃเชงเชฐเซเชฎเชจเซ เชเชชเชฏเซเช เชฅเชพเชฏ เชเซ - เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, HTTP เชนเซเชกเชฐ. Destination Rules เชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เช เชฎเชฒเชฎเชพเช เชฎเซเชเชพเชฏเซเชฒ เชเซ.
เชเชเชคเชตเซเชฏ เชจเชฟเชฏเชฎเซ
เชชเชเซ เชตเชฐเซเชเซเชฏเซเช เชฒ เชธเชฐเซเชตเชฟเชธ เชเชเซเชเชฟเชค เชธเซเชตเชพเชจเซ เชตเชฟเชจเชเชคเซ เชฎเซเชเชฒเซ, เชกเซเชธเซเชเชฟเชจเซเชถเชจ เชฐเซเชฒเซเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เช เชฎเซ เชจเซเชคเชฟเช เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชถเชเซเช เชเซเช เชเซ เช เชธเซเชตเชพเชจเชพ เชเชฆเชพเชนเชฐเชฃเซ เชฎเชพเชเซ เชจเชฟเชฐเซเชงเชพเชฐเชฟเชค เชเซเชฐเชพเชซเชฟเช เชชเชฐ เชฒเชพเชเซ เชฅเชถเซ:
Istio เชธเชเชธเชพเชงเชจเซ เชธเชพเชฅเซ เชเซเชฐเชพเชซเชฟเช เชตเซเชฏเชตเชธเซเชฅเชพเชชเชจ
เชจเซเชเชงเชฃเซ: เชจเซเชเชตเชฐเซเช เชเซเชฐเชพเชซเชฟเช เชชเชฐ Istio เชธเชเชธเชพเชงเชจเซเชจเซ เช เชธเชฐ เช เชนเซเช เชเชตเซ เชฐเซเชคเซ เชฐเชเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ เชเซ เชธเชฎเชเชตเชพเชฎเชพเช เชธเชฐเชณ เชเซ. เชเซเชเซเชเชธ เชเชนเซเช เชคเซ, เชตเชฟเชจเชเชคเซ เชเชฏเชพ เชฆเชพเชเชฒเชพ เชชเชฐ เชฎเซเชเชฒเชตเซ เชคเซ เชจเชฟเชฐเซเชฃเชฏ เชธเซเชเชฐเชกเซเชฎเชพเช เชฐเซเชชเชฐเซเชเชพเชเชเชฟเชค เชเชจเซเชเซเชฐเซเชธ เชเซเชเชตเซเชฎเชพเช เชฐเชพเชเชฆเซเชค เชฆเซเชตเชพเชฐเชพ เชฒเซเชตเชพเชฎเชพเช เชเชตเซ เชเซ.
เชเชเชคเชตเซเชฏ เชจเชฟเชฏเชฎเซ เชธเชพเชฅเซ, เช
เชฎเซ เชธเชคเชค เชนเซเชถเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเชเชจเซ เชเซเช เชตเซ เชถเชเซเช เชเซเช เช
เชจเซ เชเชพเชคเชฐเซ เชเชฐเซ เชถเชเซเช เชเซเช เชเซ เชธเชฎเชพเชจ เชธเซเชตเชพเชจเซ เชฆเชพเชเชฒเซ เชธเชฎเชพเชจ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชจเซ เชชเซเชฐเชคเชฟเชธเชพเชฆ เชเชชเซ เชเซ. เชจเซเชเซเชจเซเช เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชคเชฎเชจเซ เช เชชเซเชฐเชพเชชเซเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชชเชฐเชตเชพเชจเชเซ เชเชชเซ เชเซ (
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: sa-frontend
spec:
host: sa-frontend
trafficPolicy:
loadBalancer:
consistentHash:
httpHeaderName: version # 1
1 - HTTP เชนเซเชกเชฐเชจเซ เชธเชพเชฎเชเซเชฐเซเชจเชพ เชเชงเชพเชฐเซ เชนเซเชถ เชเชจเชฐเซเช เชฅเชถเซ version
.
เชจเซเชเซเชจเชพ เชเชฆเซเชถ เชธเชพเชฅเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฒเชพเชเซ เชเชฐเซ:
$ kubectl apply -f resource-manifests/istio/ab-testing/destinationrule-sa-frontend.yaml
destinationrule.networking.istio.io/sa-frontend created
เชนเชตเซ เชจเซเชเซเชจเซ เชเชฆเซเชถ เชเชฒเชพเชตเซ เช
เชจเซ เชเชพเชคเชฐเซ เชเชฐเซ เชเซ เชเซเชฏเชพเชฐเซ เชคเชฎเซ เชนเซเชกเชฐเชจเซ เชเชฒเซเชฒเซเช เชเชฐเซ เชคเซเชฏเชพเชฐเซ เชคเชฎเชจเซ เชฏเซเชเซเชฏ เชซเชพเชเชฒเซ เชฎเชณเซ เชเซ version
:
$ curl --silent -H "version: yogo" http://$EXTERNAL_IP/ | tr '"' 'n' | grep main
เชจเซเชเชงเชฃเซ: เชนเซเชกเชฐเชฎเชพเช เชตเชฟเชตเชฟเชง เชฎเซเชฒเซเชฏเซ เชเชฎเซเชฐเชตเชพ เช
เชจเซ เชชเชฐเชฟเชฃเชพเชฎเซเชจเซ เชธเซเชงเชพ เชฌเซเชฐเชพเชเชเชฐเชฎเชพเช เชเชเชพเชธเชตเชพ เชฎเชพเชเซ, เชคเชฎเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ
เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ, เชกเซเชธเซเชเชฟเชจเซเชถเชจ เชฐเซเชฒเซเชธเชฎเชพเช เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเชเชจเชพ เชเซเชทเซเชคเซเชฐเชฎเชพเช เชตเชงเซ เชเซเชทเชฎเชคเชพเช เชนเซเชฏ เชเซ - เชตเชฟเชเชคเซ เชฎเชพเชเซ เชคเชชเชพเชธเซ
เชตเชฐเซเชเซเชฏเซเช เชฒ เชธเชฐเซเชตเชฟเชธเชจเซ เชตเชงเซ เช เชญเซเชฏเชพเชธ เชเชฐเชคเชพ เชชเชนเซเชฒเชพ, เชเชพเชฒเซ เชจเซเชเซ เชเชชเซเชฒเชพ เชเชฆเซเชถเซ เชเชฒเชพเชตเซเชจเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซเช "เชเซเชฐเซเชจ เชตเชฐเซเชเชจ" เช เชจเซ เช เชจเซเชฐเซเชช เชเซเชฐเชพเชซเชฟเช เชฆเชฟเชถเชพ เชจเชฟเชฏเชฎ เชเชพเชขเซ เชจเชพเชเซเช:
$ kubectl delete -f resource-manifests/kube/ab-testing/sa-frontend-green-deployment.yaml
deployment.extensions โsa-frontend-greenโ deleted
$ kubectl delete -f resource-manifests/istio/ab-testing/destinationrule-sa-frontend.yaml
destinationrule.networking.istio.io โsa-frontendโ deleted
เชฎเชฟเชฐเชฐเชฟเชเช: เชตเซเชฏเชตเชนเชพเชฐเชฎเชพเช เชตเชฐเซเชเซเชฏเซเช เชฒ เชธเซเชตเชพเช
เชถเซเชกเซเชเช ("เชเชตเช") เช เชฅเชตเชพ เชฎเชฟเชฐเชฐเชฟเชเช ("เชฎเชฟเชฐเชฐเชฟเชเช") เชเชตเชพ เชเชฟเชธเซเชธเชพเชฎเชพเช เชตเชชเชฐเชพเชฏ เชเซ เชเซ เชเซเชฏเชพเช เช เชฎเซ เช เชเชคเชฟเชฎ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชเชจเซ เช เชธเชฐ เชเชฐเซเชฏเชพ เชตเชฟเชจเชพ เชเชคเซเชชเชพเชฆเชจเชฎเชพเช เชซเซเชฐเชซเชพเชฐเชจเซเช เชชเชฐเซเชเซเชทเชฃ เชเชฐเชตเชพ เชฎเชพเชเซเช เชเซเช: เช เชเชฐเชตเชพ เชฎเชพเชเซ, เช เชฎเซ เชเชเซเชเชฟเชค เชซเซเชฐเชซเชพเชฐเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซเชฏเชพ เชนเซเชฏ เชคเซเชตเชพ เชฌเซเชเชพ เชฆเชพเชเชฒเชพ เชฎเชพเชเซ ("เชฎเชฟเชฐเชฐ") เชตเชฟเชจเชเชคเซเชเชจเซ เชกเซเชชเซเชฒเชฟเชเซเช เชเชฐเซเช เชเซเช เช เชจเซ เชคเซเชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ เชเซเช. เชธเชฐเชณ เชถเชฌเซเชฆเซเชฎเชพเช เชเชนเซเช เชคเซ, เช เชคเซเชฏเชพเชฐเซ เชฅเชพเชฏ เชเซ เชเซเชฏเชพเชฐเซ เชคเชฎเชพเชฐเซ เชธเชพเชฅเซเชฆเชพเชฐ เชธเซเชฅเซ เชเชเชญเซเชฐ เชฎเซเชฆเซเชฆเซ เชชเชธเชเชฆ เชเชฐเซ เชเซ เช เชจเซ เชเชเชฆเชเซเชจเชพ เชเชตเชพ เชตเชฟเชถเชพเชณ เชเช เซเช เชพเชจเชพ เชฐเซเชชเชฎเชพเช เชเซเชเชเชตเชพเชจเซ เชตเชฟเชจเชเชคเซ เชเชฐเซ เชเซ เชเซ เชเซเช เชคเซเชจเซ เชธเชฎเซเชเซเชทเชพ เชเชฐเซ เชถเชเชคเซเช เชจเชฅเซ.
เช เชฆเซเชถเซเชฏเชจเซ เชเซเชฐเชฟเชฏเชพเชฎเชพเช เชเชเชพเชธเชตเชพ เชฎเชพเชเซ, เชเชพเชฒเซ เชฌเชเซเชธ เชธเชพเชฅเซ SA-Logic เชจเซ เชฌเซเชเซ เชฆเชพเชเชฒเซ เชฌเชจเชพเชตเซเช (buggy
) เชจเซเชเซเชจเซ เชเชฆเซเชถ เชเชฒเชพเชตเซเชจเซ:
$ kubectl apply -f resource-manifests/kube/shadowing/sa-logic-service-buggy.yaml
deployment.extensions/sa-logic-buggy created
เช
เชจเซ เชนเชตเซ เชเชพเชฒเซ เชเชฆเซเชถ เชเชฒเชพเชตเซเช เชคเซเชจเซ เชเชพเชคเชฐเซ เชเชฐเชตเชพ เชฎเชพเชเซ เชเซ เชคเชฎเชพเชฎ เชเชฆเชพเชนเชฐเชฃเซ เชธเชพเชฅเซ app=sa-logic
เชคเซเชฎเชจเซ เชชเชพเชธเซ เช
เชจเซเชฐเซเชช เชธเชเชธเซเชเชฐเชฃเซ เชธเชพเชฅเซ เชฒเซเชฌเชฒเซเชธ เชชเชฃ เชเซ:
$ kubectl get pods -l app=sa-logic --show-labels
NAME READY LABELS
sa-logic-568498cb4d-2sjwj 2/2 app=sa-logic,version=v1
sa-logic-568498cb4d-p4f8c 2/2 app=sa-logic,version=v1
sa-logic-buggy-76dff55847-2fl66 2/2 app=sa-logic,version=v2
sa-logic-buggy-76dff55847-kx8zz 2/2 app=sa-logic,version=v2
เชธเซเชตเชพ sa-logic
เชเช เชฒเซเชฌเชฒ เชธเชพเชฅเซ เชถเซเชเชเซเชจเซ เชฒเชเซเชทเซเชฏ เชฌเชจเชพเชตเซ เชเซ app=sa-logic
, เชคเซเชฅเซ เชฌเชงเซ เชตเชฟเชจเชเชคเซเช เชคเชฎเชพเชฎ เชเชฆเชพเชนเชฐเชฃเซ เชตเชเซเชเซ เชตเชฟเชคเชฐเชฟเชค เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ:
... เชชเชฐเชเชคเซ เช
เชฎเซ เชเชเซเชเซเช เชเซเช เชเซ เชตเชฟเชจเชเชคเซเช v1 เชฆเชพเชเชฒเชพเช เชชเชฐ เชฎเซเชเชฒเชตเชพเชฎเชพเช เชเชตเซ เช
เชจเซ v2 เชฆเชพเชเชฒเชพเช เชชเชฐ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชฟเชค เชฅเชพเชฏ:
เช
เชฎเซ DestinationRule เชธเชพเชฅเซ เชธเชเชฏเซเชเชจเชฎเชพเช VirtualService เชฆเซเชตเชพเชฐเชพ เช เชนเชพเชเชธเชฒ เชเชฐเซเชถเซเช, เชเซเชฏเชพเช เชจเชฟเชฏเชฎเซ เชเซเชเซเชเชธ เชธเชฌเชธเซเช เชฎเชพเชเซ VirtualService เชจเชพ เชธเชฌเชธเซเชเซเชธ เช
เชจเซ เชฐเซเชเซเชธ เชจเชเซเชเซ เชเชฐเชถเซ.
เชเชเชคเชตเซเชฏ เชจเชฟเชฏเชฎเซเชฎเชพเช เชธเชฌเชธเซเชเซเชธเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเซเช
เชธเชฌเชธเซเชเซเชธ (เชธเชฌเชธเซเช) เชจเซเชเซเชจเชพ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฆเซเชตเชพเชฐเชพ เชจเชเซเชเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ (
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: sa-logic
spec:
host: sa-logic # 1
subsets:
- name: v1 # 2
labels:
version: v1 # 3
- name: v2
labels:
version: v2
- เชฏเชเชฎเชพเชจ (
host
) เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชเซ เชเซ เช เชจเชฟเชฏเชฎ เชซเชเซเชค เชเชตเชพ เชเชฟเชธเซเชธเชพเชเชฎเชพเช เชฒเชพเชเซ เชชเชกเซ เชเซ เชเซเชฏเชพเชฐเซ เชฎเชพเชฐเซเช เชธเซเชตเชพ เชคเชฐเชซ เชเชพเชฏ เชเซsa-logic
; - เชถเซเชฐเซเชทเชเซ (
name
) เชธเชฌเชธเซเชเชจเซ เชเชชเชฏเซเช เชธเชฌเชธเซเช เชฆเชพเชเชฒเชพเช เชชเชฐ เชฐเซเช เชเชฐเชคเซ เชตเชเชคเซ เชฅเชพเชฏ เชเซ; - เชฒเซเชฌเชฒ (
label
) เชเซ-เชฎเซเชฒเซเชฏ เชเซเชกเซเชจเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเซ เชเซ เชเซ เชเซ เชฆเชพเชเชฒเชพเช เชธเชฌเชธเซเชเชจเซ เชญเชพเช เชฌเชจเชตเชพ เชฎเชพเชเซ เชฎเซเชณ เชเชพเชคเซ เชนเซเชตเซ เชเซเชเช.
เชจเซเชเซเชจเชพ เชเชฆเซเชถ เชธเชพเชฅเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฒเชพเชเซ เชเชฐเซ:
$ kubectl apply -f resource-manifests/istio/shadowing/sa-logic-subsets-destinationrule.yaml
destinationrule.networking.istio.io/sa-logic created
เชนเชตเซ เชเซเชฏเชพเชฐเซ เชธเชฌเชธเซเชเซเชธ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชฎเชพเช เชเชตเซเชฏเชพ เชเซ, เช เชฎเซ เชเชเชณ เชตเชงเซ เชถเชเซเช เชเซเช เช เชจเซ เชธเชพ-เชคเชฐเซเชเชจเซ เชตเชฟเชจเชเชคเซเช เชชเชฐ เชจเชฟเชฏเชฎเซ เชฒเชพเชเซ เชเชฐเชตเชพ เชฎเชพเชเซ เชตเชฐเซเชเซเชฏเซเช เชฒ เชธเชฐเซเชตเชฟเชธเชจเซ เชเซเช เชตเซ เชถเชเซเช เชเซเช เชเซเชฅเซ เชคเซเช:
- เชธเชฌเชธเซเช เชชเชฐ เชฐเซเช เชเชฐเซเชฏเซ
v1
, - เชธเชฌเชธเซเช เชชเชฐ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชฟเชค
v2
.
เชจเซเชเซเชจเซ เชฎเซเชจเชฟเชซเซเชธเซเชเซ เชคเชฎเชจเซ เชคเชฎเชพเชฐเซ เชฏเซเชเชจเชพเช เชนเชพเชเชธเชฒ เชเชฐเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ (
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: sa-logic
spec:
hosts:
- sa-logic
http:
- route:
- destination:
host: sa-logic
subset: v1
mirror:
host: sa-logic
subset: v2
เช เชนเซเช เชเซเช เชธเชฎเชเซเชคเซเชจเซ เชเชฐเซเชฐ เชจเชฅเซ, เชคเซเชฅเซ เชเชพเชฒเซ เชคเซเชจเซ เชเซเชฐเชฟเชฏเชพเชฎเชพเช เชเซเชเช:
$ kubectl apply -f resource-manifests/istio/shadowing/sa-logic-subsets-shadowing-vs.yaml
virtualservice.networking.istio.io/sa-logic created
เชเชพเชฒเซ เชจเซเชเซเชจเชพ เชเชฆเซเชถเชจเซ เชเซเชฒ เชเชฐเซเชจเซ เชฒเซเชก เชเชฎเซเชฐเซเช:
$ while true; do curl -v http://$EXTERNAL_IP/sentiment
-H "Content-type: application/json"
-d '{"sentence": "I love yogobella"}';
sleep .8; done
เชเชพเชฒเซ Grafana เชฎเชพเช เชชเชฐเชฟเชฃเชพเชฎเซ เชเซเชเช, เชเซเชฏเชพเช เชคเชฎเซ เชเซเช เชถเชเซ เชเซ เชเซ เชญเซเชฒเซ เชธเชพเชฅเซเชจเซเช เชธเชเชธเซเชเชฐเชฃ (buggy
) ~60% เชตเชฟเชจเชเชคเซเช เชฎเชพเชเซ เชจเชฟเชทเซเชซเชณเชคเชพเชฎเชพเช เชชเชฐเชฟเชฃเชฎเซ เชเซ, เชชเชฐเชเชคเซ เชเชฎเชพเชเชจเซ เชเซเชเชชเชฃ เชจเชฟเชทเซเชซเชณเชคเชพ เช
เชเชคเชฟเชฎ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชเชจเซ เช
เชธเชฐ เชเชฐเซ เชเซ เชเชพเชฐเชฃ เชเซ เชคเซเชเชจเซ เชเชพเชฒเซ เชฐเชนเซเชฒเซ เชธเซเชตเชพ เชฆเซเชตเชพเชฐเชพ เชชเซเชฐเชคเชฟเชธเชพเชฆ เชเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ.
เชธเชพ-เชคเชฐเซเช เชธเซเชตเชพเชจเชพ เชตเชฟเชตเชฟเชง เชธเชเชธเซเชเชฐเชฃเซเชจเชพ เชธเชซเชณ เชชเซเชฐเชคเชฟเชญเชพเชตเซ
เช
เชนเซเช เชเชชเชฃเซ เชธเซเชชเซเชฐเชฅเชฎ เชเซเชฏเซเช เชเซ เชเซเชตเซ เชฐเซเชคเซ เชตเชฐเซเชเซเชฏเซเช
เชฒ เชธเชฐเซเชตเชฟเชธ เช
เชฎเชพเชฐเซ เชธเซเชตเชพเชเชจเชพ เชฆเซเชค เชชเชฐ เชฒเชพเชเซ เชฅเชพเชฏ เชเซ: เชเซเชฏเชพเชฐเซ sa-web-app
เชฎเชพเชเซ เชตเชฟเชจเชเชคเซ เชเชฐเซ เชเซ sa-logic
, เชคเซ เชธเชพเชเชกเชเชพเชฐ เชเชจเซเชตเซเชฏ เชฆเซเชตเชพเชฐเชพ เชเชพเชฏ เชเซ, เชเซ - เชตเชฐเซเชเซเชฏเซเช
เชฒ เชธเชฐเซเชตเชฟเชธ เชฆเซเชตเชพเชฐเชพ - เชตเชฟเชจเชเชคเซเชจเซ v1 เชธเชฌเชธเซเช เชชเชฐ เชฐเซเช เชเชฐเชตเชพ เช
เชจเซ เชธเซเชตเชพเชจเชพ v2 เชธเชฌเชธเซเชเชจเซ เชตเชฟเชจเชเชคเซเชจเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชเซเช เชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ. sa-logic
.
เชนเซเช เชเชพเชฃเซเช เชเซเช, เชคเชฎเซ เชชเชนเซเชฒเซเชฅเซ เช เชตเชฟเชเชพเชฐเซ เชถเชเซ เชเซ เชเซ เชตเชฐเซเชเซเชฏเซเช เชฒ เชธเซเชตเชพเช เชธเชฐเชณ เชเซ. เชเชเชณเชจเชพ เชตเชฟเชญเชพเชเชฎเชพเช, เช เชฎเซ เชคเซ เชเชนเซเชจเซ เชคเซเชจเซ เชตเชฟเชธเซเชคเชพเชฐ เชเชฐเซเชถเซเช เชเซ เชคเซเช เชเชฐเซเชเชฐ เชฎเชนเชพเชจ เชเซ.
เชเซเชจเซเชฐเซ เชฐเซเชฒเชเชเชเซเชธ
เชเซเชจเซเชฐเซ เชกเชฟเชชเซเชฒเซเชฏเชฎเซเชจเซเช เช เชเชชเซเชฒเชฟเชเซเชถเชจเชจเชพ เชจเชตเชพ เชธเชเชธเซเชเชฐเชฃเชจเซ เชเชเซ เชธเชเชเซเชฏเชพเชฎเชพเช เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเช เชฎเชพเชเซ เชฐเซเชฒเชเชเช เชเชฐเชตเชพเชจเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเซ. เชคเซเชจเซ เชเชชเชฏเซเช เช เชธเซเชจเชฟเชถเซเชเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชฅเชพเชฏ เชเซ เชเซ เชชเซเชฐเชเชพเชถเชจเชฎเชพเช เชเซเช เชธเชฎเชธเซเชฏเชพ เชจเชฅเซ เช เชจเซ เชคเซ เชชเชเซ เช, เชคเซเชจเซ (เชชเซเชฐเชเชพเชถเชจเชจเซ) เชเซเชฃเชตเชคเซเชคเชพเชฎเชพเช เชชเชนเซเชฒเซเชฅเซ เช เชตเชฟเชถเซเชตเชพเชธ เชฐเชพเชเซเชจเซ, เชคเซเชจเซ เช เชจเซเชฏ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชเชจเซ เชตเชฟเชคเชฐเชฟเชค เชเชฐเซ.ะพเชฎเซเชเชพ เชชเซเชฐเซเชเซเชทเชเซ.
เชเซเชจเซเชฐเซ เชฐเซเชฒเชเชเชเซเชธ เชฆเชฐเซเชถเชพเชตเชตเชพ เชฎเชพเชเซ, เช
เชฎเซ เชธเชฌเชธเซเช เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเชตเชพเชจเซเช เชเชพเชฒเซ เชฐเชพเชเซเชถเซเช buggy
ั sa-logic
.
เชเชพเชฒเซ เชจเชพเชจเชเชกเซ เชตเชพเชคเซ เชชเชฐ เชธเชฎเชฏ เชจ เชฌเชเชพเชกเซ เช
เชจเซ เชคเชฐเชค เช 20% เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชเชจเซ เชฌเชเซเชธ เชธเชพเชฅเซ เชธเชเชธเซเชเชฐเชฃ เชชเชฐ เชฎเซเชเชฒเซเช (เช เช
เชฎเชพเชฐเชพ เชเซเชจเซเชฐเซ เชฐเซเชฒเชเชเชเชจเซเช เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชคเซเชต เชเชฐเชถเซ), เช
เชจเซ เชฌเชพเชเซเชจเชพ 80% เชธเชพเชฎเชพเชจเซเชฏ เชธเซเชตเชพเชฎเชพเช. เช เชเชฐเชตเชพ เชฎเชพเชเซ, เชจเซเชเซเชจเซ เชตเชฐเซเชเซเชฏเซเช
เชฒ เชธเชฐเซเชตเชฟเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซ (
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: sa-logic
spec:
hosts:
- sa-logic
http:
- route:
- destination:
host: sa-logic
subset: v1
weight: 80 # 1
- destination:
host: sa-logic
subset: v2
weight: 20 # 1
1 เชตเชเชจ เชเซ (weight
), เชเซ เชตเชฟเชจเชเชคเซเชเชจเซ เชเชเชพเชตเชพเชฐเซเชจเซ เชเชฒเซเชฒเซเช เชเชฐเซ เชเซ เชเซ เชชเซเชฐเชพเชชเซเชคเชเชฐเซเชคเชพ เช
เชฅเชตเชพ เชชเซเชฐเชพเชชเซเชคเชเชฐเซเชคเชพเชจเชพ เชธเชฌเชธเซเชเชจเซ เชจเชฟเชฐเซเชฆเซเชถเชฟเชค เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ.
เชเชพเชฒเซ เชชเชนเซเชฒเชพเชจเซ เชตเชฐเซเชเซเชฏเซเช
เชฒ เชธเชฐเซเชตเชฟเชธ เชเชจเซเชซเชฟเชเชฐเซเชถเชจเชจเซ เช
เชชเชกเซเช เชเชฐเซเช sa-logic
เชจเซเชเซเชจเชพ เชเชฆเซเชถ เชธเชพเชฅเซ:
$ kubectl apply -f resource-manifests/istio/canary/sa-logic-subsets-canary-vs.yaml
virtualservice.networking.istio.io/sa-logic configured
... เช เชจเซ เช เชฎเซ เชคเชฐเชค เช เชเซเชถเซเช เชเซ เชเซเชเชฒเซเช เชตเชฟเชจเชเชคเซเช เชจเชฟเชทเซเชซเชณเชคเชพ เชคเชฐเชซ เชฆเซเชฐเซ เชเชพเชฏ เชเซ:
$ while true; do
curl -i http://$EXTERNAL_IP/sentiment
-H "Content-type: application/json"
-d '{"sentence": "I love yogobella"}'
--silent -w "Time: %{time_total}s t Status: %{http_code}n"
-o /dev/null; sleep .1; done
Time: 0.153075s Status: 200
Time: 0.137581s Status: 200
Time: 0.139345s Status: 200
Time: 30.291806s Status: 500
เชตเชฐเซเชเซเชฏเซเช เชฒ เชธเซเชตเชพเช เชเซเชจเซเชฐเซ เชฐเซเชฒเชเชเชเชจเซ เชธเชเซเชทเชฎ เชเชฐเซ เชเซ: เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เช เชฎเซ เชธเชฎเชธเซเชฏเชพเชจเซ เชธเชเชญเชตเชฟเชค เช เชธเชฐเชจเซ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชเชงเชพเชฐเชจเชพ 20% เชธเซเชงเซ เชธเชเชเซเชเชฟเชค เชเชฐเซ เชเซ. เช เชฆเซเชญเซเชค! เชนเชตเซ, เชฆเชฐเซเช เชเชฟเชธเซเชธเชพเชฎเชพเช เชเซเชฏเชพเชฐเซ เช เชฎเชจเซ เช เชฎเชพเชฐเชพ เชเซเชก เชตเชฟเชถเซ เชเชพเชคเชฐเซ เชจ เชนเซเชฏ (เชฌเซเชเชพ เชถเชฌเซเชฆเซเชฎเชพเช - เชนเชเชฎเซเชถเชพ...), เช เชฎเซ เชฎเชฟเชฐเชฐเชฟเชเช เช เชจเซ เชเซเชจเซเชฐเซ เชฐเซเชฒเชเชเชเซเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซเช เชเซเช.
เชธเชฎเชฏเชธเชฎเชพเชชเซเชคเชฟ เช เชจเซ เชซเชฐเซ เชชเซเชฐเชฏเชพเชธเซ
เชชเชฐเชเชคเซ เชญเซเชฒเซ เชนเชเชฎเซเชถเชพ เชเซเชกเชฎเชพเช เชธเชฎเชพเชชเซเชค เชฅเชคเซ เชจเชฅเซ. เชฏเชพเชฆเซเชฎเชพเช "
เชจเชฟเชฆเชฐเซเชถเชจ เชฎเชพเชเซ เช
เชฎเซ เชธเชฎเชพเชจ เชธเชฎเชธเซเชฏเชพ เชธเชเชธเซเชเชฐเชฃเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชจเซเช เชเชพเชฒเซ เชฐเชพเชเซเชถเซเช sa-logic
(buggy
), เช
เชจเซ เช
เชฎเซ เชฐเซเชจเซเชกเชฎ เชจเชฟเชทเซเชซเชณเชคเชพเช เชธเชพเชฅเซ เชจเซเชเชตเชฐเซเชเชจเซ เช
เชตเชฟเชถเซเชตเชธเชจเซเชฏเชคเชพเชจเซเช เช
เชจเซเชเชฐเชฃ เชเชฐเซเชถเซเช.
เชญเซเชฒเซ เชธเชพเชฅเซเชจเซ เช เชฎเชพเชฐเซ เชธเซเชตเชพเชจเซ เชชเซเชฐเชคเชฟเชธเชพเชฆ เชเชชเชตเชพเชฎเชพเช เชเชฃเซ เชธเชฎเชฏ เชฒเชพเชเชตเชพเชจเซ 1/3 เชคเช, เชเชเชคเชฐเชฟเช เชธเชฐเซเชตเชฐ เชญเซเชฒ เชธเชพเชฅเซ เชธเชฎเชพเชชเซเชค เชฅเชตเชพเชจเซ 1/3 เชคเช เช เชจเซ เชชเซเชทเซเช เชจเซ เชธเชซเชณเชคเชพเชชเซเชฐเซเชตเช เชชเชฐเชค เชเชฐเชตเชพเชจเซ 1/3 เชคเช เชฆเซ.
เชเชตเซ เชธเชฎเชธเซเชฏเชพเชเชจเชพ เชชเซเชฐเชญเชพเชตเชจเซ เชเชเชพเชกเชตเชพ เช เชจเซ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเช เชฎเชพเชเซ เชเซเชตเชจ เชฌเชนเซเชคเชฐ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซ, เช เชฎเซ เช เชเชฐเซ เชถเชเซเช เชเซเช:
- เชเซ เชธเซเชตเชพเชจเซ เชชเซเชฐเชคเชฟเชธเชพเชฆ เชเชชเชตเชพเชฎเชพเช 8 เชธเซเชเชจเซเชก เชเชฐเชคเชพเช เชตเชงเซ เชธเชฎเชฏ เชฒเชพเชเซ เชคเซ เชธเชฎเชฏเชธเชฎเชพเชชเซเชคเชฟ เชเชฎเซเชฐเซ,
- เชเซ เชตเชฟเชจเชเชคเซ เชจเชฟเชทเซเชซเชณ เชเชพเชฏ เชคเซ เชซเชฐเซ เชชเซเชฐเชฏเชพเชธ เชเชฐเซ.
เช
เชฎเชฒเซเชเชฐเชฃ เชฎเชพเชเซ, เช
เชฎเซ เชจเซเชเซเชจเซ เชธเชเชธเชพเชงเชจ เชตเซเชฏเชพเชเซเชฏเชพเชจเซ เชเชชเชฏเซเช เชเชฐเซเชถเซเช (
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: sa-logic
spec:
hosts:
- sa-logic
http:
- route:
- destination:
host: sa-logic
subset: v1
weight: 50
- destination:
host: sa-logic
subset: v2
weight: 50
timeout: 8s # 1
retries:
attempts: 3 # 2
perTryTimeout: 3s # 3
- เชตเชฟเชจเชเชคเซ เชฎเชพเชเซ เชธเชฎเชฏเชธเชฎเชพเชชเซเชคเชฟ 8 เชธเซเชเชจเซเชก เชชเชฐ เชธเซเช เชเซ;
- เชตเชฟเชจเชเชคเซเช 3 เชตเชเชค เชซเชฐเซเชฅเซ เชชเซเชฐเชฏเชพเชธ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ;
- เช เชจเซ เชเซ เชชเซเชฐเชคเชฟเชญเชพเชต เชธเชฎเชฏ 3 เชธเซเชเชจเซเชกเชฅเซ เชตเชงเซ เชเชพเชฏ เชคเซ เชฆเชฐเซเช เชชเซเชฐเชฏเชพเชธเชจเซ เช เชธเชซเชณ เชเชฃเชตเชพเชฎเชพเช เชเชตเซ เชเซ.
เช เชเช เชเชชเซเชเชฟเชฎเชพเชเชเซเชถเชจ เชเซ เชเชพเชฐเชฃ เชเซ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชจเซ 8 เชธเซเชเชจเซเชกเชฅเซ เชตเชงเซ เชฐเชพเชน เชเซเชตเซ เชชเชกเชถเซ เชจเชนเซเช เช เชจเซ เช เชฎเซ เชจเชฟเชทเซเชซเชณเชคเชพเชจเชพ เชเชฟเชธเซเชธเชพเชฎเชพเช เชชเซเชฐเชคเชฟเชธเชพเชฆ เชฎเซเชณเชตเชตเชพ เชฎเชพเชเซ เชคเซเชฐเชฃ เชจเชตเชพ เชชเซเชฐเชฏเชพเชธเซ เชเชฐเซเชถเซเช, เชธเชซเชณ เชชเซเชฐเชคเชฟเชธเชพเชฆเชจเซ เชคเช เชตเชงเชพเชฐเซเชถเซเช.
เชจเซเชเซเชจเชพ เชเชฆเซเชถ เชธเชพเชฅเซ เช เชชเชกเซเช เชเชฐเซเชฒ เชฐเซเชชเชฐเซเชเชพเชเชเชจ เชฒเชพเชเซ เชเชฐเซ:
$ kubectl apply -f resource-manifests/istio/retries/sa-logic-retries-timeouts-vs.yaml
virtualservice.networking.istio.io/sa-logic configured
เช เชจเซ เชเซเชฐเชพเชซเชจเชพ เชเซเชฐเชพเชซเชฎเชพเช เชคเชชเชพเชธเซ เชเซ เชธเชซเชณ เชชเซเชฐเชคเชฟเชญเชพเชตเซเชจเซ เชธเชเชเซเชฏเชพ เชเชชเชฐ เชตเชงเซ เชเซ:
เชธเชฎเชฏเชธเชฎเชพเชชเซเชคเชฟ เช
เชจเซ เชชเซเชจเชเชชเซเชฐเชฏเชพเชธเซ เชเชฎเซเชฐเซเชฏเชพ เชชเชเซ เชธเชซเชณ เชชเซเชฐเชคเชฟเชธเชพเชฆเชจเชพ เชเชเชเชกเชพเชฎเชพเช เชธเซเชงเชพเชฐเซ
เชเชเชฒเชพ เชตเชฟเชญเชพเชเชฎเชพเช เชเชเชณ เชตเชงเชคเชพ เชชเชนเซเชฒเชพ (เช
เชฅเชตเชพ เชคเซเชจเชพ เชฌเชฆเชฒเซ, เชฒเซเชเชจเชพ เชเชเชณเชจเชพ เชญเชพเชเชฎเชพเช, เชเชพเชฐเชฃ เชเซ เชเชฎเชพเช เชเซเช เชตเชงเซ เชตเซเชฏเชตเชนเชพเชฐเซ เชชเซเชฐเชฏเซเชเซ เชนเชถเซ เชจเชนเซเช - เชเชถเชฐเซ เช
เชจเซเชตเชพเชฆ.), เชเชพเชขเซ เชจเชพเชเซ sa-logic-buggy
เช
เชจเซ เชจเซเชเซเชจเชพ เชเชฆเซเชถเซ เชเชฒเชพเชตเซเชจเซ เชตเชฐเซเชเซเชฏเซเช
เชฒ เชธเชฐเซเชตเชฟเชธ:
$ kubectl delete deployment sa-logic-buggy
deployment.extensions โsa-logic-buggyโ deleted
$ kubectl delete virtualservice sa-logic
virtualservice.networking.istio.io โsa-logicโ deleted
เชธเชฐเซเชเชฟเช เชฌเซเชฐเซเชเชฐ เช เชจเซ เชฌเชฒเซเชเชนเซเชก เชชเซเชเชฐเซเชจ
เช เชฎเซ เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธ เชเชฐเซเชเชฟเชเซเชเซเชเชฐเชฎเชพเช เชฌเซ เชฎเชนเชคเซเชตเชชเซเชฐเซเชฃ เชชเซเชเชฐเซเชจ เชตเชฟเชถเซ เชตเชพเชค เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช เชเซ เชคเชฎเชจเซ เชธเซเชต-เชชเซเชจเชเชชเซเชฐเชพเชชเซเชคเชฟ เชชเซเชฐเชพเชชเซเชค เชเชฐเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ (เชธเซเชต-เชเชชเชเชพเชฐ) เชธเซเชตเชพเช.
เชธเชฐเซเชเชฟเช เชฌเซเชฐเซเชเชฐ ("เชธเชฐเซเชเชฟเช เชฌเซเชฐเซเชเชฐ") เชฌเชฟเชจเชเชฐเซเชเซเชฏเชชเซเชฐเชฆ เชฎเชพเชจเชตเชพเชฎเชพเช เชเชตเชคเซ เชธเซเชตเชพเชจเชพ เชฆเชพเชเชฒเชพ เชชเชฐ เชเชตเชคเซ เชตเชฟเชจเชเชคเซเชเชจเซ เชธเชฎเชพเชชเซเชค เชเชฐเชตเชพ เช
เชจเซ เชคเซเชจเซ เชชเซเชจเชเชธเซเชฅเชพเชชเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชตเชชเชฐเชพเชฏ เชเซ เชเซเชฏเชพเชฐเซ เชเซเชฒเชพเชฏเชเช เชตเชฟเชจเชเชคเซเชเชจเซ เชคเซ เชธเซเชตเชพเชจเชพ เชคเชเชฆเซเชฐเชธเซเชค เชเชฆเชพเชนเชฐเชฃเซ เชชเชฐ เชฐเซเชกเชพเชฏเชฐเซเชเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ (เชเซ เชธเชซเชณ เชชเซเชฐเชคเชฟเชธเชพเชฆเซเชจเซ เชเชเชพเชตเชพเชฐเซ เชตเชงเชพเชฐเซ เชเซ). (เชจเซเชเชง: เชชเซเชเชฐเซเชจเชจเซเช เชตเชงเซ เชตเชฟเชเชคเชตเชพเชฐ เชตเชฐเซเชฃเชจ เชฎเชณเซ เชถเชเซ เชเซ, เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ,
เชฌเชฒเซเชเชนเซเชก ("เชชเชพเชฐเซเชเซเชถเชจ") เชธเชฎเชเซเชฐ เชธเชฟเชธเซเชเชฎเชจเซ เช
เชธเชฐ เชเชฐเชคเชพ เชธเซเชตเชพ เชจเชฟเชทเซเชซเชณเชคเชพเชเชจเซ เช
เชฒเช เชเชฐเซ เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชธเซเชตเชพ B เชคเซเชเซ เชเช เชเซ เช
เชจเซ เชฌเซเชเซ เชธเซเชตเชพ (เชธเชฐเซเชตเชฟเชธ Bเชจเซ เชเซเชฒเชพเชฏเชจเซเช) เชธเชฐเซเชตเชฟเชธ Bเชจเซ เชตเชฟเชจเชเชคเซ เชเชฐเซ เชเซ, เชเซเชจเชพ เชเชพเชฐเชฃเซ เชคเซ เชคเซเชจเชพ เชฅเซเชฐเซเชก เชชเซเชฒเชจเซ เชเชคเชฎ เชเชฐเซ เชถเชเซ เชเซ เช
เชจเซ เช
เชจเซเชฏ เชตเชฟเชจเชเชคเซเช (เชญเชฒเซ เชคเซ เชธเซเชตเชพ Bเชฎเชพเชเชฅเซ เชจ เชนเซเชฏ เชคเซ เชชเชฃ) เชธเซเชตเชพ เชเชฐเชตเชพเชฎเชพเช เช
เชธเชฎเชฐเซเชฅ เชนเซเชฏ เชเซ. (เชจเซเชเชง: เชชเซเชเชฐเซเชจเชจเซเช เชตเชงเซ เชตเชฟเชเชคเชตเชพเชฐ เชตเชฐเซเชฃเชจ เชฎเชณเซ เชถเชเซ เชเซ, เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ,
เชนเซเช เช เชชเซเชเชฐเซเชจเชจเซ เช
เชฎเชฒเซเชเชฐเชฃ เชตเชฟเชเชคเซเชจเซ เช
เชตเชเชฃเซเชถ เชเชพเชฐเชฃ เชเซ เชคเซ เชถเซเชงเชตเชพเชฎเชพเช เชธเชฐเชณ เชเซ
เช เชจเซเชตเชพเชฆเช เชคเชฐเชซเชฅเซ เชชเซเชเชธ
เช เชฎเชพเชฐเชพ เชฌเซเชฒเซเช เชชเชฐ เชชเชฃ เชตเชพเชเชเซ:
- "เชเชธเซเชเชฟเช เชธเชพเชฅเซ เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธเชฟเชธ เชชเชฐ เชชเชพเชเชพ":
เชญเชพเช 1 (เชฎเซเชเซเชฏ เชฒเชเซเชทเชฃเซเชจเซ เชชเชฐเชฟเชเชฏ) ,เชญเชพเช 3 (เชชเซเชฐเชฎเชพเชฃเซเชเชฐเชฃ เช เชจเซ เช เชงเชฟเชเซเชคเชคเชพ) ; - ยซ
เชจเชณเซ - เชเซเชฌเชฐเชจเซเชเซเชธ เชฎเชพเชเซ เชนเชฒเชเซ เชธเซเชตเชพ เชฎเซเชถ ยป; - ยซ
เชธเชฐเซเชตเชฟเชธ เชฎเซเชถ เชถเซเช เชเซ เช เชจเซ เชฎเชจเซ เชคเซเชจเซ [เชฎเชพเชเชเซเชฐเซเชธเชฐเซเชตเชฟเชธ เชธเชพเชฅเซ เชเซเชฒเชพเชเชก เชเชชเซเชฒเชฟเชเซเชถเชจ เชฎเชพเชเซ] เชถเชพ เชฎเชพเชเซ เชเชฐเซเชฐ เชเซ? ยป.
เชธเซเชฐเซเชธ: www.habr.com