操作系统信息
阿里云Centos7.9
Kubernetes版本信息
1.21.5
容器运行时
docker
19.03.10
KubeSphere版本信息
3.2.0
两个项目,一个是登录,一个是管理系统,通过登录获取不同的用户,进入不同版本的管理系统,通过cookie匹配
这是login的代码
res.cookie(“token”, common.user.getToken(req));
res.cookie(“end-user”, common.user.getUser());
if (common.active.getActive() == “dev”)
{ res.redirect(302, ‘http://127.0.0.1:3001/platform’);
} else {
res.redirect(302, ‘../platform’);
}
通过上面这段代码进入管理系统,设置了cookie,在k8s环境重定向用的是res.redirect(302, ‘../platform’);这段代码,platform是管理系统。
在管理系统的request里是可以获取到设置的cookie值
这是登录后,跳转到管理系统后执行的代码
let token = req.cookies[‘token’];
let username = req.cookies[‘end-user’];
if (token ≠ undefined && token != "") { common.user.setToken(res, token, username, req); }
end-user是可以获取到的
金丝雀配置如下:
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
creationTimestamp: “2021-11-25T06:55:52Z”
generation: 7
labels:
app: djl-platform
app.kubernetes.io/name: jft-cloud
app.kubernetes.io/version: v1
version: v1
name: djl-platform
namespace: feihec-cloud
resourceVersion: “3055786”
uid: 563a6806-635f-47e9-96f4-3fdc6a3f4e3c
spec:
hosts:
djl-platform
http:
match:
match:
port: 3000
route:
destination:
host: djl-platform
port:
number: 3000
subset: v1
weight: 100
admin用户进入版本1,admin2进入版本2,就是不行,请指教