(7)のOpenShiftサービスメッシュチュートリアル4 - ゲートウェイマイクロサービスへのアクセス、仮想サービスとDestinationRule

要求ゲートウェイIstioを入力することによって、それぞれVirtualService異なるヘッダを要求することによって、フロントエンド-V1およびフロントエンド-V2マイクロサービスを発行しました。
Https://istio.io/docs/reference/config/networking/gateway/ゲートウェイについては見ることができ
ここに画像を挿入説明
、操作後- 「トラフィック管理メッシュのチュートリアル(4)のOpenShiftサービス4」を完了するために、この記事を。内容を空にするために私の-istioアプリのプロジェクトのアプリケーションを実行するために、操作の正式開始する前に、次のコマンドを実行する必要があります。

$ scripts/teardown.sh
  1. フロントエンド-v1とフロントエンド-V2マイクロサービスおよび関連リソースを作成し、コマンドを実行します。
$ oc apply -f ocp/frontend-v1-deployment.yml
$ oc apply -f ocp/frontend-v2-deployment.yml
$ oc apply -f ocp/frontend-service.yml
$ oc apply -f ocp/frontend-route.yml
$ oc apply -f ocp/backend-v1-deployment.yml
$ oc apply -f ocp/backend-service.yml
  1. コマンドを実行し、マイクロサービスコールパスKialiは、コンソールには、要求を表示します。
$ scripts/run-50.sh

ここに画像を挿入説明
3.実行してゲートウェイを作成しました。

$ oc apply -f istio-files/frontend-gateway.yml

注:このゲートウェイistioシステムの実行、およびistio = ingressgatewayラベルを通るルートに対応しています。

apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: frontend-gateway
spec:
  selector:
    istio: ingressgateway # use istio default controller, in this example, default controller is istio-system
  servers:
  - port:
      number: 80
      name: http
      protocol: HTTP
    hosts:
    - '*'
  1. 実行コマンドは、仮想サービスと宛先ルールを作成します。
$ oc apply -f istio-files/destination-rule-frontend-v1-v2.yml
$ oc apply -f istio-files/virtual-service-frontend-header-foo-bar-to-v1.yml

前記仮想サービス・フロントエンド・ヘッダFOO-BAR-TO-v1.ymlヘッダを含むルーティングベースの条件:

...
- match:
    - headers:
        foo:
          exact: bar
    route:
    - destination:
        host: frontend
        subset: v1
...

前記アクセスゲートウェイのアドレスを取得し、デフォルトアクセスゲートウェイヘッダを指定し、確認応答異なるフロントエンドを流れます。

$ export GATEWAY_URL=$(oc get route istio-ingressgateway -n istio-system -o jsonpath='{.spec.host}')
$ curl $GATEWAY_URL
Frontend version: v2 => [Backend: http://backend:8080, Response: 200, Body: Backend version:v1,Response:200,Host:backend-v1-6ddf9c7dcf-ppk77, Message: Hello World!!]
$ curl -H foo:bar $GATEWAY_URL
Frontend version: v1 => [Backend: http://backend:8080, Response: 200, Body: Backend version:v1,Response:200,Host:backend-v1-6ddf9c7dcf-ppk77, Message: Hello World!!]
  1. マイクロサービスコールパスKialiコンソールを表示するには。
    ここに画像を挿入説明
公開された54元の記事 ウォンの賞賛0 ビュー1071

おすすめ

転載: blog.csdn.net/weixin_43902588/article/details/103866197