我不熟悉Kubernetes和Nginx Ingress工具,现在我正尝试在AWS上使用Nginx Ingress中的VHost托管MySql服务。我创建了一个类似以下内容的文件:
apiVersion: v1
kind: Service
metadata:
name: mysql
labels:
app: mysql
spec:
type: NodePort
ports:
- port: 3306
protocol: TCP
selector:
app: mysql
---
apiVersion: apps/v1beta2
kind: Deployment
metadata:
name: mysql
labels:
app: mysql
spec:
replicas: 1
selector:
matchLabels:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: mysql
image: mysql
imagePullPolicy: IfNotPresent
env:
- name: MYSQL_ROOT_PASSWORD
value: password
ports:
- name: http
containerPort: 3306
protocol: TCP
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: mysql
labels:
app: mysql
annotations:
kubernetes.io/ingress.class: "nginx"
spec:
rules:
- host: mysql.example.com
http:
paths:
- path: /
backend:
serviceName: mysql
servicePort: 3306
我的LoadBalancer(由Nginx Inete创建)端口配置如下所示:
80 (TCP) forwarding to 32078 (TCP)
Stickiness options not available for TCP protocols
443 (TCP) forwarding to 31480 (TCP)
Stickiness options not available for TCP protocols
mysql。实例com指向我的ELB。
我期待这样的东西,从我的本地框我可以连接到MySql,如果尝试这样的东西:
mysql -h mysql.example.com -u root -P 80 -p
这是行不通的。如果我尝试使用LoadBalancer,它会为我创建一个新的ELB,它按预期工作。
我不确定这是否是我想要在这里实现的正确方法。请帮助我,如果有一种方法可以实现同样的使用入口与NodePort。
我使用为数据库集群IP创建的入口中指定的主机名,通过ingress nginx成功访问了托管在Google Kubernetes引擎上的MariaDB/MySQL。
根据文档,只需创建配置映射并在为入口定义的服务中公开端口。
这帮助我了解了如何设置tcp服务配置映射和udp服务配置映射标志。
Kubernetes入口作为一个通用概念并不能解决暴露/路由TCP/UDP服务的问题,如中所述https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/exposing-tcp-udp-services.md如果您想在入口中使用自定义配置映射,那么应该使用自定义配置映射。请记住,它永远不会使用主机名进行路由,因为这是HTTP的一个功能,而不是TCP。
我的公司有一个伪造的CA证书。实例com和一张伪造地图的唱片。实例com连接到我们的负载平衡器的IP 负载平衡器正在将流量转发到我们的Kubernetes群集。 在集群中,我部署了nginx ingress helm图表,在30200处公开了https节点端口 我根据上述证书创建了一个名为test secret的k8s TLS机密。 我部署了一个带有服务“test”的应用程序,并安装了以下入口:
我有一个朋友允许我访问他的kube集群(托管在IBM云上)。 我可以通过IBM云控制台登录 但是,当我试图通过kubectl访问它们时:kubectl get节点 结果显示一条错误消息: 服务器错误(禁止):节点被禁止:用户https://iam.ng.bluemix.net/kubernetes#无法在群集范围内列出节点。 为什么控制台和CLI之间的访问(RBAC)会有所不同?
我是整个Kubernetes社区的新手,目前我正在尝试使用Ingress Nginx来暴露仪表板。我试过几种方法,但我找不到一个很好的解释如何暴露仪表板入口。我现在拥有的只是一个仪表板,可以通过“kubectl port forward”访问。我还安装了Ingress Nginx,控制器正在运行。我应该如何开始为kubernetes仪表板创建入口?
我怎样才能使用入口呢?我尝试使用NodePort和--Target etPort=1001,我在servicePort中添加了80在。 kubectl公开部署测试--Target-port=1001--type=NodePort 我得到了错误 找不到后端-404 我使用的是正确的方法还是需要遵循其他方法?
我在GKE上设置了Istio(Kubernetes入口模式,而不是Istio网关)。但是,我无法使用curl从外部访问 istio ingressgateway LoadBalancer 10.48.11.240 35.222.111.100 15020:30115/TCP,80:31420/TCP,443:32019/TCP,31400:31267/TCP,15029:30180/TCP,150
如果之前已经回答过,我很抱歉,但我对Ingress Nginx正在与服务合作感到有点困惑。 我正在尝试在我的库伯内特斯环境中实现nginx入口。到目前为止,我有一个ingres-nginx-控制器-部署设置,以及默认后端的部署和服务。我仍然需要创建我的实际入口资源、ingres-nginx-控制器-服务和我的后端。 <代码>卷曲 我的问题是这是怎么可能的,我可以在集群之外的浏览器上为我的节点访问端