标签: amazon-eks

AWS EKS节点访问RDS

我让 AWS EKS 节点访问 RDS,其中我已在 RDS 安全组中将 EKS 节点的公共 IP 列入白名单。但这不是可行的解决方案,因为 EKS 节点可能会被替换,并且其公共 IP 可能会随之更改。

如何让该EKS节点与RDS的连接更加稳定?

amazon-rds aws-security-group amazon-eks

2
推荐指数
1
解决办法
9083
查看次数

如何使用预定义的 GitLab CI 变量和流入 GitLab Pipeline 日志的 Tekton 日志直接从 GitLab CI 触发 Tekton Pipeline

我们有一个正在运行的 AWS EKS(使用 Pulumi 设置),我们在其中安装了 Tekton,如云原生 Buildpacks Tekton 文档中所述。示例项目可用

我们的 Tekton 管道配置如下(也源自Cloud Native Buildpacks Tekton 文档):

apiVersion: tekton.dev/v1beta1
kind: Pipeline
metadata:
  name: buildpacks-test-pipeline
spec:
  params:
    - name: IMAGE
      type: string
      description: image URL to push
    - name: SOURCE_URL
      type: string
      description: A git repo url where the source code resides.
    - name: SOURCE_REVISION
      description: The branch, tag or SHA to checkout.
      default: ""
  workspaces:
    - name: source-workspace # Directory where application source is located. …
Run Code Online (Sandbox Code Playgroud)

gitlab gitlab-ci kubernetes amazon-eks tekton

2
推荐指数
1
解决办法
3713
查看次数

InvalidParameterException:不支持指定的插件版本

我已经尝试部署自我管理节点 EKS 集群有一段时间了,但没有成功。我现在遇到的错误是 EKS 插件:

错误:创建 EKS 插件时出错 (DevOpsLabs2b-dev-test--eks:kube-proxy):InvalidParameterException:不支持指定的插件版本,AddonName:“kube-proxy”,ClusterName:“DevOpsLabs2b-dev-test-- eks", Message_: "不支持指定的插件版本" } 在 .terraform/modules/eks-ssp-kubernetes-addons/modules 上使用 module.eks-ssp-kubernetes-addons.module.aws_kube_proxy[0].aws_eks_addon.kube_proxy /kubernetes-addons/aws-kube-proxy/main.tf 第 19 行,在资源“aws_eks_addon”“kube_proxy”中:

coredns 也会重复此错误,但 ebs_csi_driver 会抛出:

错误:创建期间返回意外的 EKS 附加组件 (DevOpsLabs2b-dev-test--eks:aws-ebs-csi-driver) 状态:等待状态变为“ACTIVE”时超时(最后状态:“DEGRADED”,超时: 20m0s) [警告] 再次运行 terraform apply 将删除 kubernetes 插件并尝试再次创建它,有效清除以前的插件配置

我的 main.tf 看起来像这样:

terraform {

  backend "remote" {}

  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = ">= 3.66.0"
    }
    kubernetes = {
      source  = "hashicorp/kubernetes"
      version = ">= 2.7.1"
    }
    helm = {
      source  = "hashicorp/helm"
      version = ">= 2.4.1" …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services kubernetes terraform terraform-provider-aws amazon-eks

2
推荐指数
1
解决办法
5360
查看次数

如何在 kubernetes go-client 中根据标签列出 Pod

我尝试根据标签列出 pod

    // Kubernetes client - package kubernetes
    clientset := kubernetes.NewForConfigOrDie(config)

    // create a temp list for storage 
    var podslice []string

    // Get pods -- package metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
    pods, _ := clientset.CoreV1().Pods("").List(metav1.ListOptions{})
    for _, p := range pods.Items {
        fmt.Println(p.GetName())
    }
Run Code Online (Sandbox Code Playgroud)

这相当于

kubectl get po 
Run Code Online (Sandbox Code Playgroud)

有没有办法进入golang

kubectl get po -l app=foo
Run Code Online (Sandbox Code Playgroud)

提前致谢

go kubernetes google-kubernetes-engine kubernetes-go-client amazon-eks

2
推荐指数
1
解决办法
3733
查看次数

允许在无需身份验证的情况下通过 AWS 内的 VPC 访问 AWS S3 存储桶

有没有办法允许通过AWS中的VPC访问AWS S3存储桶中的对象而无需身份验证?我不想为此使用 AWS IAM 角色或用户。我不想禁用除 VPC 之外的所有对象的访问,因为对象应该通过 AWS 外部的 AWS IAM 角色进行访问。

目的:为在私有节点上的 AWS EKS Kubernetes 集群内运行的 GitLab Runner 提供 AWS S3 存储桶访问权限。

注意:公共访问已被阻止并将继续被阻止。所有对象都是私有的并且将保持私有。

amazon-s3 amazon-web-services amazon-vpc gitlab-ci-runner amazon-eks

2
推荐指数
1
解决办法
675
查看次数

发生内部错误:调用 webhook“mservice.elbv2.k8s.aws”失败

我正在尝试安装一个简单的舵图,我得到:

Internal error occurred: failed calling webhook "mservice.elbv2.k8s.aws": failed to call webhook: the server could not find the requested resource

amazon-web-services kubernetes amazon-eks

2
推荐指数
1
解决办法
9177
查看次数

如果需要CloudFormation,EKS会做什么?

如果需要CloudFormation中的大量配置(又是另一项AWS服务),AWS的Elastic Kubernetes服务(EKS)到底能做什么

我在(https://docs.aws.amazon.com/eks/latest/userguide/eks-ug.pdf)中的文档中遵循了《 AWS EKS入门》,在这里看来,运行EKS 十分需要CloudFormation知识。
我误会了吗?

因此,除了学习Kubernetes .yaml清单定义之外,要在EKS上运行k8,AWS还希望您也学习其CloudFormation .yaml配置清单(都是PascalCase,而不是我可能添加的k8s camelCase)?

我知道EKS会对k8的最新版本和控制平面进行一些管理,并且“默认情况下是安全的”,但除此之外吗?

那么,为什么我不立即使用kops在AWS上运行k8s,并处理稍微过时的k8s版本呢?
还是我应该做EKS + CloudFormation + kops,到那时GKE看起来是一个非常诱人的选择?

更新:
在这一点上,我真的认为EKS在详细搜索了EKS以及它如何如此依赖CloudFormation清单之后,只是CloudFormation的一个薄包装。
GKE可能是对k8令人震惊的受欢迎程度的一种商业回应,总体而言,GKE没有任何实质性支持。
希望这可以帮助节省任何人评估EKS半成品服务的时间。

amazon-web-services kubernetes amazon-eks

1
推荐指数
1
解决办法
852
查看次数

我们如何通过BootstrapArguments将多个标签传递给EKS节点组

我知道我们可以通过kubelet-extra-args创建带有标签的节点组:

--kubelet-extra-args --node-labels=foo=bar
Run Code Online (Sandbox Code Playgroud)

这种语法令我有些惊讶,因此我不确定如何添加多个标签。

kubernetes amazon-eks

1
推荐指数
1
解决办法
299
查看次数

“kubectl”未从我的本地 Windows 工作站连接到 aws EKS 集群

我正在尝试设置 aws EKS 集群并希望从我的本地 Windows 工作站连接该集群。无法连接。这是我做的步骤;

  1. 创建 aws 服务角色(aws 控制台 -> IAM -> 角色 -> 单击“创建角色”-> 选择 AWS 服务角色“EKS”-> 给角色名称“eks-role-1”
  2. 在 IAM 中创建另一个名为“eks”的用户以进行编程访问。这将帮助我从本地 Windows 工作站连接我的 EKS 集群。我添加到其中的策略是“AmazonEKSClusterPolicy”、“AmazonEKSWorkerNodePolicy”、“AmazonEKSServicePolicy”、“AmazonEKS_CNI_Policy”。
  3. 下一个 EKS 集群已使用在 Step#1 中创建的 roleARN 创建。最后在 aws 控制台中创建了 EKS 集群。
  4. 在我的本地 Windows 工作站中,我下载了“kubectl.exe”和“aws-iam-authenticator.exe”,并使用第 2 步中的访问密钥和令牌为用户“eks”进行了“aws 配置”。配置“~/.kube/config”后;我运行下面的命令并得到这样的错误:

Command:kubectl.exe get svc
Run Code Online (Sandbox Code Playgroud)
output:
could not get token: NoCredentialProviders: no valid providers in chain. Deprecated.
        For verbose messaging see aws.Config.CredentialsChainVerboseErrors
could not get token: NoCredentialProviders: no valid providers in chain. Deprecated.
        For verbose messaging see aws.Config.CredentialsChainVerboseErrors …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-eks

1
推荐指数
1
解决办法
5496
查看次数

EKS kube 系统部署 CrashLoopBackOff

我正在尝试将 Kube 状态指标部署到kube-system运行 Kubernetes v1.14 的 EKS 集群 (eks.4) 中的命名空间中。

Kubernetes 连接

provider "kubernetes" {
  host                   = var.cluster.endpoint
  token                  = data.aws_eks_cluster_auth.cluster_auth.token
  cluster_ca_certificate = base64decode(var.cluster.certificate)
  load_config_file       = true
}
Run Code Online (Sandbox Code Playgroud)

部署清单(作为 .tf)

resource "kubernetes_deployment" "kube_state_metrics" {
  metadata {
    name      = "kube-state-metrics"
    namespace = "kube-system"

    labels = {
      k8s-app = "kube-state-metrics"
    }
  }

  spec {
    replicas = 1

    selector {
      match_labels = {
        k8s-app = "kube-state-metrics"
      }
    }

    template {
      metadata {
        labels = {
          k8s-app = "kube-state-metrics"
        }
      }

      spec …
Run Code Online (Sandbox Code Playgroud)

kubernetes terraform amazon-eks

1
推荐指数
1
解决办法
1046
查看次数