gpt4 book ai didi

kubernetes - 如何配置 solace helm chart 以在 kubeadm 集群上使用

转载 作者:行者123 更新时间:2023-12-02 12:32:51 24 4
gpt4 key购买 nike

我们有一个私有(private)的 Kubernetes 集群。我们正在尝试按照这些快速入门说明安装 solace。
https://github.com/SolaceProducts/solace-kubernetes-quickstart

solace helm chart 安装步骤如下:

git clone https://github.com/SolaceProducts/solace-kubernetes-quickstart.git
cd solace-kubernetes-quickstart/solace
../scripts/configure.sh -p admin
helm install . -f values.yaml

默认的 yaml 是从克隆中提取的
https://github.com/SolaceProducts/solace-kubernetes-quickstart/blob/master/solace/values.yaml

安装基本上是成功的。
[root@togo solace]# kubectl get pods
NAME READY STATUS RESTARTS AGE
brawny-walrus-solace-0 1/1 Running 0 41m
[root@togo solace]# kubectl get statefulsets
NAME READY AGE
brawny-walrus-solace 1/1 42m

然而,默认的服务集包括一个负载均衡器和一个挂起的外部 IP
[root@togo solace]# kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
brawny-walrus-solace LoadBalancer 10.101.58.127 <pending> 22:31475/TCP,8080:30940/TCP,55555:30575/TCP,55003:32142/TCP,55443:32096/TCP,943:30133/TCP,80:32276/TCP,443:30643/TCP 43m
brawny-walrus-solace-discovery ClusterIP None <none> 8080/TCP 43m

快速堆栈搜索似乎表明这是因为负载均衡器希望在云内部工作,并带有外部负载均衡器:

kubernetes service external ip pending

此外,其中一个答案建议在使用自定义 kubeadm 集群(这是我们的案例)时使用 Ingress Controller。

https://stackoverflow.com/a/44112285/2025407

Solace 提供了各种示例“values.yaml”.. 虽然乍一看这些并没有建议如何让 solace 在 kubeadm 集群上工作。

https://github.com/SolaceProducts/solace-kubernetes-quickstart/tree/master/solace/values-examples

所以我对 Solace 和/或 Kubernetes 专家的简单问题是……我更新 helm chart 配置文件 (values.yaml) 以公开诸如 solace 管理端口 (8080 - i相信)以一种可访问的方式?

如果 helm chart 不支持此配置(我认为它必须),那么我还可以创建适当的服务或服务来正确公开 solace 资源。但是这不是让我的 solace chart 工作的最佳方式。

提前感谢您对此的任何帮助。

最佳答案

您可以设置service.type NodePort 的参数.

这是一个简单的例子来演示NodePort正在使用。

helm repo add solacecharts https://solaceproducts.github.io/pubsubplus-kubernetes-quickstart/helm-charts
helm install my-release solacecharts/pubsubplus-dev --set service.type=NodePort,storage.persistent=false

按照 helm status my-release 中的说明进行操作找出端口。

例子:
$ echo -e "\nProtocol\tAddress\n"`kubectl get svc --namespace default my-release-pubsubplus-dev -o jsonpath="{range .spec.ports[*]}{.name}\t<NodeIP>:{.nodePort}\n"`

Protocol Address
ssh <NodeIP>:31359
semp <NodeIP>:30522
semptls <NodeIP>:30891
smf <NodeIP>:30019
smfcomp <NodeIP>:32518
smftls <NodeIP>:30791
web <NodeIP>:31568
webtls <NodeIP>:30087
amqp <NodeIP>:32427
mqtt <NodeIP>:32060
rest <NodeIP>:30746

请注意,这只是一个示例,并不适合生产。例如,未使用持久存储,这意味着所有假脱机消息都可能丢失。

引用 https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart有关 Solace Kubernetes 快速入门的更多详细信息。

关于kubernetes - 如何配置 solace helm chart 以在 kubeadm 集群上使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57396609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com