gpt4 book ai didi

amazon-web-services - AWS中的Kubernetes入口

转载 作者:行者123 更新时间:2023-12-02 12:05:27 25 4
gpt4 key购买 nike

请帮助我处理我的简单应用程序的可访问性。
我用一个应用程序创建了YML:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: myapp-test
spec:
replicas: 2
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: myapp
image: gcr.io/kubernetes-e2e-test-images/echoserver:2.1
ports:
- containerPort: 8080
---
apiVersion: extensions/v1beta1
kind: Service
apiVersion: v1
metadata:
name: myapp-service
spec:
selector:
app: myapp
ports:
- name: http
protocol: TCP
port: 80
targetPort: 8080
type: NodePort
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: nginx-ingress
spec:
rules:
- host: myapp.com
http:
paths:
- path: /
backend:
serviceName: myapp-service
servicePort: 80
- path: /hello
backend:
serviceName: myapp-service
servicePort: 80

然后我通过kops创建了k8s集群,像这样,所有k8s服务都已经兴起,我可以进入主服务器了:
kops create cluster \
--node-count = 2 \
--node-size = t2.micro \
--master-size = t2.micro \
--master-count = 1 \
--zones = us-east-1a \
--name = ${KOPS_CLUSTER_NAME}

最后,我无法在端口80上访问该应用程序,它写道,连接被拒绝!
有人可以告诉我,这是什么问题?上面的yml完全可以使用,但是在minikube环境中(

最佳答案

确实,您已经创建了一个Ingress资源,但我认为您尚未在NGINX Ingress Controller之前为AWS上的本地集群部署。解释了here有关一般的用法。

如果Kubernetes集群的 Kops引导了,情况就更加复杂了,它需要您修改现有集群,以使用专用的kops附加组件kube-ingress-aws-controller,如其github项目页here所述。

以当前形式,只能通过从默认范围(30000-32767)分配的端口上的节点/ AWS实异常(exception)部IP来访问您的应用程序。您可以通过kubectl get svc myapp-service检查当前分配的端口,但这需要首先在防火墙上打开它(默认的入站规则拒绝SSH以外的所有流量)。根据您的部署/服务 list 文件:

NAME            TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
myapp-service NodePort 100.64.187.80 <none> 80:32076/TCP 37m

通过在分配给我的实例的安全组的入站规则中打开端口32076,我现在可以访问NodePort上的应用程序:
curl <node_external_ip>:32076

Hostname: myapp-test-f87bcbd44-8nxpn
Pod Information:
-no pod information available-
Server values:

关于amazon-web-services - AWS中的Kubernetes入口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53840551/

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