Web系エンジニアのアウトプット練習場

エンジニアリングと書評が中心。たまに全然関係無い話もします。
  • thumbnail
  • thumbnail
  • 2017年12月31日

    2017年の振り返り

    なかなか時間が取れず、もう年を越してしまいましたが、まとめておきます。
    thumbnail
  • 2017年12月28日

    GCPのHTTP(S)ロードバランサでセッションアフィニティを設定する

    Qiita
    問題 GKEのIngressで作成したHTTP(S)ロードバランサについて、Ingressコントローラからはセッションアフィニティが設定できません。 このページのaffinityの欄を確認すると、2017/12/28現在はnginxコントローラのみ対応しており、GCPのロードバランサは対応していないことがわかります。 つまり、以下のようにgceコントローラを使用している場合は、セッションアフィニティのannotationsは使用できません。 apiVersion: extensions/v1beta1 kind: Ingress metadata: name: eccube-ingress namespace: annotations: kubernetes.io/ingress.class: "gce" . . . 解決策 gcloudコマンドを使ってセッションアフィニティを設定できます。 enable-affinity.sh backend_list=(`gcloud compute backend-services list | awk -v ORS=" " '!/NAME/{gsub("\n"," ",$1); print $1 }'`) for v in "${backend_list[@]}" do gcloud compute backend-services update "$v" --session-affinity client_ip --global done 上記のスクリプトでは現存するバックエンドサービス全てに対して、セッションアフィニティClientIPを設定しています。