AWS EKS(AWS云里面的K8S)
问题
初步使用EKS
步骤
安装AWS CLI
第一步是在自己的笔记本电脑上面安装AWS提供的CLI(命令行工具),这里就不详细介绍了,都是next的步骤。具体可以参考啊aws cli安装的相关教程网页,具体地址如下:
https://docs.aws.amazon.com/zh_cn/cli/latest/userguide/getting-started-install.html
配置AWS CLI
运行如下命令,配置AWS CLI工具:
aws configure
效果如下:

这个设置命令的作用就是在~/.aws/config文件中,设置json格式和aws云区位置为us-east-1,具体内容类似如下:
[default]
region = us-east-1
output = json
在~/.aws/credentials文件中,设置相关访问私钥配置,类似如下内容:
[default]
aws_access_key_id = *****************4E
aws_secret_access_key = **********************8Wk
安装kubectl
这里直接参考k8s官网页面就可以找到怎么安装kubectl工具了。
创建EKS集群 IAM 角色
这里假设我们依据准备好EKS需要的VPC网络了。我们先创建一个eks集群角色,内容如下:

选择对应EKS设置,如下图:

点击下一步,如图:

设置好角色名称eksClusterRole和角色描述Amazon EKS - Cluster role后,创建角色,如下图:

开始EKS集群创建
找到EKS相关界面,进入EKS集群创建入口,如下图:

设置集群名称

这里还有一些其他的设置,我们先默认好了,其中k8s版本尽可能用最新版本,如果用了老版本,aws得另外收费;角色选择,默认选择之前创建的eksClusterRole角色。点击下一步。
设置网络

这里我设置eks用到的ELB安全组,这里需要注意一下;然后,我们都是用私有子网。点击下一步。
设置监控

这里是uat环境,不是生产环境,所以,这里的监控系统可以不用开。点击下一步。
设置插件

uat环境不用使用GuardDuty插件,使用GuardDuty保证pod安全也需要收费的。下一步。
检查插件

直接下一步。
创建EKS集群

查看一下EKS配置是否有问题,没有问题,就直接创建即可。等待一段时间EKS集群就创建好了。
本地验证EKS集群
先使用aws cli设置kubectl链接的集群,命令如下:
aws eks update-kubeconfig --region us-east-1 --name uat
具体效果如下:
aws eks update-kubeconfig --region us-east-1 --name uat
Added new context arn:aws:eks:us-east-1:********:cluster/uat to /Users/zhangyalin/.kube/config
下面使用kubectl测试上述集群:
kubectl get svc
测试结果如下:
kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 33m
验证k8s集群没有问题后,接下来设置eks的ec2节点。
eks的k8s版本
由于aws的eks对k8s的老旧版本收费不同,我们这里就直接选择限制的最新aws的eks支持最新k8s版本1.29了。老k8s版本eks收费是每小时0.60美刀,是标准k8s版本的6倍。具体关于AWS EKS支持的k8s标准版本,可以看一看这个文档:Amazon EKS Kubernetes 版本。
设置集群托管节点组
AWS的EKS实现k8s机器集群,有三种方式:
-
- EKS 托管节点组;
-
- 自行管理的节点 ;
-
- AWS Fargate。
从AWS的文档 Amazon EKS 节点可以知道AWS Fargate作为k8s机器集群实现有很多限制,这里我们实现EKS托管节点组方式。
设置创建k8s节点EC2的IAM角色
准备创建k8s托管节点IAM角色,如下图:

选中EC2,点击下一步,如下图:

依次设置AmazonEKSWorkerNodePolicy(k8s工作节点策略),AmazonEC2ContainerRegistryReadOnly(docker镜像只读权限策略),AmazonEKS_CNI_Policy(容器网卡权限策略)。依次添加3个托管权限策略,给这个角色,如下图:

下面审计一下这个角色,如下图:

设置好名称和描述,审计一下配置没问题,就可以直接点击创建角色。
设置托管节点组
开始准备配置托管节点组,如下图:

设置托管节点组名称和Name标签名称,选择上述创建的IAM角色,具体设置如下图:

设置托管节点用到的镜像系统,选择ec2类型,最大不可用节点数,如下图:

设置网络,如下图:

审计一下托管节点配置,如果没有问题的话,直接创建即可,如下图:

创建的过程中,需要启动EC2实例,等待一段已经吧!

出现如下图,说明托管节点设置成功:

可以通过kubectl查看node的状态,使用如下命令:
kubectl get nodes
结果如下:
NAME STATUS ROLES AGE VERSION
ip-xxx-xx-xxx-xxx.ec2.internal Ready <none> 32m v1.29.0-eks-5e0fdde
到这里AWS部署K8S集群就基本搞定了。
总结
总的来说AWS EKS部署配置还是挺简单的。不过,能用k8s集群的老板,都是有钱人。这里主要过程就是创建k8s集群角色,创建k8s集群,创建k8s托管节点角色,配置托管节点组。主要就是这么4个步骤吧!简单弄个非生产环境还是挺简单的。
参考
- 开始使用 Amazon EKS – AWS Management Console 和 AWS CLI
- 配置AWS CLI
- 安装或更新 kubectl
- Amazon EKS 集群 IAM 角色
- Amazon EKS 节点
- Amazon EKS Kubernetes 版本
- Amazon EKS 节点 IAM 角色
相关文章:
AWS EKS(AWS云里面的K8S)
问题 初步使用EKS 步骤 安装AWS CLI 第一步是在自己的笔记本电脑上面安装AWS提供的CLI(命令行工具),这里就不详细介绍了,都是next的步骤。具体可以参考啊aws cli安装的相关教程网页,具体地址如下: http…...
Azkaban 大数据 任务调度
参考视频:尚硅谷大数据Azkaban 3.x教程(全新发布)_哔哩哔哩_bilibili Azkaban: 是一个定时、批量工作流任务调度器(工作流程调度,定时调度) 常见的开源调度系统: 简单单一的任务调度: Linux的…...
从预训练到通用智能(AGI)的观察和思考
1.预训练词向量 预训练词向量(Pre-trained Word Embeddings)是指通过无监督学习方法预先训练好的词与向量之间的映射关系。这些向量通常具有高维稠密特征,能够捕捉词语间的语义和语法相似性。最著名的预训练词向量包括Google的Word2Vec&#…...
四种垃圾回收算法
1.标记清除算法 该算法先标记,后清除,将所有需要回收的算法进行标记,然后清除;这种算法的缺点是:效率比较低;标记清除后会出现大量不连续的内存碎片,这些碎片太多可能会使存储大对象会触发GC回…...
stm32f103zet6笔记1-led工程
1、选择串口调试 2、LED0连接到PB5,PB5设置为推挽输出。PE5同理。 3、生成成对的.c,.h文件。 4、debugger选择j-link。 5、connection选择SWD。 6、编写bsp_led.c,bsp_led.h文件。 7、下载调试,可以看到LED0 500ms闪烁一次,LED1 1000ms闪烁一…...
OpenDDS的Qos策略
目录 1、前言2、QoS策略2.1、LIVELINESS2.2、RELIABILITY2.3、HISTORY2.4、DURABILITY2.5、DURABILITY_SERVICE2.6 、RESOURCE_LIMITS2.7、PARTITION2.8、DEADLINE2.9、LIFESPAN2.10、USER_DATA2.11、TOPIC_DATA2.12、GROUP_DATA2.13、TRANSPORT_PRIORITY2.14、LATENCY_BUDGET2…...
string基本操作(C++)
增 1.1 “” str str ss;cout << str << endl; //234561提取字串 2.1 substr substr(pos): 提取从位置pos开始到末尾的子串。 #include <iostream> #include <string> using namespace std;int main(){string str "123456";//substr(pos…...
【网站项目】123网上书城系统
🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板ÿ…...
LeetCode148.排序链表
题目 给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 示例 输入:head [4,2,1,3] 输出:[1,2,3,4] 输入:head [-1,5,3,4,0] 输出:[-1,0,3,4,5] 输入:head [] 输出:[] 思路…...
qt学习:网络调试助手客户端+服务端
目录 客户端 步骤 ui界面配置编辑 添加头函数,类成员数据,类成员函数 添加模块 构造函数 连接按钮 收到来自服务器的数据触发 发送按钮 断开按钮 向textEditRev文本编辑器中插入指定颜色的文本 服务端 步骤 ui界面配置 添加头函数&…...
C语言拾遗
函数的地址传递: 函数体内部想要修改函数体外部变量值的时候,使用地址传递 int set(int *pa) {//功能 } int main(void) {int a0;set(&a);//此时a的值经过set函数的修改,且传递到了main函数 } 函数体内想修改函数体外部指针的值的时候…...
大唐杯学习笔记:Day4
1.1NR帧结构 5G NR中,依然采用一帧10ms,并将一帧分为10子帧,每个子帧为1ms。每个子帧包含几个时隙(slot),每个时隙由14个OFDM符号构成(在常规CP下)。 μ \mu μ Δ f 2 μ ∗ 15 [ K H Z ] \Delta f2^{\mu}*15[KHZ] Δf2μ∗15[KHZ]Cyclic prefix015Normal130Normal260Normal…...
docker基线安全修复和容器逃逸修复
一、docker安全基线存在的问题和修复建议 1、将容器的根文件系统挂载为只读 修复建议: 添加“ --read-only”标志,以允许将容器的根文件系统挂载为只读。 可以将其与卷结合使用,以强制容器的过程仅写入要保留的位置。 可以使用命令&#x…...
ZooKeeper概述
ZooKeeper是一个开源的分布式协调服务,由Apache Software Foundation维护。它主要用于解决分布式应用中遇到的一些最常见问题,如命名服务、状态同步、配置管理和群集管理等。通过提供一套简单但强大的API,ZooKeeper使得从简单的锁服务到复杂的…...
【sgCollapseBtn】自定义组件:底部折叠/展开按钮
特性: 支持自定义折叠状态支持自定义标签名称 sgCollapseBtn源码 <template><div :class"$options.name" click"show !show" :placement"placement"><div class"collapse-btns"><div class"c…...
如何根据玩家数量和游戏需求选择最合适的服务器配置?
根据玩家数量和游戏需求选择最合适的服务器配置,首先需要考虑游戏的类型、玩家数量、预计的在线时间以及对内存和CPU性能的需求综合考虑。对于大型多人在线游戏,如MMORPG或MOBA等,由于需要更多的CPU核心数来支持更复杂的游戏逻辑和处理大量数…...
问题解决:各版本的vc_redist下载地址 缺少msvcr100.dll、msvcr120.dll、msvcr140.dll
Visual C Redistributable for Visual Studio各版本的官方链接。解决缺少msvcr100.dll、msvcr120.dll、msvcr140.dll的问题。 下面全部为官方链接: Microsoft Visual C Redistributable 2019 x86: https://aka.ms/vs/16/release/VC_redist.x86.exe x64: https://ak…...
182基于matlab的半监督极限学习机进行聚类
基于matlab的半监督极限学习机进行聚类,基于流形正则化将 ELM 扩展用于半监督,三聚类结果可视化输出。程序已调通,可直接运行。 182matlab ELM 半监督学习 聚类 模式识别 (xiaohongshu.com)...
C语言数组案例编程
1. 编写一个程序实现:从键盘输入15个整数存入数组,然后统计其中正整数的个数。 【要求】采用函数编程 #include<stdio.h> void input(int a[],int n) {int i; for(i0;i<n;i)scanf("%d",&a[i]); }int positiveNum(int a[],int n…...
NLP - 依存句法分析、句子歧义
1. 语言结构的两种观点 Constituency phrase struct grammar context-free grammars(CFGs)Dependency structure 对于context-free grammars(CFGs) 短语结构(Constituency):短语结构语法是一种描述语言结构的方法,它将句子划…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
