4

按照此处的说明,我尝试将 Spinnaker 配置为使用 ElastiCache redis 集群,并启用集群模式。

Spinnaker: 1.40.2
Halyard: 0.35
Cloud driver provider: k8s (1.7.4)
Cloud: AWS

我在集群模式下配置了一个 ElastiCache Redis 集群,它有它的配置端点:

redis-spinnaker.1234.clustercfg.use1.cache.amazonaws.com:6379

它有一个节点:

我创建了以下文件:halyard/default/service-settings/redis.yml

overrideBaseUrl: redis://redis-spinnaker.1234.clustercfg.use1.cache.amazonaws.com:6379

我也试过

overrideBaseUrl: redis://redis-spinnaker-0001-001.1234.0001.use1.cache.amazonaws.com:6379

请注意,这两个地址都可以从集群访问。

当我跑步halyard deploy apply时,spin-gate超时

/ Deploy spin-gate
  Timed out

And the whole deploy times out.
Problems in Global:
! ERROR Unexpected exception:
  DaemonTaskInterrupted(interruptedTime=1507614194943, message=Task interrupted at
  Tue Oct 10 05:43:14 UTC 2017 with message: Interrupted during reap by exception:
  null)

- Failed to deploy Spinnaker. Task killed because it was taking too
  long.

在这一点上,我不确定该怎么做才能完成这项工作?

4

4 回答 4

2

我在 elasticache redis 方面取得了一些进展,如下所示:

$ cat .hal/default/service-settings/redis.yml 
overrideBaseUrl: redis://xxx.use1.cache.amazonaws.com:6379

$ cat .hal/default/profiles/gate-local.yml 
redis:
  configuration:
    secure: true

gate-local.yml 更改来自https://github.com/spinnaker/spinnaker/issues/1309#issuecomment-260971228

不是 100% 确定它可以工作,但至少所有的大三角帆服务都启动了,即使我杀死了 halyard 启动的 redis 副本集,它表面上也能正常工作

于 2017-10-14T21:05:26.790 回答
2

以下是针对想要使用外部 redis 的其他人的一组说明(基于我的GH 问题):

# ~/.hal/default/service-settings/redis.yml
enabled: false
overrideBaseUrl: redis://:password@c1.us-central1-2.gce.cloud.redislabs.com:6379

# ~/.hal/default/service-settings/redis-bootstrap.yml
enabled: false
overrideBaseUrl: redis://:password@c1.us-central1-2.gce.cloud.redislabs.com:6379

正如@DavidBlack所说,具体到弹性疼痛,你还需要

# ~/.hal/default/profiles/gate-local.yml 
redis:
  configuration:
    secure: true

通过删除副本集、服务等,或者更简单(取决于您的情况)来遵循这一点: hal deploy clean && hal deploy apply

如果您hal deploy clean,请不要忘记重新应用任何其他配置(例如,如果您设置了外部 IP 到 kubernetes 服务)。

于 2017-10-17T14:49:20.213 回答
1

我无法使大三角帆与集群/复制的 elasticache redis 一起工作,所以我要做的是只使用一个 ElastiCache redis 节点,然后设置 service.redis.hostspinnaker-local.yml适当的 redis 端点并设置redis.configuration.securegate-local.ymltrue

于 2017-10-24T00:20:11.673 回答
0

对于使用 Spinnaker 运算符的任何人,我让 elasticsearch redis 使用以下设置:

  • Redis 版本:5.0.6
  • 启用集群模式:否
  • 传输中加密:是
  • 静态加密:是
  • Redis 身份验证:是的

k8s 密码:redis://:AUTH_TOKEN@master.spinnaker-test.XXX.YYY.cache.amazonaws.com:6379

profiles:
  gate:
    redis:
      configuration:
        secure: true

service-settings:  
  redis:
    overrideBaseUrl: encrypted:k8s!n:spinnaker-secrets!k:redis-url-dev
    skipLifeCycleManagement: true

部署后,您需要手动删除操作员之前创建的 Redis 部署。

于 2021-07-02T13:08:20.873 回答