一些信息:
Kubernetes(1.5.1)
AWS
1个主节点和1个节点(均为ubuntu 16.04)
k8s通过kubeadm安装
Terraform由我制作
请不要回复使用kube-up,kops或类似的东西.这是关于了解k8s如何在幕后工作.系统中存在太多无法解释的魔法,我想要理解它.
==问题:
在k8s [aws]上创建类型负载均衡器的服务时(例如):
apiVersion: v1 kind: Service metadata: name: kubernetes-dashboard namespace: kube-system labels: k8s-addon: kubernetes-dashboard.addons.k8s.io k8s-app: kubernetes-dashboard kubernetes.io/cluster-service: "true" facing: external spec: type: LoadBalancer selector: k8s-app: kubernetes-dashboard ports: - port: 80
我成功地创建了一个内部或外部ELB,但没有任何机器被添加到ELB(我也可以污染主人,但没有任何变化).我的问题基本上是这样的:
https://github.com/kubernetes/kubernetes/issues/29298#issuecomment-260659722
子网和节点(但不是VPC)都标有"KubernetesCluster"(再次...... elb在正确的位置创建).但是没有添加节点.
在日志中
kubectl logs kube-controller-manager-ip-x-x-x-x -n kube-system
后:
aws_loadbalancer.go:63] Creating load balancer for kube-system/kubernetes-dashboard with name: acd8acca0c7a111e69ca306f22de69ae
没有其他输出(它应该打印添加或删除的节点).我试图理解代码:
https://github.com/kubernetes/kubernetes/blob/master/pkg/cloudprovider/providers/aws/aws_loadbalancer.go 但不管是什么原因,这个函数不添加节点.
文件没有详细说明试图解释k8s决策背后的"过程".为了尝试理解k8s,我尝试/使用kops,kube up,kubeadm,kubernetes艰难的回购和阅读该死的代码,但我仍然无法理解如何在aws上选择k8s节点添加到elb.
因此,也不会在任何地方更改安全组.
它是ec2上的标签吗?Kublet设定?还要别的吗?
任何帮助是极大的赞赏.
谢谢,F.