1

我想将 spinnaker 部署到我们公司的 kubernetes 集群中。我已经克隆了 spinnaker 的 master 分支并相应地修改了 spinnaker-local 文件。我们使用内部 docker 注册表,因此我将所需的镜像从 dockerhub 复制到我们自己的镜像中。

当我启动“startup-all.sh”脚本时,redis 映像似乎启动了。然后它尝试启动 cassandra 数据库。创建作业“data-cassandra-keys”未完成。它一遍又一遍地创建新的豆荚。

我尝试使用以下方法获取一些日志:

c:\spinnaker\experimental\kubernetes>kubectl log data-cassandra-keys-w4yil
W0601 16:20:02.457396   10336 cmd.go:207] log is DEPRECATED and will be removed in a future version. Use logs instead.
Connecting to...
172.23.77.106
9042
Connection error: ('Unable to connect to any servers', {'172.23.77.106': error(None, "Tried connecting to [('172.23.77.106', 9042)]. Last error: timed out")})
Failed to add keyspace create_echo_keyspace.cql

有几十个 data-cassandra-keys-xxxxx - 都显示相同,并且 kubernetes 不断创建新的。

启动脚本停留在:

SUCCESS=$(kubectl get job data-cassandra-keys --namespace=spinnaker -o=jsonpath="{.status.succeeded}")

while [ $SUCCESS -ne "1" ]; do
    SUCCESS=$(kubectl get job data-cassandra-keys --namespace=spinnaker -o=jsonpath="{.status.succeeded}")
done

我不知道我必须更改什么设置才能使这项工作(cassandra 如何知道要连接的主机)。我也不太明白为什么一遍又一遍地重新创建“data-cassandra-keys”作业。

活动内容丰富:

6m        6m        1         data-cassandra-keys-sxp3o   Pod                                         Normal    Scheduled          {default-scheduler }           Successfully assigned data-cassandra-keys-sxp3o to ld9c0193.corp.test
6m        6m        1         data-cassandra-keys-sxp3o   Pod       spec.containers{cassandra-keys}   Normal    Pulled             {kubelet ld9c0193.corp.test}   Container image "docker-registry.corp.ch/kubernetes-spinnaker/cassandra-keys:v2" already present on machine
6m        6m        1         data-cassandra-keys-sxp3o   Pod       spec.containers{cassandra-keys}   Normal    Created            {kubelet ld9c0193.corp.test}   Created container with docker id 46de7bd5f425
6m        6m        1         data-cassandra-keys-sxp3o   Pod       spec.containers{cassandra-keys}   Normal    Started            {kubelet ld9c0193.corp.test}   Started container with docker id 46de7bd5f425

任何关于正在发生的事情或在哪里看的提示都表示赞赏:)

谢谢!

4

1 回答 1

1

“data-cassandra-keys” pod 由 Kubernetes 作业控制器重新创建,但可能应该更改其重启策略以避免创建太多死 pod。它会重试一段时间,因为 Cassandra 可能需要一段时间才能启动,因此在第一次尝试创建密钥空间后不应失败。

一个已知问题是,由于权限问题,Cassandra 在配置为使用永久性磁盘时无法正确启动。你检查过 Cassandra pod 的日志吗?数据-cassandra-v000-xxxx

于 2016-06-01T16:35:16.880 回答