以前我使用扩展/v1beta1
api在Amazon EKS上创建ALB。将EKS升级到v1.19
后,我开始收到警告:
Warning: extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress
所以我开始相应地更新我的入口配置并部署了ALB,但ALB没有在AWS中启动,也没有获得ALB地址。
入口配置--
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: "pub-dev-alb"
namespace: "dev-env"
annotations:
kubernetes.io/ingress.class: "alb"
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/target-type: ip
spec:
rules:
- host: "dev.test.net"
http:
paths:
- pathType: Prefix
path: "/"
backend:
service:
name: "dev-test-tg"
port:
number: 80
节点端口配置--
apiVersion: v1
kind: Service
metadata:
name: "dev-test-tg"
namespace: "dev-env"
spec:
ports:
- port: 80
targetPort: 3001
protocol: TCP
type: NodePort
selector:
app: "dev-test-server"
结果---
使用本文档创建ALB入口控制器。
有人能帮我吗?
即使您使用最新的入口,您的入口也应该可以正常工作。您看到的警告表明新版本的API可用。您不必担心它。
以下是发生此警告的原因,即使您使用apiVersion:networking.k8s.io/v1
:
这正按预期工作。创建入口对象时,可以通过任何版本读取它(服务器处理转换为请求的版本)kubectl get ingress(代码>获取入口)是一个不明确的请求,因为它没有指示需要读取的版本。
当发出不明确的请求时,kubectl将搜索服务器返回的发现文档,以查找包含指定资源的第一个组/版本。
出于兼容性原因,与所有其他api版本相比,扩展v1beta1历来是首选。既然ingress是该组中仅存的资源,并且已被弃用并有GA替代,1.20将降低其优先级,以便kubectl get ingress将从网络中读取。k8s。io/v1,但1.19服务器仍将遵循历史优先级。
如果要读取特定版本,可以限定get请求(如kubectl get ingreses.v1.networking.k8s.io
…)或者可以传入清单文件以请求文件中指定的相同版本(kubectl get-f ing.yaml-o yaml)
您还可以看到类似的问题。
我试图理解API网关和AWS ALB(入口控制器)在EKS集群中的使用。 假设AWS EKS集群中有10个微服务运行在10个豆荚上。EKS集群位于私有VPC中。我可以创建Kubernetes入口,它将创建一个ALB并提供基于规则的路由。ALB将在公共VPC中,我相信,AWS将为ALB分配一个公共ip。我可以将Route53后面的ALB配置为使用域名进行访问。我的理解是,ALB支持多种功能,包括基于
这起作用了 这不是
我们使用Kong api网关作为所有api的单一网关。我们面临着一些api(1500-2000毫秒)的延迟问题。后来当我们检查时,延迟是由于“速率限制”插件而产生的。当我们禁用插件时,延迟会提高,响应与我们直接从IP获得的响应相同(约300毫秒)。我试图设置redis节点来缓存数据库查询,我不确定我们如何配置Kong从redis本身读取。我们正在为Kong使用postgreql。
我创建了一个EKS集群,并部署了一个带有应用程序负载平衡器的NGINX入口控制器。我部署了一个示例应用程序,并将其绑定到我的域名。这是入口文件- 当我打开测试时。美国广播公司。在我的浏览器中,它返回一个404 but测试。美国广播公司。xyz工作正常。我错过什么了吗?我想要测试。美国广播公司。xyz/游戏工作和测试。美国广播公司。xyz返回404。 更新-我按照本教程部署应用程序-https://
我一直在尝试遵循这个网站和其他网站上的食谱,了解如何将log4j2 FileAppender实例添加到使用SLF4J API进行整体日志记录的类中,但我运气不佳。有人能告诉我下面的代码哪里出错了吗? assertTrue语句通过,因此文件由FileAppender创建,但assertEquals失败,因为日志线的长度为零(即日志文件没有内容)。 有什么想法吗?
我想使用的与chrome API,但我遇到了一个问题... 我尝试了以下操作,但chrome API无法将识别为函数,因此我尝试先将保存为变量。。。 但是当我尝试以下操作时,仍然是一个空字符串。我不明白为什么,因为被设置为。我怎样才能解决这个问题? 编辑 我把剧本叫做... 在剧本里我有以下内容... 其中函数只返回一个字符串。它是由我的捕获的,我通过打印到if语句内的控制台来验证它。 我注意到是