当前位置: 首页 > 云服务器

AWS CLI 创建和部署安装教程

时间:2026-01-29 14:44:11

AWS CLI是一个命令行工具,有助于使用 AWS 服务。我们可以使用它来创建、更新、删除、调用 aws lambda 函数。在本章中,您将详细讨论 AWS CLI 的安装和使用。

安装 AWS CLI

本节将指导您在各种操作系统上安装 AWS CLI。按照给定的步骤操作并观察随附的相应屏幕截图。

对于 Windows

检查您的 Windows 配置并选择以下链接之一来安装 AWS CLI MSI

对于 Windows 64 位适用于 Windows(64 位)的 AWS CLI MSI 安装对于 Windows 32 位适用于 Windows 的 AWS CLI MSI 安装 (32)

选择相应的链接并单击它后,您可以找到一个窗口,如下所示

接下来,设置windows中的环境路径,如下面的截图所示

完成后,您可以在命令提示符下使用以下命令,查看是否安装了aws cli

awsversion

它显示了 awscli 版本的详细信息,如下面的屏幕截图所示

对于 Linux/Mac

要在 Linux 和 Mac 上安装,您需要 Python 2.6.3 或更高版本。然后,使用以下命令进行进一步的安装过程

$ curl "s3.amazonaws/awscli/awsclibundle.zip"o "awsclibundle.zip"$ unzip awsclibundle.zip$ sudo ./awsclibundle/installi /usr/local/awsb /usr/local/bin/aws

现在,我们需要配置 AWS 设置。为此,您可以使用以下命令

aws configure

为此,它需要详细信息,例如

AWS 访问密钥 IDAWS 秘密访问密钥默认区域名称格式的默认输出

您可以从 aws 控制台获取这些详细信息。转到右上角的帐户名称,如图所示

现在,点击我的安全凭证并从左侧选择用户。按照要求添加具有详细信息的用户。

添加用户并获取访问密钥和秘密密钥。要查看新的访问密钥,请选择显示。您的凭据将如下所示

访问密钥 IDAOSAIOSFOCDD7 示例

秘密访问密钥aJuirCVtnROUN/K7MDENG/bPxRfiCYExampleKEY

AWS CLIS 参考命令

下表将提供可用于aws cli的命令参考。

aws cli 命令的名称 命令参考
createfunction createfunctionfunctionname <value>runtime <value>role <value>handler <value> [code <value>] [description <value>] [timeout <value>] [memorysize <value>] [environment <value>] [kmskeyarn <value>] [tags <value>] [zipfile <value>] [cliinputjson <value>]
listfunctions listfunctions [masterregion <value>] [functionversion <value>] [maxitems <value>] [cliinputjson <value>] [startingtoken <value>] [pagesize <value>] [generatecliskeleton <value>]
getfunction getfunctionfunctionname <value> [qualifier <value>] [cliinputjson <value>] [generatecliskeleton <value>]
getfunctionconfiguration getfunctionconfigurationfunctionname <value> [qualifier <value>] [cliinputjson <value>] [generatecliskeleton <value>]
getaccountsettings getaccountsettings [cliinputjson <value>] [generatecliskeleton <value>]
updatefunctionconfiguration updatefunctionconfigurationfunctionname <value> [role <value>] [handler <value>] [description <value>] [timeout <value>] [memorysize <value>] [vpcconfig <value>] [environment <value>] [runtime <value>] [deadletterconfig <value>] [kmskeyarn <value>] [tracingconfig <value>] [revisionid <value>] [cliinputjson <value>] [generatecliskeleton <value> >]
updatefunctioncode updatefunctioncodefunctionname <value> [zipfile <value>] [s3bucket<value>] [s3key <value>] [s3objectversion <value>] [publish |nopublish] [dryrun |nodryrun] [revisionid <value>][cliinputjson <value>][generatecliskeleton <value>]
deletefunction deletefunctionfunctionname <value> [qualifier <value>] [cliinputjson <value>] [generatecliskeleton <value>]

现在,让我们一一详细讨论这些命令。

创建函数

这个 api 将创建一个新的 lambda 函数。代码需要以 zip 格式提供。如果要创建的函数已经存在,api 将失败。请注意,函数名称区分大小写。

包含的命令

此处给出了可以与 createfunction 一起使用的命令列表

createfunction functionname <value>runtime <value>role <value>handler <value>[code <value>] [description <value>] [timeout <value>] [memorysize <value>] [environment <value>] [kmskeyarn <value>] [tags <value>] [zipfile <value>] [cliinputjson <value>]

包括的选项

您可以使用上述功能的各种选项如下

functionname (string)这需要函数的名称。名称可以是 64 位字符。

runtime(string)在这里您需要指定运行时环境,即语言选择。运行时的详细信息如下

可用选项 运行时
Python v3.6 python3.6
Python v2.7 python2.7
NodeJS v6.10 nodejs6.10
NodeJS v8.10 nodejs8.10
Java java8
C# 1 dotnetcore1.0
C# 2 dotnetcore2.0
Go go1.x

role(string)这将是 lambda 策略的名称,即赋予 lambda 函数访问其他服务的角色。它将根据指定的角色拥有权限。

handler (string)这是 lambda 代码执行将开始的处理程序的名称。

对于 nodejs,处理程序名称是我们导出的模块名称。对于java,它是packagelassname :: handler 或packagelassname对于python,处理程序是文件名。

代码(结构)AWS Lambda 代码

description (string)AWS Lambda 函数的描述

timeout (integer)超时将具有 lambda 函数必须终止执行的时间。默认为 3 秒。

memorysize (integer)这是分配给 aws lambda 函数的内存。 AWS 将根据给定的内存分配 CPU 和内存分配量。

environment (structure)它是一个具有 aws lambda 函数所需的环境详细信息的对象。

e.g : Variables = {Name1 = string, Name2 = string}

kmskeyarn (string)这是用于加密环境变量的亚马逊资源名称 (ARN)。如果未提供,它将采用默认设置进行加密。

zipfile (blob)包含代码详细信息的 zip 文件的路径。

cliinputjson (string):根据提供的 JSON 字符串进行服务操作。 JSON 字符串遵循generatecliskeleton 提供的格式。如果在命令行上提供了其他参数,则 CLI 值将覆盖 JSON 提供的值。

现在,让我们使用运行时作为 nodejs 创建一个简单的 AWS Lambda 函数,并添加一些要打印的 console.logs。

考虑一个示例代码来理解相同的

exports.handler = async (event) => {   console.log("Using aws cli");   return "Hello fr Lambda fr aws cli!"};

现在,压缩文件并将其存储为awscli.zip。

获取 ARN

对于角色,让我们使用我们创建的现有角色中的arn。要获得 ARN,您必须遵循步骤如下所示。观察随附的相应屏幕截图

步骤 1

转到 IAM 并从角色中选择您想要的角色。角色的 ARN 详细信息如下所示。在aws cli中使用Role ARN和createfunction。

这里观察到角色 arn 是:arn:aws:iam::625297745038:role/lambdaapipolicy

带有createfunction值的命令如下

aws lambda createfunction functionname "awslambdausingcli" runtime "nodejs8.10" role "arn:aws:iam::625297745038:role/lambdaapipolicy" handler "awscli.handler" timeout 5 memorysize 256 zipfile "fileb://awscli.zip"

现在,如果您在 aws cli 中运行该命令,您可以找到如下所示的输出

在 AWS 控制台中,Lambda 函数显示如下

功能的详细信息如下所示

配置细节如下

您可以测试函数并检查输出,如图所示

此处显示相应的日志输出

列表功能

此 api 提供了迄今为止在 AWS Lambda 中创建的函数列表。

包含的命令

以下是与此 API 相关的命令

listfunctions[masterregion <value>][functionversion <value>][maxitems <value>][cliinputjson <value>]

列表功能下的选项

以下是您可以在此列表功能 api 下使用的各种选项

masterregion(string)可选。需要显示功能的区域。

functionversion(string)可选。这将给出函数版本。

maxitems(integer)可选。这将按照指定的值提供项目。

cliinputjson(string)可选。将根据提供的json文件进行操作。

带有值listfunctions的命令如下

aws lambda listfunctionsmaxitems 3

该命令显示的详细信息如下

获取函数

这个 api 将提供函数的详细信息以及使用 createfunction 上传 zip 文件的 url 链接。带有 zip 详细信息的网址仅在 10 分钟内有效。

包含的命令

以下是与这个 api 相关的命令

getfunctionfunctionname <value>[qualifier <value>][cliinputjson <value>][generatecliskeleton <value>]

包括的选项

functionnameAWS Lambda 函数的名称。您还可以指定函数的 Amazon 资源名称。

qualifier(string)可选。函数版本可用于获取函数的详细信息。

具有获取函数值的命令是

aws lambda getfunctionfunctionname awslambdausingcli

命令显示详情如下

它给出了上传邮政编码的网址。在上述情况下,网址是

prod042014tasks.s3.amazonaws/snapshots/625297745038/awslambdausingcli97048f8d4a084ed999d9acb00d2063d2?versionId=d04HKvPu9S2zz8pzjbW6Rmf5o5fxnc_r&XAmzSecurityToken=FQoDYXdzEKT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaDCpTmGvtwKToPBiWcyK3A96UcJEnwvYDhMbbxu%2Bg2gffK2ocfnlEeiCHak8QqqE1RFpbKrdks9NzxP9gNbagL4M9RValxJ1a9PUY%2FOdAekscRHOiX00MVAxUlI82pKryhdOwLJWSj0uRzqvOxCcBwJenHrSNPeG6lMa2ZDo0qZFEUDONSaTg4nuSnJK1f6t3pMAKu4vF9wPvf92G%2BU60rUxwleggigISmD9l1IlZse3%2BVF1JlNuN%2F5d85v0y2Q%2F%2BO515CybcZpn91sHPYG8JMJ00LsrkQ24VU9Zz5c5QYH4JYPj0CyEgSz9b%2FMceMPpOoPUAMjctb%2FEwQqcShZeqAr9%2Fcd2ZI%2BXl2%2Bs4ri0ucgPvQQvseGIIiZbX3GqdwR2jb1nylrAEIfiuFMoSWfcFYoYtuL0MZnjGR9jy2GNkp6MB%2BlHHr7%2BnuFRUzU26rgDYmdE1wRb3%2B21Jm49WGDa9opRLvUxFaux57Or70haib2FuKzN6Gf3Vzzk5KPdWsYUpaLyf%2B1ovEytOZhB1JEXuCs%2FGIlOXS88yxT%2BpOKmyxweiezpGgI%2FAkSAQTbSRsYQKIOFyIJNHzplwrJKhy28vy60numIBIo9Zqq2AU%3D&XAmzAlgorithm=AWS4HMACSHA256&XAmzDate=20180527T112426Z&XAmzSignedHeaders=host&XAmzExpires=600&XAmzCredential=ASIAICSQHLSBWFP37U4Q%2F20180527%2Fuseast1%2Fs3%2Faws4_request&XAmzSignature=8b97e7d6d7da13313068e027894d2c8755e50a0c5a62550f55307985bdc1aa

获取功能配置

这将提供 AWS Lambda 函数的配置详细信息。

以下是与此 api 一起使用的命令

getfunctionconfigurationfunctionname <value>[qualifier <value>]

以下是与

一起使用的选项

functionname (string)aws lambda 函数的名称。您还可以指定函数的 Amazon 资源名称。

qualifier(string) −Optional.Function 版本可用于获取函数的详细信息。

具有获取函数值的命令是

aws lambda getfunctionconfigurationfunctionname awslambdausingcli

该命令显示的详细信息如下

获取帐户设置

此 api 提供帐户设置。

涉及的命令

您可以与此 api 一起使用的命令是

getaccountsettings[cliinputjson <value>][generatecliskeleton <value>]

涉及的选项

您可以在此 api 中使用以下选项

cliinputjson(string)根据提供的 json 字符串执行服务。

generatecliskeleton(string)它在不发送 API 请求的情况下打印 json 输出。

您可以使用以下命令进行 getaccountsettings

aws lambda getaccountsettings

当您执行上面给出的命令时,您可以看到以下输出

更新功能配置

此 API 有助于更新创建的 AWS Lambda 函数的配置详细信息。您可以更改内存、超时、处理程序、角色、运行时间、描述等。

涉及的命令

以下是updatefunctionconfiguration api中涉及的命令

updatefunctionconfigurationfunctionname <value>[role <value>][handler <value>][description <value>][timeout <value>][memorysize <value>][environment <value>][runtime <value>][cliinputjson <value>][generatecliskeleton <value>]

涉及的选项

以下是updatefunctionconfiguration api涉及的选项

functionnameaws lambda 函数的名称

role (string)可选。需要更新角色的 ARN。

handler (string)可选。 aws lambda 函数的处理程序详细信息。

description(string)可选。功能说明。

timeout(integer)可选。 aws lambda 函数可以终止所需的时间。

memorysize(integer)可选。这是分配给 aws lambda 函数的内存。 AWS 将根据给定的内存分配 CPU 和内存分配量。

环境(结构)可选。它是一个具有 aws lambda 函数所需的环境详细信息的对象。

e.g: Variables = {Name1 = string, Name2 = string}

runtime(string) −这里需要指定运行时环境,即语言选择。

运行时的详细信息如下表所示

可用选项 运行时
Python v3.6 python3.6
Python v2.7 python2.7
NodeJS v6.10 nodejs6.10
NodeJS v8.10 nodejs8.10
Java java8
C# 1 dotnetcore1.0
C# 2 dotnetcore2.0
go1.x

cliinputjson (string)可选。这将在提供的 json 字符串中指定的 api 上执行操作。

generatecliskeleton (string)可选。这将在不执行 api 的情况下输出所有细节的 JSON 骨架。输出可用作cliinputjson 的输入。

现在,让我们更改之前创建的 AWS Lambda 函数的内存和超时。按照下面给出的步骤并观察为此目的附加的相应屏幕截图

步骤 1

发生变化前的内存和超时如下

步骤 2

现在,使用updatefunctionconfiguration,让我们将内存和超时更改为 320MB,将超时更改为 10 秒。为此,请使用以下带有值的命令

aws lambda updatefunctionconfigurationfunctionname “awslambdusingcli” timeout 10memorysize 320

步骤 3

然后您可以看到以下输出作为显示

步骤 4

使用updatefunctionconfiguration后AWS控制台显示如下

更新功能代码

此 API 将更新现有 AWS Lambda 函数的代码。

涉及的命令

updatefunctioncodefunctionname <value>[zipfile <value>][s3bucket <value>][s3key <value>][s3objectversion <value>][cliinputjson <value>][generatecliskeleton <value>]

涉及的选项

以下是更新函数代码 API 涉及的选项

functionname(string) −aws lambda 函数的名称

zipfile (blob)可选。包含要更新的代码的 zip 文件的路径。

s3bucket(string)可选。 S3 存储桶名称,其中包含已上传代码的 zip 文件。

s3key(string)可选。必须上传的 AWS s3 对象键名称。

s3objectversion (string)可选。 AWS s3 对象版本。

cliinputjson (string)可选。这将在提供的 json 字符串中指定的 api 上执行操作。

generatecliskeleton (string)可选。这将在不执行 api 的情况下输出所有细节的 JSON 骨架。输出可用作cliinputjson 的输入。

更新后的代码如下所示

exports.handler = async (event, context) => {   console.log("Using aws cli");   console.log()   return "Hello fr Lambda fr aws cli!"};

您可以使用以下带有值的命令

aws lambda updatefunctioncodefunctionname "awslambdausingcli" zipfile "fileb://awscli.zip"

相应的输出如下所示

AWS 控制台的显示如下所示

对应的日志输出如下图

删除函数

deleteaws cli api 将删除函数 g

包含的命令

此处给出了相同的命令详细信息

deletefunctionfunctionname <value>[qualifier <value>][cliinputjson <value>][generatecliskeleton <value>]

包括的选项

此 api 中包含的选项如下所示

functionname(string)这将采用 lambda 函数名称或 aws lambda 函数的 arn。

qualifier (string)这是可选的。这里可以指定需要删除的aws lambda版本。

cliinputjson(string)根据提供的 JSON 字符串执行服务操作。 JSON 字符串遵循generatecliskeleton 提供的格式。如果在命令行上提供了其他参数,则 CLI 值将覆盖 JSON 提供的值。

generatecliskeleton(string)它在不发送 API 请求的情况下将 json 骨架打印到标准输出。

您可以为此目的使用带有值的以下命令

aws lambda deletefunctionfunctionname "lambdatestcli"

现在,观察该函数将不会出现在 AWS Lambda 函数列表中

作为AWS顶级代理商,选择天.下.数.据的优势

1、专属客服协助注册AWS,或提供注册好的账号直接使用

2、支持收U等多币种支付代付,无额外服务费用

AWS多种产品类型,更高产品租赁权限

针对大客户,AWS专属折扣优惠

5、7x24小时专属客服,在线解答各种疑问

电话40 0/2023/aws


上一篇:AWS代付业务租用AWS亚马逊云产品更省钱吗
下一篇:如何在亚马逊购买云服务器,aws亚马逊云服务器购买教程
AWSCLI aws命令行攻击 AWSCLI安装
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素