EKS简介

Amazon Elastic Kubernetes Service (Amazon EKS) 是一项托管服务,可让您在 AWS 上轻松运行 Kubernetes,而无需支持或维护您自己的 Kubernetes 控制层面。Kubernetes 是一个用于实现容器化应用程序的部署、扩展和管理的自动化的开源系统。(该段介绍来自Amazon EKS文档,更多了解https://docs.aws.amazon.com/zh_cn/eks/latest/userguide/what-is-eks.html)

eksctl创建eks集群

什么是eksctl

eksctl是一种用于在 Amazon EKS 上创建和管理 Kubernetes 集群的简单命令行程序。eksctl 命令行程序提供了使用工作线程节点为 Amazon EKS 创建新集群的最快、最简单的方式。

eksctl更多了解https://eksctl.io

为什么用eksctl

创建EKS集群可以在AWS的控制台创建,也可以使用AWS开发的eksctl工具创建,为什么选择使用eksctl创建eks集群呢,有以下几点原因:

  • 直接在AWS的控制台创建集群,需要手动创建各种Role,以及选择合适的Subnet,Security Group等繁杂操作,你需要在浏览器中打开多个页面,操作过程可能也要时不时参阅文档;
  • eksctl创建EKS集群只需要一行eksctl create cluster <参数>命令即可,会自动的给你创建Role等资源;
  • eksctl的命令可以记录到脚本,便于复用。

安装eksctl(基于ubuntu)

使用以下命令下载并提取最新版本的 eksctl

curl --silent --location "https://github.com/weaveworks/eksctl/releases/download/latest_release/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp

将提取的二进制文件移至 /usr/local/bin

sudo mv /tmp/eksctl /usr/local/bin

使用以下命令测试您的安装是否成功。

eksctl version

注意

GitTag 版本应至少为 0.11.1。否则,请检查您的终端输出是否有任何安装或升级错误。

使用eksctl创建集群

准备工作

  • 一台拥有创建eks权限的机器
  • 已经安装好eksctl
eksctl create cluster
--name prod-eks
--version 1.14
--region us-east-1
--nodegroup-name prod-eks-workers
--node-type t3.medium
--nodes 2
--nodes-min 2
--nodes-max 4
--ssh-access
--ssh-public-key prod-eks-public-key
--managed

--ssh-public-key 可选的,但建议您在创建包含节点组的集群时指定该选项。通过此选项,可以对托管节点组中的节点进行 SSH 访问。启用 SSH 访问后,如果出现问题,您可以连接到实例并收集诊断信息。

注意:在us-east-1区中,创建eks集群时您可能会遇到UnsupportedAvailabilityZoneException类型的异常。如果遇到这种情况,可以传递zones参数,例如,

eksctl create cluster
--name prod-eks
--version 1.14
--region us-east-1
--zones us-east-1a,us-east-1b
--nodegroup-name prod-eks-workers
--node-type t3.medium
--nodes 2
--nodes-min 2
--nodes-max 4
--ssh-access
--ssh-public-key prod-eks-public-key
--managed

以上创建eks集群的命令会大致输出以下内容,集群的整个创建过程可能会花费10到15分钟:

[ℹ]  CloudWatch logging will not be enabled for cluster "prod-eks" in "us-east-1"
[ℹ]  you can enable it with 'eksctl utils update-cluster-logging --region=us-east-1 --cluster=prod-eks'
[ℹ]  Kubernetes API endpoint access will use default of {publicAccess=true, privateAccess=false} for cluster "prod-eks" in "us-east-1"
[ℹ]  2 sequential tasks: { create cluster control plane "prod-eks", create managed nodegroup "prod-eks-workers" }
[ℹ]  building cluster stack "eksctl-prod-eks-cluster"
[ℹ]  deploying stack "eksctl-prod-eks-cluster"
[ℹ]  building managed nodegroup stack "eksctl-prod-eks-nodegroup-prod-eks-workers"
[ℹ]  deploying stack "eksctl-prod-eks-nodegroup-prod-eks-workers"
[✔]  all EKS cluster resources for "prod-eks" have been created
...

如果输出中存在 could not find any of the authenticator commands: aws-iam-authenticator, heptio-authenticator-aws,则需要安装aws-iam-authenticator,使用以下命令:

curl -o aws-iam-authenticator https://amazon-eks.s3-us-west-2.amazonaws.com/1.14.6/2019-08-22/bin/linux/amd64/aws-iam-authenticator
chmod +x ./aws-iam-authenticator
mkdir -p $HOME/bin && cp ./aws-iam-authenticator $HOME/bin/aws-iam-authenticator && export PATH=$PATH:$HOME/bin
echo 'export PATH=$PATH:$HOME/bin' >> ~/.bashrc
aws-iam-authenticator help

如果本次操作机器没有安装kubectl,可以使用以下命令安装,如果已经安装则跳过:

sudo apt-get update && sudo apt-get install -y apt-transport-https
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubectl

可以通过kubectl命令操作本次创建的集群:

kubectl get svc

输出如下,可以说明eks集群已经成功创建了。

NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.100.0.1   <none>        443/TCP   31m

key store是否创建_EKS-实践一 创建EKS集群相关推荐

  1. 创建并运行 EMR on EKS 集群

    文章目录 0. 前置条件 1. 安装ekscli 2. 安装kubectl 3. 创建EKS集群 4. 查看EKS集群状态 5. 创建Namespace 6. 授权访问Namespace 7. 创建J ...

  2. aws上创建eks集群

    在aws上创建eks集群前,需要先创建vpc和subnet以及role,因为在创建集群时会用到. 1.创建VPC 对于创建vpc,进入create vpc界面创建即可,这里用的都是默认值. 2.创建s ...

  3. 使用AWS 管理控制台和 AWS CLI创建EKS集群

    Amazon Elastic Kubernetes Service (Amazon EKS) 是一种托管服务,用户可以使用它在 AWS 上运行 Kubernetes,而无需安装.操作和维护Kubern ...

  4. (三)在Azure上创建您的第一个Kubernetes集群

    目录 Azure Kubernetes服务 Azure资源管理器 先决条件和清理 AKS群集模板 Azure DevOps管道 下一步 在本系列的前面部分,我们使用Azure Functions创建了 ...

  5. 在一台物理机上创建3个虚拟机搭建k8s集群(一)

    2019年10月7日,参考链接: https://blog.csdn.net/qq_38252499/article/details/99214276 https://blog.csdn.net/cn ...

  6. MongoDB DBA 实践6-----MongoDB的分片集群部署

    一.分片 MongoDB使用分片技术来支持大数据集和高吞吐量操作. 1.分片目的 对于单台数据库服务器,庞大的数据量及高吞吐量的应用程序对它而言无疑是个巨大的挑战.频繁的CRUD操作能够耗尽服务器的C ...

  7. Ansible自动化部署配置实践(实现TDEngine集群的自动化部署)

    一.说明 Ansible是一款基于Python的自动化运维,用于发布.管理和编排计算机系统的工具.而且可以支持批量系统配置.批量部署运维.批量运行命令等功能. 这里以TDEngine的集群部署为例, ...

  8. 云计算最佳实践系列之 K8s集群搭建+容器编排

    身为让容器应用实现大规模工业生产的一大功臣,过去几年,Kubernetes  势头迅猛,BAT.京东.美团.字节都走上了全域容器化部署以及云原生架构的康庄大道. 而作为支撑阿里万亿级应用背后的核心,阿 ...

  9. 如何创建一个用户、授权操作k8s集群的过程?

    本篇带给大家如何创建一个用户.授权操作k8s集群的过程.希望对你有所帮助! 背景 172.16.99.128是的我k8s集群的master节点,此处是从这里获取集群的证书. 创建访问architech ...

最新文章

  1. python 下载网页文件_『如何用python把网页上的文本内容保存下来』python爬取网页内容教程...
  2. PHP实现弹出消息提示框的两种方法
  3. 文件传送到服务器的软件,远程服务器文件传输软件
  4. 编写一个watchdog.sh脚本_五大原因!为何要将Jupyter Notebook转换为python脚本?
  5. face3000 c++ 代码运行
  6. 用友中标:打造新一代云化ERP 落地大型企业互联网+
  7. html手机页面怎么保存图片,【答疑】你知道手机怎么保存网页长图吗?超简单!...
  8. 1000以内的素数(质数)
  9. ajax网页没有办法采集,Ajax网页采集方法(最新) - 八爪鱼采集器
  10. Oracle Golden Gate 系列二 -- GG 的系统需求
  11. nodejieba的配置(windows)
  12. word快捷操作:用好F4键让重复操作省时省力
  13. 终于来了,200道阿里面试题!
  14. iphone 扩容测试软件,给iPhone扩容!闪迪手机U盘测评
  15. vgg16构造模型图(转)
  16. 【Linux】Linux下怎么下载安装Chrome?
  17. LTI连续系统零状态响应求解
  18. 一文了解 HDFS 及其组成框架
  19. 从《淘金者》看游戏细节
  20. 淘宝模板开发系列之SDK DEV REF

热门文章

  1. Visual Studio 2012 和.NET Framework 4.5 快速开始的5分钟视频
  2. Spring Boot Initilizr Web界面
  3. Java中gatSum方法是什么_Oracle中的SUM用法讲解
  4. PHP trim()函数详解
  5. 【Python】BMI指数 计算器
  6. 使用python编写自己的进程调试工具
  7. chrome和safari_私人浏览器-如何在Chrome和Safari中使用隐身模式
  8. 如何使用JavaScript控制台:超越console.log()
  9. 126_Power BI中使用DAX计算股票RSI及股票均线相关
  10. 力扣-二叉树的层序遍历