我在Kubernetes上使用Rancher来创建我们的测试/开发环境。首先,它是一个很棒的工具,我对它如何简化此类环境的管理感到惊讶。
也就是说,我有一个问题(可能更多的是缺乏对Rancher的了解)。我尝试通过Jenkins自动化部署,由于我们将在我们的测试环境中使用多个堆栈,因此我希望使用Rancher CLI动态更新负载均衡器实例,以便从Jenkins为新环境添加路由。
目前,我只是尝试运行以下命令:
rancher --url http://myrancher_server:8080 --access-key <key> --secret-key <secret> --env dev-test stack create kubernetes-ingress-lbs -r loadbalancer-rancher-service.yml我的docker-compose.yml文件如下所示:
version: '2'
services:
frontend:
image: 172.19.51.97:5000/frontend
dev-test-lb:
image: rancher/load-balancer-service
ports:
- 82: 8086
links:
- fronted:frontend我的牧场主合成文件是这样的:
version: '2'
services:
dev-test-lb:
scale: 4
lb_config:
port_rules:
- source_port: 82
path: /products
target_port: 8086
service: products
- source_port: 82
path: /
target_port: 4201
service: frontend
health_check:
port: 42
interval: 2000
unhealthy_threshold: 3
healthy_threshold: 2
response_timeout: 2000现在,当我执行这个命令时,我得到了以下响应:
Bad response statusCode [422]. Status [422 status code 422]. Body: [code=NotUnique, fieldName=name, baseType=error] from [http://myrancher_server:8080/v2-beta/projects/1a21/stacks]显然,我不能用已经存在的服务来编辑现有的堆栈。你知道这样做是不是最好的做法?我检查了man,我只在"rancher stack“上看到了"create”操作,所以我想知道我们是否可以更新?
我的rancher服务器是v1.5.10,我的所有rancher代理和Kubernetes驱动程序都是最新的。
非常感谢各位的帮助:)
https://stackoverflow.com/questions/44451999
复制相似问题