比例配分トラフィック
制御し、先Backend_v1 Backend_v2アクセストラフィックに配布するために構成のトラフィック分散ポリシーFontendマイクロサービスには、このセクション、。
- Kialiでは、コンソールは、[サービス]> [バックエンドを入力してアクションをクリックし、選択し加重ルーティング]ドロップダウンメニューを作成します。
- 重量は80に設定されて作成加重ルーティング]ダイアログボックスでbackend_v1ます。そして、オープンを隠す高度なオプション、ONに追加ロードバランスセット、およびロードバランサがROUND_ROBIN戦略であることを確認してください。最後に、[作成]ボタンをクリックします。システムは、先のルールや構成に応じて仮想サービスオブジェクトを作成します。
- Kialiコンソールで作成DestinationRuleとVirtualServiceの上にも、以下のコマンドで行うことができます。
$ oc apply -f istio-files/destination-rule-backend-v1-v2.yml -n my-istio-app
$ oc apply -f istio-files/virtual-service-backend-v1-v2-80-20.yml -n my-istio-app
- KialiでIstio Config]を入力して、あなたはVirtualServiceとDestinationRulコンフィギュレーションを表示することができます。
- グラフで使用する場合の違いを参照して、次のスクリプトを続行します。
$ scripts/run-50.sh
6.編集DestinationRuleは、重量比を変えます。[保存して前のステップ、送信テスト要求を実行し、結果を表示します。
$ oc get DestinationRule -n my-istio-app
NAME HOST AGE
backend backend 20h
$ oc edit DestinationRule backend -n my-istio-app
トラフィックミラーリング
同時にBackend_v1とBackend_v2間の平均トラフィック分配した要求は、要求がBackend_v3マイクロミラーサービスに送信されます。このシナリオでは、通常、アプリケーションのテストやトラフィック監視のために使用されています。
- 展開Backend_v3マイクロサービス。
$ oc apply -f ocp/backend-v3-deployment.yml -n my-istio-app
$ oc apply -f ocp/backend-v3-service.yml -n my-istio-app
- VirtualServiceのオリジナルのバックエンドを削除して、新しいコンフィギュレーション・バックエンドの仮想サービスを作成するためのコマンドを実行VirtualService。
$ oc apply -f istio-files/virtual-service-backend-v1-v2-mirror-to-v3.yml -n my-istio-app
$ oc delete VirtualService backend -n my-istio-app
どこに仮想サービスのバックエンド-V1-V2-ミラーツーv3.yml以下の内容。
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: backend-virtual-service
spec:
hosts:
backend
http:
route:
- destination:
host: backend
subset: v1
weight: 80
- destination:
host: backend
subset: v2
weight: 20
mirror:
host: backend-v3
- 次のスクリプトを続行します。
$ scripts/run-50.sh
- ビューBackend_v3あなたはbackend_v3は、トラフィックミラーリングを介して要求を受信できることを確認、別の新しいウィンドウにログインします。
$ oc logs -f <backend_v3 pod> -c backend -n my-istio-app
- 最後に、わずか3マイクロサービスを残し、関連するIstioポリシー設定を削除します。
$ oc delete -f istio-files/virtual-service-backend-v1-v2-mirror-to-v3.yml -n my-istio-app
$ oc delete -f istio-files/destination-rule-backend-v1-v2.yml -n my-istio-app
$ oc delete -f ocp/backend-v3-deployment.yml -n my-istio-app
$ oc delete -f ocp/backend-v3-service.yml -n my-istio-app