聊聊如何用AWS创建EKS集群

2023-04-06 11:33:51 来源:新钛云服 分享到:

使用Amazon EKS(Elastic Kubernetes Service)集群,以便能够轻松管理、部署和扩展应用程序容器。EKS提供了一个高度可扩展、弹性、安全和稳定的Kubernetes控制平面,并自动处理集群的部署、升级和维护。使用EKS集群可以让开发团队专注于构建应用程序,而无需管理底层基础架构的细节。


(相关资料图)

网络配置01创建VPC

虚拟私有云(VPC)是仅适用于您的 Amazon 账户的虚拟网络。它在逻辑上与 Amazon 云中的其他虚拟网络隔绝。您可以在 VPC 内启动您的 Amazon 资源,例如 Amazon EC2 实例。

https://cn-northwest-1.console.amazonaws.cn/vpc/home 点击此链接进入VPC控制面板,在左边菜单栏中找到“您的VPC”,在“您的VPC”界面点击“创建VPC”按钮。

选择“仅VPC”要创建的资源,填写“Name”和“IPv4 CIDR”,填写内容如下表所示,填写完成后点击“创建VPC”按钮,继而创建VPC完成。

Name

IPv4 CIDR

VPC-SG-R&I

172.25.0.0/19

创建完成后,编辑 VPC 设置,选择“DHCP”选项集。在DNS设置中,勾选“启用DNS解析”和“启用DNS主机名”,完成后点击“保存”按钮。

02创建子网

子网是您的 VPC 内的 IP 地址范围。您可以在指定子网内启动Amazon资源。对必须连接互联网的资源使用公有子网,而对将不会连接到互联网的资源使用私有子网。

在VPC控制面板的左侧菜单栏中找到“子网”,在子网控制面板中,点击“创建子网”按钮。创建子网所需配置信息如下表所示:

Name

VPC

可用区

IPv4 CIDR

subnet-R&i-public-ECS-A

VPC-SG-R&I

cn-northwest-1a

172.25.7.0/24

subnet-R&i-private-EKS cluster-A

VPC-SG-R&I

cn-northwest-1a

172.25.0.0/24

subnet-R&i-private-EKS cluster-C

VPC-SG-R&I

cn-northwest-1c

172.25.2.0/24

subnet-R&i-private-EKS cluster-B

VPC-SG-R&I

cn-northwest-1b

172.25.1.0/24

在VPC设置中,填写“VPC ID”,就是刚才创建VPC。在子网设置中,填写“子网名称”、“可用区”、“IPv4 CIDR块”,具体信息见上表,此处以“subnet-R&i-public-ECS-A”这个子网为例。

03创建路由器

路由表包含一组被称为路由的规则,决定了来自您的子网或网关的网络流量将指向何处。

在VPC控制面板的左侧菜单栏中找到“路由表”,在路由表控制面板中,点击“创建路由表”按钮。创建路由表所需配置信息如下表所示:

Name

VPC

关联子网名称

路由

目标

目标

rt-sg-r&i-ecs-cluster

VPC-SG-R&I

subnet-R&i-public-ECS-A

0.0.0.0/0

igw-sg-r&i(互联网网关)

172.25.0.0/19

local

rt-sg-r&i-EKS-cluster

VPC-SG-R&I

subnet-R&i-private-EKS cluster-A, subnet-R&i-private-EKS cluster-C, subnet-R&i-private-EKS cluster-B

0.0.0.0/0

nat-sg-rni(NAT 网关)

172.25.0.0/19

local

在路由表设置中,填写“名称”和“VPC”,具体信息见上表,此处以“rt-sg-r&i-ecs-cluster”这个路由表为例。填写完成后,点击“创建路由表”按钮。

勾选刚创建的路由表,在下面信息栏中找到“子网关联”,点击“编辑子网关联”。

在可用子网配置中,勾选关联子网名称,详情请见上表。填写完成后,点击“保存关联”按钮,完成路由表与子网的关联。

04创建网络接口

弹性网络接口是 VPC 中表示虚拟网卡的逻辑网络组件。

点击https://cn-northwest-1.console.amazonaws.cn/ec2/v2/home 链接,进入EC2控制面板。在左侧菜单栏中找到“网络接口”。在网络接口界面,点击“创建网络接口”按钮。创建网络接口所需配置信息如下表所示:

子网

私有 IPv4 地址

subnet-R&i-public-ECS-A

自动分配

在详细信息配置中,填写“子网”,完成后点击“创建网络接口”按钮。

05创建弹性公网IP

弹性 IP 地址是公有 IPv4 地址,可通过 Internet 访问。如果您的实例没有公有 IPv4 地址,则可以将弹性 IP 地址与您的实例关联以启用与 Internet 的通信。例如,这允许您从本地计算机连接到您的实例。

在VPC控制面板的左侧菜单栏中找到“弹性IP”,在弹性IP地址控制面板中,点击“分配弹性IP地址”按钮,即可分配弹性IP。

选中刚创建的弹性IP地址,点击“操作”按钮,在其下拉框中点击“关联弹性IP地址”。

在弹性IP地址配置中,选择“网络接口”,在网络接口处填写刚创建的“网络接口”,填写完成后点击“关联”按钮,完成弹性IP地址与网络接口的关联。

06创建NAT网关

NAT 网关是一种网络地址转换 (NAT) 服务。您可以使用 NAT 网关,以便私有子网中的实例可以连接到 VPC 外部的服务,但外部服务无法启动与这些实例的连接。

在VPC控制面板的左侧菜单栏中找到“NAT 网关”,在NAT 网关控制面板中,点击“创建NAT网关”按钮。创建NAT网关所需配置信息如下表所示:

Name

子网名称

连接类型

nat-sg-rni

subnet-R&i-public-ECS-A

公有

在NAT网关设置中,填写“名称”、“子网”,具体信息见上表。连接类型选择“公有”,弹性IP分配ID为刚创建的弹性公网IP,填写完成后,点击“创建NAT网关”按钮。

07创建互联网网关

Internet 网关是一种横向扩展、冗余且高度可用的 VPC 组件,支持在 VPC 和 Internet 之间进行通信。它支持 IPv4 和 IPv6 流量。它不会对您的网络流量造成可用性风险或带宽限制。

借助互联网网关,公有子网中具有公有 IPv4 地址或 IPv6 地址的资源(例如 EC2 实例)可以连接到互联网。同样,互联网上的资源也可以使用公有 IPv4 地址或 IPv6 地址发起到子网中的资源的连接。例如,您可以通过互联网网关,使用本地电脑连接到 Amazon 中的 EC2 实例。

互联网网关为您的 VPC 路由表中可通过互联网路由的流量提供目标。对于使用 IPv4 的通信,互联网网关还会执行网络地址转换 (NAT)。对于使用 IPv6 的通信,不需要 NAT,因为 IPv6 地址是公有的。建立互联网网关并不需要缴纳额外的费用。

在VPC控制面板的左侧菜单栏中找到“互联网网关”,在互联网网关控制面板中,点击“创建互联网网关”按钮。创建互联网网关所需配置信息如下表所示:

Name

关联VPC名称

igw-sg-r&i

VPC-SG-R&I

在互联网网关设置中,填写Name,具体信息请见上表,填写完成后点击“创建互联网网关”按钮。

选中刚创建的互联网网关,点击“操作”按钮,在其下拉框中点击“附加到VPC”按钮,附加我们创建的VPC。

下图为附加VPC完成后的截图

在路由表控制面板,选中名为“rt-sg-r&i-ecs-cluster”的路由表,点击“编辑路由”按钮。

点击“添加路由”按钮,加上刚创建的互联网网关,具体目标地址按需求来,这里只作为参考。填写完成后,点击“保存更改”。

创建集群服务角色01创建集群服务角色

点击https://console.amazonaws.cn/iamv2/home?reginotallow=cn-northwest-1#/home 链接进入IAM控制面板,在左侧菜单栏中找到角色,点击“创建角色按钮”,创建角色所需配置信息如下表所示:

角色名称

权限策略

EKSClusterRole

AmazonEC2ContainerRegistryReadOnly

AmazonEKSClusterPolicy

AmazonEKS_CNI_Policy

AmazonEKSWorkerNodePolicy

选中“亚马逊云科技服务”,在其他亚马逊云科技服务的使用案例中,查找“EKS”,选中“EKS - Cluster”,完成后点击“下一步”按钮。

继续点击“下一步”。

填写“角色名称”,具体信息请见上表。填写完成后,点击“创建角色”,完成EKS集群角色创建。

点击刚创建的角色,进入详细界面。

找到“权限”,点击“添加权限”按钮。

添加入下图所示的权限,具体名称请见上表。

选择完成后,点击“添加权限”按钮,完成角色权限的添加。

02创建集群安全组

在VPC控制面板的左侧菜单栏中找到“安全组”,在安全组控制面板中,点击“创建安全组”按钮。创建安全组所需配置信息如下表所示:

安全组名称

VPC

标签(键)

标签(值)

eks-cluster-sg-live-k8s

VPC-SG-R&I

Name

eks-cluster-sg-live-k8s

kubernetes.io/cluster/live-k8s

owned

在基本详细信息中,填写“安全组名称”、“VPC”、“入站规则”、“出站规则”,具体信息请见上表。填写完成后,点击“创建安全组”按钮,完成安全组的创建。

03创建密钥对

在AMI控制面板的左侧菜单栏中找到“密钥对”,在密钥对控制面板中,点击“创建密钥对”按钮。创建密钥对所需配置信息如下表所示:

名称

密钥对类型

私钥文件格式

AWS_LIVE_SecretKey

RSA

.pem

在密钥对配置中填写“名称”、“密钥对类型”、“私钥文件格式”,具体信息请见上表。填写完成后点击“创建密钥对”,完成密钥对的创建。

导出该密钥对,用于远程连接。

04创建集群

点击https://cn-northwest-1.console.amazonaws.cn/eks/home 链接进入EKS控制面板创建集群,创建集群所需配置信息如下表所示:

集群名称

Kubernetes 版本

集群服务角色

live_k8s

1.23

EKSClusterRole

填写“集群名称”后,点击“下一步”按钮。

在配置集群界面,填写“名称”、“Kubernetes 版本”、“集群服务角色”,具体信息如上表所示。根据下表信息填写“标签”,填写完成后点击“下一步”按钮。

标签

Createdby

JIN

Env

prod

Name

live-k8s

Project

live

在联网配置中,填写“VPC”、“子网”、“安全组”等信息,具体信息及配置如下图、下表所示。

VPC名称

子网

集群安全组

服务的 IPv4 地址范围

集群端点访问

VPC-SG-R&I

subnet-R&i-private-EKS cluster-A

eks-cluster-sg-live-k8s

10.100.0.0/16

公有和私有

subnet-R&i-private-EKS cluster-C

subnet-R&i-private-EKS cluster-B

在配置日志记录中,按需求进行配置,我这里暂时不配置日志,直接点击“下一个”按钮。

在选择插件中,选中如下三个插件,点击“下一步”按钮。

在配置选定的插件设置中,直接点击“下一个”按钮。

检查所有配置,都没有问题后,点击“创建”按钮,完成集群创建。

05创建身份供应商

在创建完成后的集群详情界面中,找到“概述”,复制“OpenID Connect 提供商 URL”,用于下面的操作。

在IAM控制台界面的左侧菜单栏中,找到“身份提供商”,点击“添加提供商”按钮。

具体配置信息请见下图和下表所示。要注意“提供商 URL”,即为刚复制的“OpenID Connect 提供商 URL”。

提供商类型

提供商 URL

受众

标签

OpenID Connect

EKS中的OpenID Connect 提供商 URL

sts.amazonaws.com

Createdby

JIN

Env

prod

Name

live-k8s

Project

live

06创建计算节点组

在刚创建的EKS详情页中,找到“计算”,点击“创建节点组”按钮。创建节点组所需配置信息如下表所示:

节点组名称

节点 IAM 角色

SSH 密钥对

标签

live-k8s-nodegroup

AWS-EKS-LIVE-NODEGROUP-ROLE

AWS_LIVE_SecretKey

Project

live

Createdby

JIN

Env

prod

Name

live-k8s

在配置节点组中,填写“名称”、“节点组IAM角色”、“标签”,具体信息请见上表。填写完成后,点击“下一个”按钮。

在设置计算和扩展配置中,根据下图和下表所示填写信息。填写完成后,点击“下一个”按钮。

AMI 类型

容量类型

实例类型

磁盘大小

Amazon Linux 2 (AL2_x86_64)

On-Demand

c5.xlarge

300GiB

在指定联网中,选择“配置对节点的SSH访问权限”。

会弹出一个警告,点击“启用”按钮。

根据下图及下表进行配置,配置完成后点击“下一个”按钮。

子网

SSH 密钥对

subnet-R&i-private-EKS cluster-A

AWS_LIVE_SecretKey

subnet-R&i-private-EKS cluster-C

subnet-R&i-private-EKS cluster-B

检查所有配置,完成后点击“创建”按钮,完成节点组的创建。

大约等待30分钟后,可以看到“计算”页面已经创建了4台节点,并且状态为“已就绪”。

插件的状态也都为活动,则说明节点创建成功。

07创建跳板机创建角色

创建跳板机EC2的角色,具体配置如下图下表所示。

角色名称

权限策略

EC2_Full_access

AWSCloud9SSMInstanceProfile

AWSResourceAccessManagerFullAccess

AmazonEC2FullAccess

AmazonEKSClusterPolicy

AmazonSSMManagedInstanceCore

AmazonSSMPatchAssociation

CloudWatchFullAccess

创建安全组

根据下表信息,创建安全组。

安全组名称

出站规则

live_vpn

类型

协议

端口范围

描述

SSH

TCP

22

x.x.x.x/x

特定ip

所有流量

全部

全部

10.100.0.0/16

EKS SERVICE

所有流量

全部

全部

eks-cluster-sg-live-k8s

入站规则

类型

协议

端口范围

目标

描述

所有流量IPv4

全部

全部

0.0.0.0/0

创建弹性IP地址创建网络接口

创建网络接口,子网为“subnet-R&i-public-ECS-A”,具体操作如下图所示。

为刚创建的网络接口绑定弹性IP地址,具体操作如下图所示。

创建EC2

在EC2控制面板的左侧菜单栏中找到“实例”,在实例控制面板中,点击“启动新实例”按钮。创建新实例所需配置信息如下表所示:

名称

AMI名称

实例类型

密钥对名称

vpc名称

LIVE_VPN

amzn2-ami-kernel-5.10-hvm-2.0.20221004.0-x86_64-gp2

c5.xlarge

AWS_LIVE_SecretKey

VPC-SG-R&I

子网名称

安全组

IAM

存储大小

存储类型

subnet-R&i-public-ECS-A

live_vpn

EC2_Full_access

100 GiB

gp3

填写名称,点击“浏览其他AMI”按钮,选择我们需要的AMI。

在输入框中,填写我们需要的AMI,点击“社区AMI(1)”,选中该AMI。

选择我们需要的“实例类型”和“密钥对”。

如下图所示,进行网络配置。

点开“高级网络配置”,在“网络接口”处选择我们刚创建的网络接口。

根据需求配置存储。

选中刚创建的角色,完成配置后,点击“启动实例”按钮,完成EC2的创建。

创建完成后,如下图所示。

安装必要软件

在跳板机EC2中运行下面的命令,安装必要的软件。

## Installing pipif ! hash python pip unzip jq yq &> /dev/null; then    if [ -f /usr/bin/yum ]; then sudo yum -y -q install python-pip unzip jq && sudo pip install yq; fi    if [ -f /usr/bin/apt ]; then sudo apt update && sudo apt install --yes python-pip unzip jq && sudo pip install yq; fifi ## Installing awscliif ! command -v aws &> /dev/null; then    curl --silent --location "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"    unzip -q awscliv2.zip    sudo ./aws/install --update    rm -fr awscliv2* aws*/fi ## Installing eksctlif ! command -v eksctl &> /dev/null; then    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    source <(eksctl completion bash) 2>/dev/nullfi ## Installing aws-iam-authenticatorif ! command -v aws-iam-authenticator &> /dev/null; then    curl -o aws-iam-authenticator https://amazon-eks.s3.us-west-2.amazonaws.com/1.23.7/2022-06-29/bin/linux/amd64/aws-iam-authenticator    chmod +x ./aws-iam-authenticator    mkdir -p $HOME/.bin && mv ./aws-iam-authenticator $HOME/.bin/aws-iam-authenticator && export PATH=$HOME/.bin:$PATH    echo "export PATH=$HOME/.bin:$PATH" >> ~/.bashrcfi ## Installaing kubectlif ! command -v kubectl &> /dev/null; then    curl -o kubectl https://amazon-eks.s3.us-west-2.amazonaws.com/1.23.7/2022-06-29/bin/linux/amd64/kubectl    chmod +x ./kubectl    sudo mv ./kubectl /usr/local/bin/kubectl
生成kubeconfig

为当前管理用户,创建访问密钥。

在跳板机EC2中配置aws-cli ~/.aws/config。

aws configureAWS Access Key ID [None]: #这里填写AKAWS Secret Access Key [None]: #这里填写SKDefault region name [None]: cn-northwest-1 #填写地域Default output format [None]: json

执行下面命令查看配置。

aws sts get-caller-identity

执行下面命令,生成kubeconf。

aws eks --region cn-northwest-1 update-kubeconfig --name live_k8s

小结

至此,AWS创建EKS集群完成,且可以远程登录跳板机,并使用跳板机连接EKS集群。

标签:

聊聊如何用AWS创建EKS集群

来源:新钛云服 2023-04-06 11:33:51

环球时讯:4月6日托育服务板块跌幅达2%

来源:东方财富Choice数据 2023-04-06 10:49:11

世界通讯!4.6早看点|合肥购房政策调整:部分区域放开限购

来源:诸葛找房 2023-04-06 09:56:36

英力股份进军光伏组件制造 --> 英力股份进军光伏组件制造

来源:集邦新能源网 2023-04-06 09:13:19

汽车位置灯是什么意思_汽车前后位置灯是什么-天天报资讯

来源:互联网 2023-04-06 07:49:17

美股异动 | 维珍轨道(VORB.US)续跌超11% 昨日下跌23%

来源:智通财经 2023-04-06 06:07:16

「002638股票」诺诚健华:施一公家族身家30亿的秘密 环球微资讯

来源:投股 2023-04-06 02:55:55

就业市场终究顶不住加息重压? 3月美国ADP就业数不及预期 薪资涨幅创一年多新低-世界快消息

来源:智通财经 2023-04-05 22:16:17

不懂“庄”懂|张继科,迷失在粉红色娱乐泡沫里

来源:湖南日报·新湖南客户端 2023-04-05 20:58:41

天天信息:小米折叠屏史上第一次!MIX Fold 3拥抱潜望长焦

来源:快科技 2023-04-05 18:43:46

缅怀英烈 | 英烈丰碑永驻 哀思悼念忠魂 天天讯息

来源:央视网 2023-04-05 17:07:15

哈市交警持续开展摩托车交通违法治理|环球微速讯

来源:东北网 2023-04-05 15:48:18

横贯八方

来源:互联网 2023-04-05 14:05:16

MVP级表现!恩比德比肩上古大神,神数据NBA历史第3次出现 环球焦点

来源:ALL体育 2023-04-05 10:58:56

全球快资讯丨集美区侨英街道孙厝社区乐安里综合发展中心开工

来源:厦门日报 2023-04-05 09:30:03

天天最新:伊朗时隔7年多重新向阿联酋派大使

来源:齐鲁壹点 2023-04-05 07:57:15

锡安常规赛或将无法复出 鹈鹕附加赛面临考验

来源:球天下 2023-04-05 06:14:47

世界即时:人迎穴_人迎穴

来源:元宇宙网 2023-04-05 03:55:06

环球新资讯:为什么qq群解散失败(为什么QQ群解散群失败)

来源:华南科技网 2023-04-04 23:09:00

LPL爆出最大冷门,第一中单淘汰!OMG一黑到底,Rookie输得不冤 微头条

来源:天下游戏汇 2023-04-04 21:33:32

世界速读:时政|关岭召开全县森林草原防灭火工作调度会议

来源:微关岭 2023-04-04 20:07:46

天天微动态丨男子患病转院途中死亡,法院判沈阳二四二医院赔偿1万余元

来源:二三里资讯客户端 2023-04-04 18:58:38

天元宠物(301335.SZ):以1747万元成功竞得杭州市临平区一宗一类工业用地

来源:格隆汇 2023-04-04 17:59:35

《蓝甲虫》首支预告&解析:太像那谁谁谁,二代蓝甲虫妻子跳反 天天实时

来源:队长说漫微marvel 2023-04-04 17:20:14

环球关注:一季度全社会用电量增长5.61%——从电力数据看福州经济复苏新态势

来源:东南网 2023-04-04 16:16:06

全球今热点:莲花健康称并购自嗨锅估值高于同业,提示标的公司可持续盈利能力风险

来源:证券时报·e公司 2023-04-04 15:31:58

【地评线】太阳鸟时评:拓渠道,让更多地方特色食品“出圈” 最新消息

来源:四川新闻网 2023-04-04 14:47:45

当前资讯!买了六年的重疾险是留还是退?重疾险交满后能退回本金吗?

来源:希财网 2023-04-04 13:53:02

杭州天目山景区要收费了吗?|世界热推荐

来源:本地宝 2023-04-04 12:25:48

世界快消息!跌了万亿市值后,快手想通了|读财报

来源:伯虎财经 2023-04-04 11:51:42

Copyright   2015-2022 南方知识产权网 版权所有  备案号:粤ICP备18023326号-21   联系邮箱:855 729 8@qq.com