繁体   English   中英

AWS云提供商上的Kubernetes

[英]Kubernetes on AWS cloud provider

我安装了CentOS Atomic Host作为AWS上kubernetes的操作系统。

一切都很好,但似乎我错过了一些东西。

我没有配置云提供商,也找不到任何相关文档。

在这个问题中,我想知道:1。云提供商为kubernetes提供了哪些功能? 2.如何配置AWS云提供商?

UPD 1 :外部负载平衡器不起作用; 我还没有测试过awsElasticBlockStore ,但我也怀疑它不起作用。

UPD 2 :服务细节:

$ kubectl get svc nginx-service-aws-lb -o yaml
apiVersion: v1
kind: Service
metadata:
  creationTimestamp: 2016-01-02T09:51:40Z
  name: nginx-service-aws-lb
  namespace: default
  resourceVersion: "74153"
  selfLink: /api/v1/namespaces/default/services/nginx-service-aws-lb
  uid: 6c28b718-b136-11e5-9bda-06c2feb29b0d
spec:
  clusterIP: 10.254.172.185
  ports:
  - name: http-proxy-protocol
    nodePort: 31385
    port: 8080
    protocol: TCP
    targetPort: 8080
  - name: https-proxy-protocol
    nodePort: 31370
    port: 8443
    protocol: TCP
    targetPort: 8443
  selector:
    app: nginx
  sessionAffinity: None
  type: LoadBalancer
status:
  loadBalancer: {}

我不能说ProjectAtomic位,也不能说KUBERNETES_PROVIDER env-var,因为我的经验是使用CoreOS配置器。 我将谈谈我的经历,看看这是否有助于您进一步深入了解您的设置。

最重要的是,控制器EC2和工作人员EC2机器必须具有正确的IAM角色 ,这将使机器能够代表您的帐户进行AWS呼叫。 这包括配置ELB和使用EBS卷(或者在工作人员的情况下为自己附加EBS卷)之类的事情。 没有它,您的云配置体验将无处可去。 我很确定IAM有效负载是在除了那些难以阅读的.go文件之外的地方定义的,但这是我用来展示所需内容的最快的链接。

幸运的是,这个问题的答案,以及我将要讨论的问题,都围绕着apiservercontroller-manager 它们的配置和它们输出的日志。

apiservercontroller-manager都有一个参数指向磁盘上的云配置文件,遗憾的是除了之外没有记录。 根据我的经验, Zone区域是可选的(就像他们在评论中所说的那样)。 然而,它看到KubernetesClusterTag导致我在代码中关注该字段以查看它的作用。

如果您的体验与我的相似,您会在controller-manager的docker日志中看到一堆关于它如何创建ELB但无法找到附加到其上的子网的错误消息; (当然,“docker logs”位假定ProjectAtomic也使用docker来运行Kubernetes守护进程)。

一旦接上一个Tag名为KubernetesCluster和设置的每个实例Tag相同的字符串(它可以是任何东西,据我所知),则aws_loadbalancer能够找到在VPC子网,它连接的节点到ELB,一切都酷 - 除了关于它的部分,现在只能创建面向互联网的 ELB。 :-(

为了清楚起见: aws.cfg包含一个名为KubernetesClusterTag的字段,允许您重新定义 Kubernetes将要查找的Tag ; 在该文件中没有任何价值,Kuberenetes将使用Tag名称KubernetesCluster

我希望这对你有所帮助,我希望它可以帮助别人,因为一旦Kubernetes上场,这绝对是惊人的。

  1. 云提供商为kubernetes提供了哪些功能?

我知道的一些功能: 外部负载均衡器持久性卷

  1. 如何配置AWS云提供商?

有一个名为KUBERNETES_PROVIDER的环境KUBERNETES_PROVIDER ,但似乎env var仅在人们启动k8s集群时才有意义。 既然你说“一切正常”,我你不需要任何进一步的配置来使用我上面提到的功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM