一个简单灵活的aws eks管理命令行工具

ekscli的Python项目详细描述


Build StatusDocumentation StatusVersionLicense MIT

一个简单而灵活的AWS管理命令行工具

先决条件

  • 可用的aws凭据(配置为boto3
  • heptio身份验证器二进制(在AWS EKS User Guide中的To install heptio-authenticator-aws for Amazon EKS部分)
  • [可选]kubectl(1.10及更高版本),用于kubernetes群集操作

快速启动

安装

使用pip与标准python方法一样简单。

$ pip install ekscli

(可选)安装后,可以使用以下命令完成命令:

$ eval"$(_EKS_COMPLETE=source eks)"

使用eckcli

注:由Eksci创建的AWS资源将在您的帐户中收取AWS费用。

使用几乎所有默认值运行ekscli来创建集群的最简单方法。
这将创建一个eks集群,其中包括控制平面(由aws管理的主节点)、一个节点组和一个kubectl配置文件(KUBECONFIG$HOME/.kube/config)。
$ eks create cluster --name=dev

# EKS cluster name can be set as an environment variable
$ exportEKS_CLUSTER_NAME=dev
$ eks create cluster

仅创建EKS群集的控制平面(主平面):

$ eks create cluster --name=dev --cp-only

用VPC的现有子网、预定义的IAM角色、现有的EC2密钥对等创建EKS集群的控制平面(Master):

$ eks create cluster --name=dev --cp-only \
  --subnets=subnet-1234567,subnet-abcdef1 \
  --cp-role eks-default-role \
  --region us-west-2 \
  --kubconfig ./dev.conf \
  --heptio-auth /tmp/heptio-auth-aws \
  --keyname dev \
  --node-sg-ingress port=22,cidr=10.0.0.0/8 \
  --tags Env=dev,Project=eks-poc

创建节点组的最简单方法

$ eks create node-group --name=dev --node-name=workers

创建具有更多选项的节点组

$ eks create node-group --name=dev --node-name=another \
  --node-role=eks-worker-s3 \
  --node-subnets=subnet-1234567 \
  --node-min=1\
  --node-max=10
  --node-sg-ingress port=22,cidr=10.0.0.0/8 \
  --node-sg-ingress protocol=tcp,from=8080,to=8088,cidr=0.0.0.0/0 \
  --region us-west-2 \
  --kubconfig ./dev.conf \
  --heptio-auth /tmp/heptio-auth-aws \
  --keyname dev \
  --tags Env=dev,Project=eks-poc

功能

  • 简洁的命令行界面
  • 灵活配置
  • 无需运行kubernetes集群的非必需资源的普通eks集群
  • 由aws管理的eks资源CloudFormation
  • bash和zsh支持命令行自动完成

路线图

  • 将集群信息输出为不同的格式:yaml、json
  • 更新群集和节点组
  • 从模板配置文件创建

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用哪个地图/集合?   bluej Java:计算税   由于性能问题,java双精度字符串替代方案   java Eclipse CDT生成设置因重新启动而丢失   如何在java控制台中显示字节流值   java获取url地址,其中是包含我的页面的iframe   java 403禁止的spring启动API调用错误?   如果一个方法返回true,java将停止计时器   使用JavaNIO获取文件创建日期   在Java中从整数转换为二进制时保留整个字节的字符串   java AspectJ&Maven警告:“未应用……中定义的建议?”   java为什么我得到3,我不应该得到+7   java当一个方法包含多个返回的if语句时,如何从该方法中获取返回值?   在运行时循环java(scan.nextLine()!="$")   java配置休眠。cfg。春天的xml   java使用HtmlUnit模拟用户,错误   java CLI如何持续检查更改   java最大素因子(返回)