我如何连接到kubernetes上的botfront?
我尝试在EKS上部署,我的config.yaml遵循建议的格式:我如何连接到kubernetes上的botfront?,kubernetes,rasa,Kubernetes,Rasa,我尝试在EKS上部署,我的config.yaml遵循建议的格式: botfront: app: # The complete external host of the Botfront application (eg. botfront.yoursite.com). It must be set even if running on a private or local DNS (it populates the ROOT_URL). host: botfron
botfront:
app:
# The complete external host of the Botfront application (eg. botfront.yoursite.com). It must be set even if running on a private or local DNS (it populates the ROOT_URL).
host: botfront.yoursite.com
mongodb:
enabled: true # disable to use an external mongoDB host
# Username of the MongoDB user that will have read-write access to the Botfront database. This is not the root user
mongodbUsername: username
# Password of the MongoDB user that will have read-write access to the Botfront database. This is not the root user
mongodbPassword: password
# MongoDB root password
mongodbRootPassword: rootpassword
我运行了这个命令:
helm install -f config.yaml -n botfront --namespace botfront botfront/botfront
而且部署似乎成功,所有POD都列为正在运行
但是botfront.yoursite.com没有任何用处。我检查了入口,它匹配,但没有外部ip地址或任何东西。一旦部署在kubernetes上,我不知道如何实际访问我的botfront站点
我错过了什么
编辑:
安装nginx lb后,kubectl立即进入-n botfront
返回:
如果您运行
kubectl get svc-n botfront
,它将显示所有公开您的botfront的服务
$ kubectl get svc -n botfront
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
botfront-api-service NodePort 10.3.252.32 <none> 80:32077/TCP 63s
botfront-app-service NodePort 10.3.249.247 <none> 80:31201/TCP 63s
botfront-duckling-service NodePort 10.3.248.75 <none> 80:31209/TCP 63s
botfront-mongodb-service NodePort 10.3.252.26 <none> 27017:31939/TCP 64s
如果通过以下方式检索其yaml定义:
$ kubectl get ingresses -n botfront -o yaml
您将看到它使用了以下注释:
kubernetes.io/ingress.class: nginx
这意味着您需要在EKS群集上安装。这可能是它失败的原因之一。正如您在我的示例中所看到的,这个入口没有获得任何外部IP。这是因为我的GKE集群上没有安装nginx-ingres。不确定EKS的情况,但据我所知,它没有预装nginx ingress
还有一件事:我假设您在config.yaml
中输入了一些您注册的真实域名,而不是botfront.yoursite.com
。假设您的域是yoursite.com
,并且您成功地创建了子域botfront.yoursite.com
,您应该将其重定向到负载平衡器的IP(您的入口使用的IP
)
如果运行kubectl get ingress-n botfront
但地址为空,则可能没有安装nginx ingres,并且无法创建底层负载平衡器。如果这里有一些外部IP地址,然后将您注册的域重定向到此地址。@Stephan这样做了吗?我用kubectl apply-f安装了ingress nginxhttps://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.43.0/deploy/static/provider/aws/deploy.yaml
但我仍然无法访问botfront.yoursite.com此命令:kubectl get entreses-n botfront
显示入口:botfront应用程序入口botfront.cream.com a182b0b24e4fb4a0f8bd630b440e5fa-423aebd224ce20ac.elb.us-east-2.amazonaws.com 80 24m
但入口进入404。您是否通过域botfront.cream.com
访问它?我没有看到为它配置的任何记录。入口IP呢?据我所知,kubectl get ingresses-n botfront
没有显示任何外部IP。还是这样吗?kubectl get svc-n botfront怎么样。请通过编辑您的问题添加这些输出。这将比你在评论中发布它们时更容易看到。对此我很抱歉。编辑了我原来的帖子。
$ kubectl get ingresses -n botfront
NAME HOSTS ADDRESS PORTS AGE
botfront-app-ingress botfront.yoursite.com 80 70m
$ kubectl get ingresses -n botfront -o yaml
kubernetes.io/ingress.class: nginx