天下数据客服中心

 

美国服务器优惠信息

美国服务器租用

热门产品推荐

香港服务器租用

AWS CLI 创建和部署安装教程

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)

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

安装 AWS

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

环境路径

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

 

 

aws--version

 

 

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

AWS Cli 版本

对于 Linux/Mac

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

 

 

$ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip"-o "awscli-bundle.zip"
$ unzip awscli-bundle.zip
$ sudo ./awscli-bundle/install-i /usr/local/aws-b /usr/local/bin/aws

 

 

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

 

 

aws configure

 

 

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

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

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

Helpful Tips

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

安全凭证

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

访问密钥 ID-AOSAIOSFOCDD7 示例

秘密访问密钥-aJuirCVtnROUN/K7MDENG/bPxRfiCYExampleKEY

访问键

AWS CLIS 参考命令

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

aws cli 命令的名称 命令参考
create-function create-function--function-name <value>--runtime <value>--role <value>--handler <value> [--code <value>] [--description <value>] [--timeout <value>] [--memory-size <value>] [--environment <value>] [--kms-key-arn <value>] [--tags <value>] [--zip-file <value>] [--cli-input-json <value>]
list-functions list-functions [--master-region <value>] [--function-version <value>] [--max-items <value>] [--cli-input-json <value>] [--starting-token <value>] [--page-size <value>] [--generate-cli-skeleton <value>]
get-function get-function--function-name <value> [--qualifier <value>] [--cli-input-json <value>] [--generate-cli-skeleton <value>]
get-function-configuration get-function-configuration--function-name <value> [--qualifier <value>] [--cli-input-json <value>] [--generate-cli-skeleton <value>]
get-account-settings get-account-settings [--cli-input-json <value>] [--generate-cli-skeleton <value>]
update-function-configuration update-function-configuration--function-name <value> [--role <value>] [--handler <value>] [--description <value>] [--timeout <value>] [--memory-size <value>] [--vpc-config <value>] [--environment <value>] [--runtime <value>] [--dead-letter-config <value>] [--kms-key-arn <value>] [--tracing-config <value>] [--revision-id <value>] [--cli-input-json <value>] [--generate-cli-skeleton <value> >]
update-function-code update-function-code--function-name <value> [--zip-file <value>] [--s3-bucket<value>] [--s3-key <value>] [--s3-object-version <value>] [--publish |--no-publish] [--dry-run |--no-dry-run] [--revision-id <value>][--cli-input-json <value>][--generate-cli-skeleton <value>]
delete-function delete-function--function-name <value> [--qualifier <value>] [--cli-input-json <value>] [--generate-cli-skeleton <value>]

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

创建函数

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

包含的命令

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

 

 

create-function 
--function-name <value>
--runtime <value>
--role <value>
--handler <value>
[--code <value>] 
[--description <value>] 
[--timeout <value>] 
[--memory-size <value>] 
[--environment <value>] 
[--kms-key-arn <value>] 
[--tags <value>] 
[--zip-file <value>] 
[--cli-input-json <value>]

 

 

包括的选项

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

--function-name (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,它是package.classname :: handler 或package.classname对于python,处理程序是文件名。

--代码(结构)-AWS Lambda 代码

--description (string)-AWS Lambda 函数的描述

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

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

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

 

 

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

 

 

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

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

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

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

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

 

 

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

 

 

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

获取 ARN

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

步骤 1

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

Summary Cli

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

带有 create-function 值的命令如下-

 

 

aws lambda create-function 
--function-name "awslambdausingcli" 
--runtime "nodejs8.10" 
--role "arn:aws:iam::625297745038:role/lambdaapipolicy" 
--handler "awscli.handler" 
--timeout 5 
--memory-size 256 
--zip-file "fileb://awscli.zip"

 

 

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

Command Cli

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

Cli 函数

功能的详细信息如下所示-

Cli 代码

配置细节如下-

Cli 角色

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

Cli 执行

此处显示相应的日志输出-

Cli 输出

列表功能

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

包含的命令

以下是与此 API 相关的命令-

 

 

list-functions
[--master-region <value>]
[--function-version <value>]
[--max-items <value>]
[--cli-input-json <value>]

 

 

列表功能下的选项

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

--master-region(string)-可选。需要显示功能的区域。

--function-version(string)-可选。这将给出函数版本。

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

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

带有值 list-functions的命令如下-

 

 

aws lambda list-functions--max-items 3

 

 

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

Cli Display

获取函数

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

包含的命令

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

 

 

get-function
--function-name <value>
[--qualifier <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

 

 

包括的选项

--function-name-AWS Lambda 函数的名称。您还可以指定函数的 Amazon 资源名称。

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

具有获取函数值的命令是-

 

 

aws lambda get-function--function-name awslambdausingcli

 

 

命令显示详情如下-

Option Included

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

 

 

https://prod-04-2014-
tasks.s3.amazonaws.com/snapshots/625297745038/awslambdausingcli-97048f8d-4a08
-4ed9-99d9-acb00d2063d2?versionId=d04HKvPu9S2zz8pzjbW6Rmf5o5fxnc_r&X-Amz-Security
-Token=FQoDYXdzEKT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaDCpTmGvtwKToPBiWcyK3A96UcJEnwvYDhMbbxu
%2Bg2gffK2ocfnlEeiCHak8QqqE1RFpbKrdks9NzxP9gNbagL4M9RValxJ1a9PUY%2FOdAekscRHOiX00MVAxUlI8
2pKryhdOwLJWSj0uRzqvOxCcBwJenHrSNPeG6lMa2ZDo0qZFEUDONSaTg4nuSnJK1f6t3pMAKu4vF9wPvf92G%2BU
60rUxwleggigISmD9l1IlZse3%2BVF1JlNuN%2F5d85v0y2Q%2F%2BO515CybcZpn91sHPYG8JMJ00LsrkQ2Ww4VU
9Zz5c5QYH4JYPj0CyEgSz9b%2FMceMPpOoPUAMjctb%2FEwQqcShZeqAr9%2Fcd2ZI%2BXl2%2Bs4ri0ucgPvQQvs
eGIIiZbX3GqdwR2jb1nylrAEIfiuFMoSWfcFYoYtuL0MZnjGR9jy2GNkp6MB%2BlHHr7%2BnuFRUzU26rgDYmdE1w
Rb3%2B21Jm49WGDa9opRLvUxFaux57Or70haib2FuKzN6Gf3Vzzk5KPdWsYUpaLyf%2B1ovEytOZhB1JEXuCs%2FG
IlOXS88yxT%2BpOKmyxweiezpGgI%2FAkSAQTbSRsYQKIOFyIJNHzplwrJKhy28vy60numIBIo9Zqq2AU%3D
&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20180527T112426Z&X-Amz-
SignedHeaders=host&X-Amz-Expires=600&X-Amz-
Credential=ASIAICSQHLSBWFP37U4Q%2F20180527%2Fus-
east-1%2Fs3%2Faws4_request&X-Amz-Signature=
8b97e7d6d7da13313068e027894d2c875be5e50a0c5a62550f55307985bdc1aa

 

 

获取功能配置

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

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

 

 

get-function-configuration
--function-name <value>
[--qualifier <value>]

 

 

以下是与

一起使用的选项

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

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

具有获取函数值的命令是-

 

 

aws lambda get-function-configuration--function-name awslambdausingcli

 

 

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

获取函数。

获取帐户设置

此 api 提供帐户设置。

涉及的命令

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

 

 

get-account-settings
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

 

 

涉及的选项

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

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

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

您可以使用以下命令进行 get-account-settings-

 

 

aws lambda get-account-settings

 

 

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

Option Involved

更新功能配置

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

涉及的命令

以下是update-function-configuration api中涉及的命令-

 

 

update-function-configuration
--function-name <value>
[--role <value>]
[--handler <value>]
[--description <value>]
[--timeout <value>]
[--memory-size <value>]
[--environment <value>]
[--runtime <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

 

 

涉及的选项

以下是update-function-configuration api涉及的选项-

--function-name- aws lambda 函数的名称

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

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

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

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

--memory-size(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

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

--generate-cli-skeleton (string)- 可选。这将在不执行 api 的情况下输出所有细节的 JSON 骨架。输出可用作 --cli-input-json 的输入。

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

步骤 1

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

超时

步骤 2

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

 

 

aws lambda update-function-configuration--function-name “awslambdusingcli” 
--timeout 10--memory-size 320

 

 

步骤 3

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

Cli 更新

步骤 4

使用 update-function-configuration后AWS控制台显示如下-

Cli 配置

更新功能代码

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

涉及的命令

 

 

update-function-code
--function-name <value>
[--zip-file <value>]
[--s3-bucket <value>]
[--s3-key <value>]
[--s3-object-version <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

 

 

涉及的选项

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

--function-name(string) − aws lambda 函数的名称

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

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

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

--s3-object-version (string)- 可选。 AWS s3 对象版本。

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

--generate-cli-skeleton (string)- 可选。这将在不执行 api 的情况下输出所有细节的 JSON 骨架。输出可用作--cli-input-json 的输入。

更新后的代码如下所示-

 

 

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

 

 

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

 

 

aws lambda update-function-code--function-name "awslambdausingcli" 
--zip-file "fileb://awscli.zip"

 

 

相应的输出如下所示-

Cli 目的

AWS 控制台的显示如下所示-

AWS Cli 控制台

对应的日志输出如下图-

Cli 日志

删除函数

delete aws cli api 将删除函数 g

包含的命令

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

 

 

delete-function
--function-name <value>
[--qualifier <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

 

 

包括的选项

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

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

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

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

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

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

 

 

 

aws lambda delete-function--function-name "lambdatestcli"

 

 

 

删除函数

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

Cli 关键字

 

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

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

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

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

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

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

详询电话40 0-63 8-88 08 官网:https://www.idCbest.com/2023/aws.asp

本文链接:https://www.idcbest.com/cloundnews/11008952.html



天下数据手机站 关于天下数据 联系我们 诚聘英才 付款方式 帮助中心 网站备案 解决方案 域名注册 网站地图

天下数据18年专注海外香港服务器、美国服务器、海外云主机、海外vps主机租用托管以及服务器解决方案-做天下最好的IDC服务商

《中华人民共和国增值电信业务经营许可证》 ISP证:粤ICP备07026347号

朗信天下发展有限公司(控股)深圳市朗玥科技有限公司(运营)联合版权

深圳总部:中国.深圳市南山区深圳国际创新谷6栋B座10层 香港总部:香港上環蘇杭街49-51號建安商業大廈7樓

7×24小时服务热线:4006388808香港服务电话:+852 67031102

本网站的域名注册业务代理北京新网数码信息技术有限公司的产品

工商网监图标