请通过AWS中的traefik帮助我处理简单的k8s应用程序的可访问性。
我试图在主节点上公开端口30000-32767,在安全组和应用程序是可以从世界上访问的,不想只工作80端口的traefik!当我试图公开主机安全组中的80个端口时,连接被拒绝了,当我尝试在浏览器中访问我的应用程序时,当我删除公开端口时,在浏览器中得到一个错误的连接超时。有什么问题?k8s的所有服务都已启动,在traefik中没有错误。
KOPS:
kops create cluster \
--node-count = 2 \
--networking calico \
--node-size = t2.micro \
--master-size = t2.micro \
--master-count = 1 \
--zones = us-east-1a \
--name = ${KOPS_CLUSTER_NAME}K8S app.yml和traefik.yml:
当我键入myapp.com时,希望在80端口上获得echoserver应用程序的输出。
发布于 2018-12-24 10:23:46
天哪问题是下一个..。我有非法域名,所以我尝试在freenom.com注册一个新的免费合法域名。在域设置中设置亚马逊的NS记录,在R53中创建新域的托管区域,使用别名A记录到负载均衡器的域名,它可以工作!在traefik的服务配置中,还将类型: NodePort更改为: LoadBalancer。
发布于 2018-12-24 08:40:48
您已经使用NodePort服务进行了设置:
kind: Service
apiVersion: v1
metadata:
name: traefik-ingress-service
# namespace: kube-system
spec:
selector:
k8s-app: traefik-ingress-lb
ports:
- protocol: TCP
port: 80
name: web
- protocol: TCP
port: 8080
name: admin
type: NodePort这并不意味着服务代理将监听来自外部世界的PoV的端口80。默认情况下,NodePort服务会随机地自动分配端口。您可能想要做的是使用LoadBalancer服务。查看https://github.com/Ridecell/kubernetes/blob/9e034f4d0fb38e49f808ae0852af74366f630d48/manifests/traefik.yml#L152-L171以获得一个示例。
https://stackoverflow.com/questions/53907731
复制相似问题