暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【实战一】AWS EKS和ECR进行Kubernetes应用程序部署

AWS Azure技术分享 2021-06-04
907

EKS环境的搭建是学习的基础,包括AWS CLI、Kubectl和eksctl等,本文将主要介绍EKS环境的搭建,同时我们也会演示如何通过启动模板部署EKS 集群和计算节点。

一、先决条件

安装和配置创建和管理 Amazon EKS 集群所需的以下工具和资源。

  • AWS CLI  - AWS服务的命令行工具


  • kubectl -  Kubernetes 集群的命令行工具

  • Dokcer - 容器引擎

  • EKSctl - 操作EKS集群的命令行工具


二、Linux安装AWS CLI

  1. 如果您当前已安装 AWS CLI,请确定您已安装的版本。

     aws --version
  2. 如果您没有安装版本 1.18.163 或更高版本或版本 2.0.59 或更高版本,请安装 AWS CLI 版本 2。

     curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
     unzip awscliv2.zip
     sudo ./aws/install

    如果无法使用 AWS CLI 版本 2,请确保使用以下命令安装了 AWS CLI 版本 1 的最新版本。

     pip3 install --upgrade --user awscli
  3. 配置 AWS CLI 凭证

AWS CLI 要求您在环境中配置了 AWS 凭证。aws configure
命令是设置 安装以供一般使用的最快方法。

 $ aws configure
 AWS Access Key ID [None]: <AKIAIOSFODNN7EXAMPLE>
 AWS Secret Access Key [None]: <wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY>
 Default region name [None]: cn-north-1
 Default output format [None]: <json>

键入此命令时,AWS CLI 会提示您输入四条信息: access key
secret access key
AWS Region
output format
。此信息存储在名为 default
的配置文件(一个设置集合)中。除非您指定另一个命令,否则将在运行命令时使用此配置文件。

三、安装和配置 kubectl

Kubernetes 使用 kubectl
命令行程序来与集群 API 服务器进行通信。

# curl -o kubectl https://amazon-eks.s3.cn-north-1.amazonaws.com.cn/1.18.8/2020-09-18/bin/linux/amd64/kubectl
# chmod +x ./kubectl
# sudo mv ./kubectl /usr/local/bin
# echo 'export PATH=$PATH:$HOME/bin' >> ~/.bash_profile
# kubectl version --short --client

四、安装Dokcer容器引擎

# yum install -y yum-utils
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# yum install docker-ce docker-ce-cli containerd.io
# systemctl enable docker
# systemctl start docker

五、安装EKS CTL

eksctl 是一个简单的 CLI 工具,用于在 EKS 上创建集群 - 亚马逊针对 EC2 的新托管 Kubernetes 服务。它是用 Go 编写的,并使用 CloudFormation。

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

六、基于启动模板创建一个Demo集群和计算节点

创建名为 demo-eks-cluster-node-group.yaml的文件,如果未指定版本,则使用模板的默认版本。

 apiVersion: eksctl.io/v1alpha5
 kind: ClusterConfig
 
 metadata:
  name: EKS-course-cluster
  region: cn-north-1
 
 nodeGroups:
  - name: nodegroup-1
    instanceType: t2.small
    desiredCapacity: 1
    ssh: # use existing EC2 key
      publicKeyName: eks-course-demo

使用以下命令创建集群和节点组。

 eksctl create cluster --config-file demo-eks-cluster-node-group.yaml

如果看到如下输出,证明部署成功。

 [✓]  EKS cluster "EKS-course-cluster" in "<cn-north-1>" region is ready



● 十分钟掌握AWS定时开关机,你Get到了吗?

 特定 IP 访问我的 S3 存储桶,一招就够了

● 三种方式教你如何删除Azure闲置的托管磁盘

 EKS学习 - Amazon EKS 基础知识

● Automation实现Azure VM 自动开关机,Get到了吗?

文章转载自AWS Azure技术分享,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论