Amazon web services AWS Kubernetes暴露服务超时错误
我试图通过浏览器访问公开的Amazon web services AWS Kubernetes暴露服务超时错误,amazon-web-services,amazon-ec2,kubernetes,gcloud,Amazon Web Services,Amazon Ec2,Kubernetes,Gcloud,我试图通过浏览器访问公开的kubernetes服务时遇到问题。下面是我的环境 创建了两个ubuntuEC2实例(安全组中的所有端口都打开),并安装了所有与kubernetes相关的工具,如kubectl、kubeadm、docker、calico network 创建了nginxpod,将其缩放为3,并使用LoadBalancer类型将其公开。当我从主节点或工作节点卷曲到公开的nginx时,它可以正常工作(使用公共或私有ip)。但如果我从外面卷曲,它就不起作用了。请求超时。我试图删除服务,并用N
kubernetes
服务时遇到问题。下面是我的环境
创建了两个ubuntu
EC2实例(安全组中的所有端口都打开),并安装了所有与kubernetes相关的工具,如kubectl、kubeadm、docker、calico network
创建了nginx
pod,将其缩放为3,并使用LoadBalancer类型将其公开。当我从主节点或工作节点卷曲到公开的nginx时,它可以正常工作(使用公共或私有ip)。但如果我从外面卷曲,它就不起作用了。请求超时。我试图删除服务,并用NodePort再次公开它。但我仍然无法从外面进入。我确保安全组允许进入。有没有办法调试为什么不能从外部访问它或者我遗漏了什么
我运行的不是cloud controller manager
,而是kube controller manager
。这会成为一个问题吗
下面是所有kubernetes组件的输出
ubuntu@ip-172-31-29-98:~$ kubectl get all --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
default pod/nginx-6f858d4d45-2wtlh 1/1 Running 0 51m
default pod/nginx-6f858d4d45-5dkws 1/1 Running 0 51m
default pod/nginx-6f858d4d45-h9cwg 1/1 Running 0 51m
kube-system pod/calico-etcd-82xkv 1/1 Running 1 18h
kube-system pod/calico-kube-controllers-74b888b647-prr2q 1/1 Running 1 18h
kube-system pod/calico-node-kbckk 2/2 Running 4 17h
kube-system pod/calico-node-n5zhr 2/2 Running 3 18h
kube-system pod/coredns-78fcdf6894-qjhlq 1/1 Running 1 18h
kube-system pod/coredns-78fcdf6894-sm7c9 1/1 Running 1 18h
kube-system pod/etcd-ip-172-31-29-98 1/1 Running 1 18h
kube-system pod/kube-apiserver-ip-172-31-29-98 1/1 Running 1 18h
kube-system pod/kube-controller-manager-ip-172-31-29-98 1/1 Running 1 18h
kube-system pod/kube-proxy-jxg88 1/1 Running 1 18h
kube-system pod/kube-proxy-knx59 1/1 Running 1 17h
kube-system pod/kube-scheduler-ip-172-31-29-98 1/1 Running 1 18h
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 18h
default service/nginx LoadBalancer 10.99.144.149 <pending> 80:31808/TCP 45m
kube-system service/calico-etcd ClusterIP 10.96.232.136 <none> 6666/TCP 18h
kube-system service/kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP 18h
NAMESPACE NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
kube-system daemonset.apps/calico-etcd 1 1 1 1 1 node-role.kubernetes.io/master= 18h
kube-system daemonset.apps/calico-node 2 2 2 2 2 <none> 18h
kube-system daemonset.apps/kube-proxy 2 2 2 2 2 beta.kubernetes.io/arch=amd64 18h
NAMESPACE NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
default deployment.apps/nginx 3 3 3 3 51m
kube-system deployment.apps/calico-kube-controllers 1 1 1 1 18h
kube-system deployment.apps/calico-policy-controller 0 0 0 0 18h
kube-system deployment.apps/coredns 2 2 2 2 18h
NAMESPACE NAME DESIRED CURRENT READY AGE
default replicaset.apps/nginx-6f858d4d45 3 3 3 51m
kube-system replicaset.apps/calico-kube-controllers-74b888b647 1 1 1 18h
kube-system replicaset.apps/calico-policy-controller-55b469c8fd 0 0 0 18h
kube-system replicaset.apps/coredns-78fcdf6894 2 2 2 18h
ubuntu@ip-172-31-29-98:~$kubectl获取全部--所有名称空间
名称空间名称就绪状态重新启动
默认pod/nginx-6f858d4d45-2wtlh 1/1运行0 51m
默认pod/nginx-6f858d4d45-5dkws 1/1运行0 51m
默认pod/nginx-6f858d4d45-h9cwg 1/1运行0 51m
kube系统pod/calico-etcd-82xkv 1/1运行18小时
kube系统吊舱/印花布-kube-控制器-74b888b647-prr2q 1/1运行18小时
kube系统吊舱/印花布节点kbckk 2/2运行4 17h
kube系统吊舱/印花布节点-n5zhr 2/2运行3 18小时
kube系统吊舱/coredns-78fcdf6894-qjhlq 1/1运行18小时
kube系统吊舱/coredns-78fcdf6894-sm7c9 1/1运行18小时
kube系统吊舱/etcd-ip-172-31-29-98 1/1运行18小时
kube系统吊舱/kube-apiserver-ip-172-31-29-98 1/1运行18小时
kube系统吊舱/kube-controller-manager-ip-172-31-29-98 1/1运行18小时
kube系统吊舱/kube-proxy-jxg88 1/1运行18小时
kube系统吊舱/kube-proxy-knx59 1/1运行17h
kube系统吊舱/kube-scheduler-ip-172-31-29-98 1/1运行18小时
命名空间名称类型CLUSTER-IP EXTERNAL-IP端口年龄
默认服务/kubernetes ClusterIP 10.96.0.1 443/TCP 18h
默认服务/nginx LoadBalancer 10.99.144.149 80:31808/TCP 45m
kube系统服务/calico etcd ClusterIP 10.96.232.136 6666/TCP 18h
kube系统服务/kube dns群集IP 10.96.0.10 53/UDP,53/TCP 18h
名称空间名称所需的当前就绪最新可用节点选择器年龄
kube system daemonset.apps/calico-etcd 1节点角色。kubernetes.io/master=18h
kube system daemonset.apps/calico-node 2 18h
kube system daemonset.apps/kube-proxy 2 beta.kubernetes.io/arch=amd64 18h
名称空间名称所需的当前最新可用年龄
默认部署.apps/nginx 3 51m
kube system deployment.apps/calico-kube-controllers 1 18h
kube system deployment.apps/calico-policy-controller 0 18h
kube system deployment.apps/coredns 2 18h
名称空间名称所需的当前就绪时间
默认replicaset.apps/nginx-6F858D45453 51m
kube system replicaset.apps/calico-kube-controllers-74b888b647 1 18h
kube system replicaset.apps/calico-policy-controller-55b469c8fd 0 0 18h
kube system replicaset.apps/coredns-78fcdf6894 2 18h
编辑1:
尝试在GCloud
中执行相同操作。在GCloud
中也一样。可以通过节点内的私有/公共ip访问nginx
服务。但当我从外面卷曲时,它就不起作用了。我在其中一个节点中启动了一个简单的python服务器,并且可以从外部访问python服务器。但是只有通过kubernetes
公开的服务不能从外部访问
我想我对kubernetes的网络(尤其是在云端)缺乏一些基本的了解。我能从专家那里得到帮助吗?您是如何创建集群的<代码>kubeadm?您的群集需要一些自定义配置才能与AWS一起运行。例如,您的
kube控制器管理器
和kube-apiserver
需要具有选项--cloud provider=aws
。你所有的库贝莱也一样
如果您不想处理此问题,我建议使用。我网络上的internet防火墙阻止了对特定端口的访问。云提供商防火墙或实例防火墙没有问题。也看到了类似的问题。但是没有回答。谢谢Rico。我想自己学习
kubernetes
集群设置,而不是把它留给