CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY 应该如何设置在 Rancher 容器中?
How is CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY supposed to be set in a Rancher container?
我正在处理一个需要用 rancher
CLI 替换 rancher-compose
的项目。同时,我的 Rancher 安装从 1.6.21 (IIRC) 升级到 1.6.27。使用 rancher-compose
时堆栈正确部署。当我使用 rancher
CLI 部署堆栈时,所有负载平衡器容器在其日志中都有类似以下的错误:
6/5/2019 11:08:30 PM time="2019-06-06T03:08:30Z" level=error msg="Failed to initialize Kubernetes controller: KUBERNETES_URL is not set"
6/5/2019 11:08:30 PM 009921c0-3362-45a0-9ae1-3f2f4d06e7fatime="2019-06-06T03:08:30Z" level=info msg="Starting Rancher LB service"
6/5/2019 11:08:30 PM time="2019-06-06T03:08:30Z" level=info msg="Listening on /tmp/log.sock"
6/5/2019 11:08:30 PM time="2019-06-06T03:08:30Z" level=fatal msg="CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY is not set, fail to init of Rancher LB provider"
6/5/2019 11:08:32 PM + METADATA_ADDRESS=169.254.169.250
6/5/2019 11:08:32 PM + curl -s -f http://169.254.169.250/2015-12-19/self/service/uuid
6/5/2019 11:08:32 PM + /usr/bin/update-rancher-ssl
6/5/2019 11:08:32 PM + exec lb-controller --controller rancher --provider haproxy
当我使用 rancher-compose
CLI 时,堆栈启动时没有错误。
我已经尝试搜索与错误相关的任何内容,返回的唯一结果包括 CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY
似乎是旧的错误报告,其中字符串出现在转储输出中。我尝试在 Rancher 网站上搜索该字符串,但收到一条错误消息
Unauthorized access to internal API. Please refer to https://support.google.com/customsearch/answer/4542055
我有一个 API 密钥和一个通过 Rancher GUI 配置的环境 API 密钥。我在 Linux shell 中设置 RANCHER_ACCESS_KEY
和 RANCHER_SECRET_KEY
环境值,依次使用 API 键和环境 API 键.这些都没有用。我还尝试使用 API 键值设置 RANCHER_ACCESS_KEY
和 RANCHER_SECRET_KEY
,并使用环境 API 键设置 CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY
和 CATTLE_ENVIRONMENT_ADMIN_SECRET_KEY
。那也没有用。我还在部署脚本中添加了代码,以将环境文件传递给 CLI up
命令以设置 CATTLE_*
变量,但这不起作用。我还修改了 docker-compose.yml
以添加一个 environment:
列表,但没有效果。
我在哪里可以找到关于 CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY
应该是什么的文档,以及如何设置它以使阻止负载平衡器容器启动的致命错误不再发生?
关于奖励积分,告诉我如何摆脱关于 KUBERNETES_URL
not being set 的错误消息:我们在这个项目中根本没有使用 Kubernetes ,所以我没有知道那个是从哪里来的。
编辑
$ rancher-compose --version
rancher-compose version v0.12.5
$ rancher --version
rancher version v0.6.13
$ docker --version
Docker version 18.09.6, build 481bc77
我还尝试在 Linux shell 中设置一个 RANCHER_ENVIRONMENT
环境变量,一次设置为 1a5
,一次设置为 Default
。这些更改都没有任何区别。
您是否尝试过设置 rancher 环境密钥?
RANCHER_ENVIRONMENT=xxx
您使用的 rancher cli 命令是什么?
kubernetes 错误很常见,我认为 Rancher 在 Cattle 之前检查它。
事实证明,问题是 rancher
CLI 对命令行参数顺序敏感,而 rancher-compose
不是:使用 rancher-compose
,此命令行正常工作:
rancher-compose --file docker-compose.yml --rancher-file rancher-compose.yml up pull
但是,对于 rancher
CLI,命令 必须在文件之前显示:
rancher up pull --file docker-compose.yml --rancher-file rancher-compose.yml
没有记录任何地方,我得到零 我在 Rancher 的 Slack 频道上发布问题时的回复。我能够解决问题的唯一方法是通过两周的试错调试,并且只是凭经验偶然发现解决方案。
我正在处理一个需要用 rancher
CLI 替换 rancher-compose
的项目。同时,我的 Rancher 安装从 1.6.21 (IIRC) 升级到 1.6.27。使用 rancher-compose
时堆栈正确部署。当我使用 rancher
CLI 部署堆栈时,所有负载平衡器容器在其日志中都有类似以下的错误:
6/5/2019 11:08:30 PM time="2019-06-06T03:08:30Z" level=error msg="Failed to initialize Kubernetes controller: KUBERNETES_URL is not set"
6/5/2019 11:08:30 PM 009921c0-3362-45a0-9ae1-3f2f4d06e7fatime="2019-06-06T03:08:30Z" level=info msg="Starting Rancher LB service"
6/5/2019 11:08:30 PM time="2019-06-06T03:08:30Z" level=info msg="Listening on /tmp/log.sock"
6/5/2019 11:08:30 PM time="2019-06-06T03:08:30Z" level=fatal msg="CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY is not set, fail to init of Rancher LB provider"
6/5/2019 11:08:32 PM + METADATA_ADDRESS=169.254.169.250
6/5/2019 11:08:32 PM + curl -s -f http://169.254.169.250/2015-12-19/self/service/uuid
6/5/2019 11:08:32 PM + /usr/bin/update-rancher-ssl
6/5/2019 11:08:32 PM + exec lb-controller --controller rancher --provider haproxy
当我使用 rancher-compose
CLI 时,堆栈启动时没有错误。
我已经尝试搜索与错误相关的任何内容,返回的唯一结果包括 CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY
似乎是旧的错误报告,其中字符串出现在转储输出中。我尝试在 Rancher 网站上搜索该字符串,但收到一条错误消息
Unauthorized access to internal API. Please refer to https://support.google.com/customsearch/answer/4542055
我有一个 API 密钥和一个通过 Rancher GUI 配置的环境 API 密钥。我在 Linux shell 中设置 RANCHER_ACCESS_KEY
和 RANCHER_SECRET_KEY
环境值,依次使用 API 键和环境 API 键.这些都没有用。我还尝试使用 API 键值设置 RANCHER_ACCESS_KEY
和 RANCHER_SECRET_KEY
,并使用环境 API 键设置 CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY
和 CATTLE_ENVIRONMENT_ADMIN_SECRET_KEY
。那也没有用。我还在部署脚本中添加了代码,以将环境文件传递给 CLI up
命令以设置 CATTLE_*
变量,但这不起作用。我还修改了 docker-compose.yml
以添加一个 environment:
列表,但没有效果。
我在哪里可以找到关于 CATTLE_ENVIRONMENT_ADMIN_ACCESS_KEY
应该是什么的文档,以及如何设置它以使阻止负载平衡器容器启动的致命错误不再发生?
关于奖励积分,告诉我如何摆脱关于 KUBERNETES_URL
not being set 的错误消息:我们在这个项目中根本没有使用 Kubernetes ,所以我没有知道那个是从哪里来的。
编辑
$ rancher-compose --version
rancher-compose version v0.12.5
$ rancher --version
rancher version v0.6.13
$ docker --version
Docker version 18.09.6, build 481bc77
我还尝试在 Linux shell 中设置一个 RANCHER_ENVIRONMENT
环境变量,一次设置为 1a5
,一次设置为 Default
。这些更改都没有任何区别。
您是否尝试过设置 rancher 环境密钥?
RANCHER_ENVIRONMENT=xxx
您使用的 rancher cli 命令是什么?
kubernetes 错误很常见,我认为 Rancher 在 Cattle 之前检查它。
事实证明,问题是 rancher
CLI 对命令行参数顺序敏感,而 rancher-compose
不是:使用 rancher-compose
,此命令行正常工作:
rancher-compose --file docker-compose.yml --rancher-file rancher-compose.yml up pull
但是,对于 rancher
CLI,命令 必须在文件之前显示:
rancher up pull --file docker-compose.yml --rancher-file rancher-compose.yml
没有记录任何地方,我得到零 我在 Rancher 的 Slack 频道上发布问题时的回复。我能够解决问题的唯一方法是通过两周的试错调试,并且只是凭经验偶然发现解决方案。