Istioについての詳細は、参照してくださいistio中国の文書を。
オリジナルの参照トラフィックシフトを。
このミッションは、アプリケーショントラフィックが徐々に古いバージョンからのサービスの新バージョンに移行する方法を紹介します。Istioすることで、サービスのサービスの古いバージョンから新しいバージョンにスムーズに流れる移行する異なる重みの一連のルール(10%、20%、...、100%)を使用することができます。
簡単にするための、本発明の2段階タスクトラフィックreviews:v1
への移行reviews:v3
、それぞれ、50重量%、100%、。
ドキュメントを参照すると、インストールガイド Istioをインストールする手順。
展開のBookInfoのサンプルアプリケーション。
注:このドキュメントでは、サンプルアプリケーションを使用して示す展開kubernetesを前提としています。ルールでコマンドラインを使用して、すべての例は、(例えばファイルYAML
samples/bookinfo/kube/route-rule-all-v1.yaml
指定kubernetesバージョン)。あなたは異なる環境でこのタスクを実行する場合、してくださいkube
(例えば、領事ベースのオペレーティング環境、ディレクトリがある適切なディレクトリに動作環境を変更しますsamples/bookinfo/consul/route-rule-all-v1.yaml
)。
ルートの重量ベースのバージョン
すべてのマイクロサービスのデフォルトのバージョンはV1に設定されています。
istioctl create -f samples/bookinfo/kube/route-rule-all-v1.yaml
ブラウザでhttpを開きます:// $ GATEWAY_URL / productpage、確認
reviews
サービスは、現在アクティブなバージョンであることはV1です。
あなたはproductpageページBooInfoアプリケーションがブラウザに表示されて見ることができます。なお、productpage
星評価なし表示内容。これが原因でreviews:v1
アクセスできないratings
サービスを。
注意:あなたが前に行った場合は、設定要求ルーティングタスクは、テストユーザー「ジェイソン」をログオフまたは削除する前に、個々のユーザーのために作成したルールをテストする必要があります。
```bash
istioctl delete routerule reviews-test-v2
```
まず、からのトラフィックの50%を置くために、次のコマンドを使用して
reviews:v1
転送しますreviews:v3
:istioctl replace -f samples/bookinfo/kube/route-rule-reviews-50-v3.yaml
使用に注意してくださいistioctl replace
代わりにcreate
。
- ブラウザでリフレッシュするには、いくつかの回
productpage
ページを、ページの内容の評価を参照するには、約50%の確率で赤い星と表示されます。
注:現在の特使サイドカー実装では、リフレッシュする必要があるかもしれ
productpage
流量分布の影響を見るために何回も。参照ページで15回以上をリフレッシュする必要があるかもしれませんが、変更前に表示されます。あなたはルールを変更する場合は、トラフィックの90%がV3にルーティングされ、あなたはより多くの重要な結果を見ることができます。
v3のバージョンの場合は
reviews
、サービスが安定して動作されている、トラフィックの100%がにルーティングすることができますreviews:v3
。istioctl replace -f samples/bookinfo/kube/route-rule-reviews-v3.yaml
この場合、すべてのユーザーがにログオンproductpage
ページ、あなたは赤い星で評価情報を見ることができます。
原則を理解します
このタスクでは、我々は古いバージョンからのトラフィック特性の加重Istioの再ルーティングを使用しreviews
たサービスの新しいバージョンにサービスを提供するために徐々に移行します。
コンテナと展開の使用はバージョンを移行するオーケストレーションプラットフォームは全く異なる特徴の方法に注意してください。コンテナオーケストレーションプラットフォームは、トラフィックを管理するためのスケーリングの例を使用しています。そしてIstioにより、2つのバージョンのreviews
サービスは、独立してスケールアップやスケールダウン、およびサービス提供の2つのバージョン間のトラフィックには影響しませんすることができます。
ルーティング機能のバージョンをスケーリングすることによってより多くのサポートについては、以下を参照してください展開を使用してカナリアIstioを。
晴れ上がります
ルーティングルールを削除します。
istioctl delete -f samples/bookinfo/kube/route-rule-all-v1.yaml
あなたは後者のタスクをしようとするつもりがない場合は、参照してくださいのBookInfoクリーンアップアプリケーションを閉じるための手順を。
深い読み
- より多くのコンテンツを参照してください。要求ルーティングを。
ああ、この記事では、私に励まし便利です...
使用マイクロチャネルの支払いを完了するためにスキャン二次元コード
オリジナル:大列 Istioを使用して、転送アプリケーションのトラフィックを達成-趙ビングさんのブログを