EKS Workshop for Greater China 教程

EKS Workshop for Greater China 教程

eks-workshop-greater-chinaAWS Workshop for Learning EKS for Greater China项目地址:https://gitcode.com/gh_mirrors/ek/eks-workshop-greater-china

项目介绍

EKS Workshop for Greater China 是一个由 AWS 提供的开源项目,旨在帮助中国的开发者学习和使用 Amazon Elastic Kubernetes Service (EKS)。该项目包含了丰富的教程和实践案例,涵盖了从 EKS 集群的创建到应用部署的各个方面。

项目快速启动

环境准备

  1. 安装 AWS CLI

    pip install awscli --upgrade --user
    
  2. 配置 AWS CLI

    aws configure
    
  3. 安装 eksctl

    curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp
    sudo mv /tmp/eksctl /usr/local/bin
    
  4. 安装 kubectl

    curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl"
    chmod +x ./kubectl
    sudo mv ./kubectl /usr/local/bin/kubectl
    

创建 EKS 集群

  1. 创建集群配置文件

    apiVersion: eksctl.io/v1alpha5
    kind: ClusterConfig
    
    metadata:
      name: my-cluster
      region: ap-northeast-1
    
    nodeGroups:
      - name: ng-1
        instanceType: m5.large
        desiredCapacity: 3
    
  2. 使用 eksctl 创建集群

    eksctl create cluster -f cluster.yaml
    

应用案例和最佳实践

部署示例应用

  1. 部署一个简单的 Nginx 应用

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx-deployment
    spec:
      replicas: 3
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          containers:
          - name: nginx
            image: nginx:1.14.2
            ports:
            - containerPort: 80
    
  2. 创建服务

    apiVersion: v1
    kind: Service
    metadata:
      name: nginx-service
    spec:
      selector:
        app: nginx
      ports:
        - protocol: TCP
          port: 80
          targetPort: 80
      type: LoadBalancer
    

使用 ALB Ingress

  1. 部署 ALB Ingress Controller

    kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/aws-alb-ingress-controller/v1.1.4/docs/examples/alb-ingress-controller.yaml
    
  2. 创建 Ingress 资源

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: nginx-ingress
      annotations:
        kubernetes.io/ingress.class: alb
        alb.ingress.kubernetes.io/scheme: internet-facing
    spec:
      rules:
        - host: myapp.example.com
          http:
            paths:
              - path: /
                pathType: Prefix
                backend:
                  service:
                    name: nginx-service
                    port:
                      number: 80
    

典型生态项目

Karpenter

Karpenter 是一个用于 Kubernetes 节点弹性伸缩的开源组件,可以自动管理 EKS 集群中的 EC2 工作节点。

Istio

Istio 是一个服务网格,提供流量管理、安全性和可观测性等功能,可以与 EKS 集群集成,提升应用的可靠性和安全性。

Prometheus & Grafana

Prometheus 是一个开源的监控系统,Grafana 是一个开源的分析和监控平台,两者结合可以为

eks-workshop-greater-chinaAWS Workshop for Learning EKS for Greater China项目地址:https://gitcode.com/gh_mirrors/ek/eks-workshop-greater-china

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

钱桦实Emery

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值