OpenStack Dashboard Load Balance

Dashboard的LoadBalance

问题描述

对于OpenStack的DashBoard来说,为水平扩展其处理能力,就需要对多个DashBoard进行Load Balance。DashBoard和OpenStack各组件对外的API服务不同,其是有状态的,且会涉及特定的问题,本文会对其涉及的问题及解决办法进行分析和记录。

问题分析

OpenStack的DashBoard对外提供Portal和noVNCProxy两个服务,使用Django框架实现。其中noVNCProxy还涉及到提供websocket服务器的能力。要做到DashBoard的LoadBalance,有如下几个问题需要考虑。

Session Sticky

DashBoard涉及到用户登陆和session管理,当使用多个DashBoard后端做LoadBalance时,需要保持多DashBoard后端session数据的一致性。可以通过将DashBoard所在主机添加到一个memcache集群中,并配置Django使用此memcache来作为session后端来完成这一点。当然,也可以通过由LB软件提供session sticky能力来完成这一点。所谓的session sticky,是指LB需要在第一次接收到请求并分发到后端时,记录其session信息,在后续收到同一个session的请求到来时,将请求转发到相同的后端上。作为L7 Level的LB软件,HAProxy具备session sticky的能力。可通过类似如下Backend配置来开启session sticky:

    mode http
    balance     roundrobin
    cookie SERVERID insert indirect nocache
    server  server01 controller01:80 check cookie server01
    server  server02 controller02:80 check cookie server02
    server  server03 controller03:80 check cookie server03

WebSocket

NoV

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值