在发布以下json对象(排除变量)后,我遇到了一些外部ip地址的问题:
$json= '{
"kind": "Service",
"apiVersion": "v1",
"metadata": {
"name": ""
},
"spec": {
"ports": [{
"port": 80,
"targetPort": 80
}],
"selector": {
"app": ""
},
"type": "LoadBalancer"
}
}';
Run Code Online (Sandbox Code Playgroud)
该服务已创建,但没有给出外部IP.
由于无法确定问题所在,我继续使用文档(V1 kubernetes/examples/simple-nginx.md)中提供的以下命令安装kubernetes(以及定义为要安装的集群)的干净副本:
curl -sS https://get.k8s.io | bash
Run Code Online (Sandbox Code Playgroud)
这当然会自动设置.然后我运行以下命令来测试LoadBalancer函数是否正常工作:
kubectl run my-nginx --image=nginx --replicas=2 --port=80
Run Code Online (Sandbox Code Playgroud)
跑完后kubectl get pods
确认他们已经准备好了,我暴露了这项服务:
kubectl expose rc my-nginx --port=80 --type=LoadBalancer
Run Code Online (Sandbox Code Playgroud)
然后我跑kubectl get service
了几分钟,没有提供公共IP ..
那不对吗?
编辑
kubectl get services
NAME LABELS SELECTOR IP(S) PORT(S)
kubernetes component=apiserver,provider=kubernetes <none> 10.0.0.1 443/TCP
my-nginx run=my-nginx run=my-nginx 10.0.136.163 80/TCP
kubectl get service my-nginx -o yaml
apiVersion: v1
kind: Service
metadata:
creationTimestamp: 2015-08-11T11:44:02Z
labels:
run: my-nginx
name: my-nginx
namespace: default
resourceVersion: "1795"
selfLink: /api/v1/namespaces/default/services/my-nginx
uid: 434751be-401e-11e5-a219-42010af0da43
spec:
clusterIP: 10.x.xxx.xxx
ports:
- nodePort: 31146
port: 80
protocol: TCP
targetPort: 80
selector:
run: my-nginx
sessionAffinity: None
type: LoadBalancer
status:
loadBalancer: {}
Run Code Online (Sandbox Code Playgroud)
运行后(感谢GameScripting):
kubectl describe service my-nginx
Run Code Online (Sandbox Code Playgroud)
我看到以下错误:
FirstSeen LastSeen Count From SubobjectPath Reason Message
Tue, 11 Aug 2015 14:00:00 +0200 Tue, 11 Aug 2015 14:02:41 +0200 9 {service-controller } creating loadbalancer failed failed to create external load balancer for service default/my-nginx: googleapi: Error 403: Quota 'FORWARDING_RULES' exceeded. Limit: 15.0
Run Code Online (Sandbox Code Playgroud)
手动删除“网络->负载平衡->网络负载平衡”下的转发规则(或者您可以使用gcloud compute forwarding-rules delete
)后,我能够再次获得公共IP。不知何故,转发规则似乎没有被删除并达到了限制。奇怪的是,当我运行时,Kubectl stop service
它为我删除了转发规则。
归档时间: |
|
查看次数: |
2978 次 |
最近记录: |