2016-12-20 8 views
1

AWSでサービスタイプ= loadbalancerを使用するときにスティッキセッションを設定する方法を理解しようとしています バックエンドはtomcatアプリケーションを実行する2つのポッドです サービスがAWS LB同様に、私はAWS LB構成で右クッキーの値を設定しますが、システムにアクセスするとき、私は私がすべての追加ありKubernetes:AWSロードバランシングでスティッキセッションをセットアップする方法

マイサービス構成

kind: Service 
apiVersion: v1 
metadata: 
annotations: 
    service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http 
labels: 
    app: app1 
name: AWSELB 
namespace: local 
spec: 
type: LoadBalancer 
ports: 
- port: 8080 
    targetPort: 8080 
selector: 
    app: app1 

私のポッド/ Tomcatのインスタンス間で切り替えておくことがわかり設定が欠落していますか? ジャック

答えて

0

service.spec.sessionAffinityを "ClientIP"(デフォルトは "None")に設定することで、Client-IPベースのセッションアフィニティを設定できますか。 (http://kubernetes.io/docs/user-guide/services/

あなたはまた、より良いルーティングの内部を管理することができ進入コントローラを実行してみることができ、次を参照してください。https://github.com/kubernetes/kubernetes/issues/13892#issuecomment-223731222

+0

サービスタイプがLoadBalancerの場合、sessionAffinityのClientIP値はサポートされません。 L7ルーティングにイングレスコントローラを使用する方法の例がありますか? –

+0

ああ、あなたは正しいです、それについて申し訳ありません。あなたはここで入力について読むことができます:http://kubernetes.io/docs/user-guide/ingress/ –

0

kubeプロキシはL4です。ソースIPが同じ場合は、クライアントを区別できません。これらの詳細を読むには、L7プロキシが必要です。チェックイン入力:https://github.com/kubernetes/ingress/tree/master/examples/affinity/cookie/nginx これは、クッキーを使用してユーザを識別し、ポッドを直接呼び出すL4 kube-proxyをスキップします。

関連する問題