AWS 云提供商上的 Kubernetes

     2023-03-04     57

关键词:

【中文标题】AWS 云提供商上的 Kubernetes【英文标题】:Kubernetes on AWS cloud provider 【发布时间】:2016-03-31 06:00:48 【问题描述】:

我在 AWS 上安装了 CentOS Atomic Host 作为 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: 

【问题讨论】:

【参考方案1】:
    云提供商为 Kubernetes 提供了哪些功能?

我知道的一些功能:external loadbalancer、persistent volumes。

    如何配置 AWS 云提供商?

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

【讨论】:

感谢您的回答。我测试了外部 LB,但它不起作用。 您是否遵循了 aws 的入门指南? github.com/kubernetes/kubernetes/blob/release-1.1/docs/…。另请参阅github.com/kubernetes/kubernetes/blob/…。如果使用 Type=Loadbalancer 创建服务不会在 AWS 上创建外部负载均衡器,这听起来像是一个错误。正如“幕后”文档中所述,Kubernetes 确实支持 ELB。 你能说更多你的意思是LB不工作吗?执行以下命令时是否显示:kubectl get svc -o yaml 并查看它是否返回 hostname 属性?问题是 AWS 不给 ELB 的 IP 地址,只是主机名。 是的,我阅读了该指南。使用http://www.projectatomic.io 指南创建的集群。 您不必配置云提供商。您可以粘贴您的服务 .yaml 文件吗?另外,您可以粘贴您的 kubernetes 版本(master 和 node)吗? kubctl get version【参考方案2】:

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

最重要的是,控制器 EC2 和工作 EC2 机器必须具有正确的 IAM role,这将使机器能够代表您的账户进行 AWS 调用。这包括诸如配置 ELB 和使用 EBS 卷(或在工作人员的情况下将 EBS 卷附加到自身)之类的事情。没有它,您的云配置体验将一事无成。我很确定 IAM 有效负载是在那些难以阅读的 .go 文件之外的地方定义的,但这是我方便显示所需内容的最快链接。

幸运的是,这个问题的答案,以及我即将谈到的问题,都以apiservercontroller-manager 为中心。它们的配置和它们输出的日志。

apiserver 和controller-manager 都有一个参数指向磁盘上的云配置文件,遗憾的是除了the source 之外的任何地方都没有记录。根据我的经验,Zone 字段是可选的(就像他们在 cmets 中所说的那样)。但是,正是看到 KubernetesClusterTag 导致我在代码中跟踪该字段以查看它的作用。

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

一旦我附加了一个名为KubernetesClusterTag 并将Tag 的每个实例设置为相同的字符串(它可以是任何东西,AFAIK),那么aws_loadbalancer 就能够在 VPC 中找到子网并且它将节点连接到 ELB,一切都很酷——除了关于它的部分,现在只能创建 面向 Internet 的 ELB。 :-(

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

我希望这对你有帮助,也希望对其他人有所帮助,因为一旦 Kubernetes 启动,它绝对是惊人的。

【讨论】:

您好丹尼尔,感谢您的回复。我在 kubernetes repository 中找到了 AWS IAM 角色。 关于原子主机,请查看此文档docs.openshift.org/latest/install_config/…

Kubernetes PVC 与 AWS 上的 ReadWriteMany

】KubernetesPVC与AWS上的ReadWriteMany【英文标题】:KubernetesPVCwithReadWriteManyonAWS【发布时间】:2018-12-1505:03:38【问题描述】:我想在AWS上设置一个PVC,我需要ReadWriteMany作为访问模式。不幸的是,EBS只支持ReadWriteOnce。我该如何解决这个... 查看详情

使用 AWS 和 Kubernetes 提供商的 Terraform 循环

】使用AWS和Kubernetes提供商的Terraform循环【英文标题】:TerraformcyclewithAWSandKubernetesprovider【发布时间】:2020-04-2117:24:09【问题描述】:我的Terraform代码描述了一些用于构建Kubernetes集群的AWS基础设施,包括在集群中的一些部署。当... 查看详情

AWS 上的 Kubernetes Autoscaler 不工作

】AWS上的KubernetesAutoscaler不工作【英文标题】:KubernetesAutoscaleronAWSnotworking【发布时间】:2018-09-2103:15:51【问题描述】:我正在尝试使用AmazonAWS设置Kubernetesautoscaler,如下所述:DOCS但我的cluster-autoscalerpod日志中出现此错误:E041109:... 查看详情

通过 AWS 上的 ELB 在 Kubernetes 上公开单个 Kafka 代理

】通过AWS上的ELB在Kubernetes上公开单个Kafka代理【英文标题】:ExposeindividualKafkabrokersonKubernetesthroughanELBonAWS【发布时间】:2018-07-1001:18:23【问题描述】:我在AWS上运行KOPSKubernetes集群,试图让kubernetes-kafka示例与弹性负载均衡器一起... 查看详情

无法获取我的 kubernetes 主节点的 externalID(即 aws 提供的 instanceId)

】无法获取我的kubernetes主节点的externalID(即aws提供的instanceId)【英文标题】:Can\'tabletogetexternalID(i.einstanceIdprovidedbyaws)ofmykubernetesmasternode【发布时间】:2019-12-3118:22:37【问题描述】:我确实尝试过kubectldescribenodemasterNodeName,它... 查看详情

AWS 中的 Kubernetes 自动缩放

】AWS中的Kubernetes自动缩放【英文标题】:KubernetesAutoscalinginAWS【发布时间】:2021-04-0707:13:31【问题描述】:这可能是一个愚蠢的问题,但我很想知道答案:如果我在AWS(EKS)上运行Kubernetes集群,哪个自动扩展策略将优先?负载均衡... 查看详情

裸机/私有云上的 Kubernetes 存储

】裸机/私有云上的Kubernetes存储【英文标题】:KubernetesStorageonbare-metal/privatecloud【发布时间】:2015-07-0401:50:43【问题描述】:我刚开始在2个私有云服务器上设置2个节点(主从)上的Kubernetes。我已经安装了它,做了基本的配置,... 查看详情

无法从 EC2 上的主节点访问 Kubernetes 服务

】无法从EC2上的主节点访问Kubernetes服务【英文标题】:KubernetesserviceunreachablefrommasternodeonEC2【发布时间】:2018-09-1221:41:25【问题描述】:我使用kubeadm在AWS上创建了一个k8s集群,按照here提供的指南,有1个master和1个worker。然后,... 查看详情

云原生devops:kubernetes编排工具(代码片段)

@TOCKubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。Kubernetes一个核心的特点就是能... 查看详情

允许 Kubernetes 应用程序访问其他 AWS 资源?

】允许Kubernetes应用程序访问其他AWS资源?【英文标题】:AllowkubernetesapplicationtoaccessotherAWSresources?【发布时间】:2019-12-3106:40:36【问题描述】:我想使用kubernetes在AWSEKS中部署应用程序。我的应用程序需要访问SQS和AWSS3。我不确定... 查看详情

物联网将终结公共云

...据引力会影响企业处理数据的方式,从而促使一些云服务提供商重新考虑战略。  无论我们怎样努力,都不可能违背物理定律。我具体指的是数据引力(datagravity)和计算。网络边缘的物联网对IT运营和厂商服务带来了显著的影响... 查看详情

挂载失败:在 Kubernetes 使用 EBS 卷时退出状态 32

】挂载失败:在Kubernetes使用EBS卷时退出状态32【英文标题】:mountfailed:exitstatus32whenuseEBSvolumeatKubernetes【发布时间】:2021-05-1109:16:00【问题描述】:我对AWS上的k8s设置集群有点困惑。我试着使用EBS卷作为持久存储但找不到信息够... 查看详情

云-aws-百科:aws

...亚马逊公司旗下云计算服务平台,为全世界范围内的客户提供云解决方案。AWS面向用户提供包括弹性计算、存储、数据库、应用程序在内的一整套云计算服务,帮助企业降低IT投入成本和维护成本。 亚马逊AWS(AmazonWebServices(A... 查看详情

AWS EKS 集群的 Kubernetes kubelet 日志位于何处?

】AWSEKS集群的Kuberneteskubelet日志位于何处?【英文标题】:WherearetheKuberneteskubeletlogslocatedfortheAWSEKSClusters?【发布时间】:2020-02-2803:23:22【问题描述】:之前有关于自我管理Kubernetes集群的问题位于此处。但它们不涵盖AmazonLinux的用... 查看详情

aws—aws上的5g网络及mec边缘计算商业案例

目录文章目录目录AWS与Verizon推出的PrivateMECAWS与VodafoneBusiness合作推出MEC解决方案AWS、ERICSSON与TelefonicaGermany合作推出公有云化的5G专网AWS与Dish合作推出公有云化的5G专网和5G公网AWS与Swisscom合作推出混合云化的云原生5G核心网AWS与Ver... 查看详情

云原生kubernetes入门详细讲解

目录1、Kubernetes是什么2、Kubernetes不是什么3、Kubernetes架构与分层4、Kubernetes集群架构5、Kubernetes集群组件5.1、K8s在Master上的组件5.2、K8s在Node上的组件6、KubernetesAPI    在云原生技术与生态快速发展的今天,越来越多的IT厂商... 查看详情

AWS 云形成模板 - 为模板中的堆栈提供标签

】AWS云形成模板-为模板中的堆栈提供标签【英文标题】:AWScloudformationTemplate-providingTagsforthestackinthetemplate【发布时间】:2015-02-1506:24:07【问题描述】:我们希望将公司特定标签用于我们在AWS中创建的资源以进行计费。我正在使... 查看详情

这些kubernetes常见安全问题,你遇到过几个?

...布的2020年第一季度安全报告中,列举了在AWSWeb服务部署Kubernetes的组织所遇到的最常见安全问题。 该报告建议已部署Kubernetes的IT组织在使用AWSElasticKubernetesService(EKS)时应解决以下问题:一些EKS负载平衡器的孤立安全组:充... 查看详情