Kubernetes 服务外部 IP 地址在 IBM Cloud(之前称为 Bluemix)中仍然处于待定状态
Kubernetes service external IP address remains pending with IBM Cloud (earlier called as Bluemix)
我正在关注从 Kubernetes in Action 到 运行 kubernetes 中的一个简单 docker 图像的示例:
$ bx login --apikey @apiKey.json -a https://api.eu-de.bluemix.net
$ bx cs cluster-config my_kubernetes
$ export KUBECONFIG=..my_kubernetes.yml
接下来,运行容器:
$ kubectl run kubia --image=luksa/kubia --port=8080 --generator=run/v1
$ kubectl expose rc kubia --type=LoadBalancer --name kubia-http
$ kubectl get service
$ kubectl get svc
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes 10.10.10.1 <none> 443/TCP 20h
kubia-http 10.10.10.12 <pending> 8080:32373/TCP 0m
十五分钟后...
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes 10.10.10.1 <none> 443/TCP 20h
kubia-http 10.10.10.12 <pending> 8080:32373/TCP 15m
我在 Kubernetes 集群上没有其他东西 运行ning。
运行以下判断是否有失败事件
kubectl describe svc kubia-http
这里关闭线程,LoadBalancer 不能在精简(也称为免费)集群层中使用。可以在此处找到精简集群和标准集群之间的差异 - https://console.bluemix.net/docs/containers/cs_planning.html#cs_planning。
感谢 Chris Rosen 的 ,我找到了解决方法:
$ bx cs workers my_kubernetes
OK
ID Public IP Private IP Machine Type State Status
kube-par01-xxxxx 1.2.3.4 6.7.8.9 free normal Ready
记下 Public IP 地址:1.2.3.4
使用 NodePort 公开服务:
$ kubectl expose rc kubia --type=NodePort --name kubia-http2
检查 NodePort 详细信息:
$ kubectl get svc
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes 10.10.10.1 <none> 443/TCP 21h
kubia-http2 10.10.10.193 <nodes> 8080:31247/TCP 10s
使用worker上的暴露端口访问服务Public IP地址:
$ curl http://1.2.3.4:31247/
You've hit kubia-bjb59
根据上面的帖子,我正在执行以下步骤:
先决条件:在IBM Cloud中创建一个免费的Kubernetes集群并按照步骤操作(您需要先安装ibmcloud和kubectl并连接到远程集群)
kubectl get nodes
应该return像这样
NAME STATUS ROLES AGE VERSION
10.76.197.55 Ready <none> 4h18m v1.18.10+IKS
然后,
- kubectl apply -f https://k8s.io/examples/controllers/replication.yaml
replicationcontroller/nginx created
- kubectl 公开 rc nginx --type=NodePort
service/nginx exposed
kubectl 获取 svc
姓名类型CLUSTER-IPEXTERNAL-IP端口(S)年龄
nginx 节点端口 172.21.19.73 80:30634/TCP 70s
记下端口,在我的例子中是 30634
kubectl describe nodes |grep ExternalIP(找出外部IP)
致电IP:port
玩得开心!
我正在关注从 Kubernetes in Action 到 运行 kubernetes 中的一个简单 docker 图像的示例:
$ bx login --apikey @apiKey.json -a https://api.eu-de.bluemix.net
$ bx cs cluster-config my_kubernetes
$ export KUBECONFIG=..my_kubernetes.yml
接下来,运行容器:
$ kubectl run kubia --image=luksa/kubia --port=8080 --generator=run/v1
$ kubectl expose rc kubia --type=LoadBalancer --name kubia-http
$ kubectl get service
$ kubectl get svc
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes 10.10.10.1 <none> 443/TCP 20h
kubia-http 10.10.10.12 <pending> 8080:32373/TCP 0m
十五分钟后...
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes 10.10.10.1 <none> 443/TCP 20h
kubia-http 10.10.10.12 <pending> 8080:32373/TCP 15m
我在 Kubernetes 集群上没有其他东西 运行ning。
运行以下判断是否有失败事件
kubectl describe svc kubia-http
这里关闭线程,LoadBalancer 不能在精简(也称为免费)集群层中使用。可以在此处找到精简集群和标准集群之间的差异 - https://console.bluemix.net/docs/containers/cs_planning.html#cs_planning。
感谢 Chris Rosen 的
$ bx cs workers my_kubernetes
OK
ID Public IP Private IP Machine Type State Status
kube-par01-xxxxx 1.2.3.4 6.7.8.9 free normal Ready
记下 Public IP 地址:1.2.3.4
使用 NodePort 公开服务:
$ kubectl expose rc kubia --type=NodePort --name kubia-http2
检查 NodePort 详细信息:
$ kubectl get svc
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes 10.10.10.1 <none> 443/TCP 21h
kubia-http2 10.10.10.193 <nodes> 8080:31247/TCP 10s
使用worker上的暴露端口访问服务Public IP地址:
$ curl http://1.2.3.4:31247/
You've hit kubia-bjb59
根据上面的帖子,我正在执行以下步骤:
先决条件:在IBM Cloud中创建一个免费的Kubernetes集群并按照步骤操作(您需要先安装ibmcloud和kubectl并连接到远程集群)
kubectl get nodes
应该return像这样
NAME STATUS ROLES AGE VERSION
10.76.197.55 Ready <none> 4h18m v1.18.10+IKS
然后,
- kubectl apply -f https://k8s.io/examples/controllers/replication.yaml
replicationcontroller/nginx created
- kubectl 公开 rc nginx --type=NodePort
service/nginx exposed
kubectl 获取 svc
姓名类型CLUSTER-IPEXTERNAL-IP端口(S)年龄
nginx 节点端口 172.21.19.73 80:30634/TCP 70s
记下端口,在我的例子中是 30634
kubectl describe nodes |grep ExternalIP(找出外部IP)
致电IP:port
玩得开心!