Doc AWS SDK 예제 GitHub 리포지토리에서 더 많은 SDK 예제를 사용할 수 있습니다. AWS
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Tools for PowerShell을 사용한 Lambda 예제
다음 코드 예제에서는 Lambda와 AWS Tools for PowerShell 함께를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.
작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 관련 시나리오의 컨텍스트에 따라 표시되며, 개별 서비스 함수를 직접적으로 호출하는 방법을 보여줍니다.
각 예시에는 전체 소스 코드에 대한 링크가 포함되어 있으며, 여기에서 컨텍스트에 맞춰 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있습니다.
주제
작업
다음 코드 예시에서는 Add-LMResourceTag
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 3개의 태그(워싱턴, 오리건, 캘리포니아)와 관련 값을 ARN으로 식별되는 지정된 함수에 추가합니다.
Add-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction" -Tag @{ "Washington" = "Olympia"; "Oregon" = "Salem"; "California" = "Sacramento" }
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 TagResource를 참조하세요.
-
다음 코드 예시에서는 Get-LMAccountSetting
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 샘플은 계정 제한과 계정 사용량을 비교하기 위해 표시됩니다.
Get-LMAccountSetting | Select-Object @{Name="TotalCodeSizeLimit";Expression={$_.AccountLimit.TotalCodeSize}}, @{Name="TotalCodeSizeUsed";Expression={$_.AccountUsage.TotalCodeSize}}
출력:
TotalCodeSizeLimit TotalCodeSizeUsed ------------------ ----------------- 80530636800 15078795
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 GetAccountSettings를 참조하세요.
-
다음 코드 예시에서는 Get-LMAlias
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 특정 Lambda 함수 별칭에 대한 라우팅 구성 가중치를 검색합니다.
Get-LMAlias -FunctionName "MylambdaFunction123" -Name "newlabel1" -Select RoutingConfig
출력:
AdditionalVersionWeights ------------------------ {[1, 0.6]}
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 GetAlias를 참조하세요.
-
다음 코드 예시에서는 Get-LMFunctionConcurrency
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 Lambda 함수에 대한 예약된 동시성을 가져옵니다.
Get-LMFunctionConcurrency -FunctionName "MylambdaFunction123" -Select *
출력:
ReservedConcurrentExecutions ---------------------------- 100
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 GetFunctionConcurrency를 참조하세요.
-
다음 코드 예시에서는 Get-LMFunctionConfiguration
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 Lambda 함수의 버전별 구성을 반환합니다.
Get-LMFunctionConfiguration -FunctionName "MylambdaFunction123" -Qualifier "PowershellAlias"
출력:
CodeSha256 : uWOW0R7z+f0VyLuUg7+/D08hkMFsq0SF4seuyUZJ/R8= CodeSize : 1426 DeadLetterConfig : Amazon.Lambda.Model.DeadLetterConfig Description : Verson 3 to test Aliases Environment : Amazon.Lambda.Model.EnvironmentResponse FunctionArn : arn:aws:lambda:us-east-1:123456789012:function:MylambdaFunction123 :PowershellAlias FunctionName : MylambdaFunction123 Handler : lambda_function.launch_instance KMSKeyArn : LastModified : 2019-12-25T09:52:59.872+0000 LastUpdateStatus : Successful LastUpdateStatusReason : LastUpdateStatusReasonCode : Layers : {} MasterArn : MemorySize : 128 RevisionId : 5d7de38b-87f2-4260-8f8a-e87280e10c33 Role : arn:aws:iam::123456789012:role/service-role/lambda Runtime : python3.8 State : Active StateReason : StateReasonCode : Timeout : 600 TracingConfig : Amazon.Lambda.Model.TracingConfigResponse Version : 4 VpcConfig : Amazon.Lambda.Model.VpcConfigDetail
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 GetFunctionConfiguration을 참조하세요.
-
다음 코드 예시에서는 Get-LMFunctionList
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 샘플은 정렬된 코드 크기로 모든 Lambda 함수를 표시합니다.
Get-LMFunctionList | Sort-Object -Property CodeSize | Select-Object FunctionName, RunTime, Timeout, CodeSize
출력:
FunctionName Runtime Timeout CodeSize ------------ ------- ------- -------- test python2.7 3 243 MylambdaFunction123 python3.8 600 659 myfuncpython1 python3.8 303 675
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 ListFunctions를 참조하세요.
-
다음 코드 예시에서는 Get-LMPolicy
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 샘플은 Lambda 함수의 함수 정책을 표시합니다.
Get-LMPolicy -FunctionName test -Select Policy
출력:
{"Version":"2012-10-17","Id":"default","Statement":[{"Sid":"xxxx","Effect":"Allow","Principal":{"Service":"sns.amazonaws.com"},"Action":"lambda:InvokeFunction","Resource":"arn:aws:lambda:us-east-1:123456789102:function:test"}]}
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 GetPolicy를 참조하세요.
-
다음 코드 예시에서는 Get-LMProvisionedConcurrencyConfig
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 Lambda 함수의 지정된 별칭에 대해 프로비저닝된 동시성 구성을 가져옵니다.
C:\>Get-LMProvisionedConcurrencyConfig -FunctionName "MylambdaFunction123" -Qualifier "NewAlias1"
출력:
AllocatedProvisionedConcurrentExecutions : 0 AvailableProvisionedConcurrentExecutions : 0 LastModified : 2020-01-15T03:21:26+0000 RequestedProvisionedConcurrentExecutions : 70 Status : IN_PROGRESS StatusReason :
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 GetProvisionedConcurrencyConfig를 참조하세요.
-
다음 코드 예시에서는 Get-LMProvisionedConcurrencyConfigList
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 Lambda 함수에 대해 프로비저닝된 동시성 구성 목록을 검색합니다.
Get-LMProvisionedConcurrencyConfigList -FunctionName "MylambdaFunction123"
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 ListProvisionedConcurrencyConfigs를 참조하세요.
-
다음 코드 예시에서는 Get-LMResourceTag
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 지정된 함수에 현재 설정된 태그와 해당 값을 검색합니다.
Get-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction"
출력:
Key Value --- ----- California Sacramento Oregon Salem Washington Olympia
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 ListTags를 참조하세요.
-
다음 코드 예시에서는 Get-LMVersionsByFunction
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 Lambda 함수의 각 버전에 대한 버전별 구성 목록을 반환합니다.
Get-LMVersionsByFunction -FunctionName "MylambdaFunction123"
출력:
FunctionName Runtime MemorySize Timeout CodeSize LastModified RoleName ------------ ------- ---------- ------- -------- ------------ -------- MylambdaFunction123 python3.8 128 600 659 2020-01-10T03:20:56.390+0000 lambda MylambdaFunction123 python3.8 128 5 1426 2019-12-25T09:19:02.238+0000 lambda MylambdaFunction123 python3.8 128 5 1426 2019-12-25T09:39:36.779+0000 lambda MylambdaFunction123 python3.8 128 600 1426 2019-12-25T09:52:59.872+0000 lambda
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 ListVersionsByFunction을 참조하세요.
-
다음 코드 예시에서는 New-LMAlias
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 지정된 버전 및 라우팅 구성에 대한 새 Lambda 별칭을 생성하여 수신하는 간접 호출 요청의 비율을 지정합니다.
New-LMAlias -FunctionName "MylambdaFunction123" -RoutingConfig_AdditionalVersionWeight @{Name="1";Value="0.6} -Description "Alias for version 4" -FunctionVersion 4 -Name "PowershellAlias"
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 CreateAlias를 참조하세요.
-
다음 코드 예시에서는 Publish-LMFunction
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1:이 예제에서는 AWS Lambda에서 MyFunction이라는 새 C#(dotnetcore1.0 런타임) 함수를 생성하여 로컬 파일 시스템의 zip 파일에서 함수에 대해 컴파일된 바이너리를 제공합니다(상대 경로 또는 절대 경로를 사용할 수 있음). C# Lambda 함수는 AssemblyName::Namespace.ClassName::MethodName 지정을 사용하여 함수에 대한 핸들러를 지정합니다. 핸들러 사양의 어셈블리 이름 (.dll 접미사 제외), 네임스페이스, 클래스 이름, 메서드 이름 부분을 적절하게 바꿔야 합니다. 새 함수에는 제공된 값으로부터 환경 변수 'envvar1' 및 'envvar2'가 설정됩니다.
Publish-LMFunction -Description "My C# Lambda Function" ` -FunctionName MyFunction ` -ZipFilename .\MyFunctionBinaries.zip ` -Handler "AssemblyName::Namespace.ClassName::MethodName" ` -Role "arn:aws:iam::123456789012:role/LambdaFullExecRole" ` -Runtime dotnetcore1.0 ` -Environment_Variable @{ "envvar1"="value";"envvar2"="value" }
출력:
CodeSha256 : /NgBMd...gq71I= CodeSize : 214784 DeadLetterConfig : Description : My C# Lambda Function Environment : Amazon.Lambda.Model.EnvironmentResponse FunctionArn : arn:aws:lambda:us-west-2:123456789012:function:ToUpper FunctionName : MyFunction Handler : AssemblyName::Namespace.ClassName::MethodName KMSKeyArn : LastModified : 2016-12-29T23:50:14.207+0000 MemorySize : 128 Role : arn:aws:iam::123456789012:role/LambdaFullExecRole Runtime : dotnetcore1.0 Timeout : 3 Version : $LATEST VpcConfig :
예제 2: 이 예제는 함수 바이너리가 먼저 Amazon S3 버킷(의도한 Lambda 함수와 동일한 리전에 있어야 함)에 업로드되고 함수 생성 시 결과 S3 객체가 참조된다는 점을 제외하면 이전 예제와 유사합니다.
Write-S3Object -BucketName amzn-s3-demo-bucket -Key MyFunctionBinaries.zip -File .\MyFunctionBinaries.zip Publish-LMFunction -Description "My C# Lambda Function" ` -FunctionName MyFunction ` -BucketName amzn-s3-demo-bucket ` -Key MyFunctionBinaries.zip ` -Handler "AssemblyName::Namespace.ClassName::MethodName" ` -Role "arn:aws:iam::123456789012:role/LambdaFullExecRole" ` -Runtime dotnetcore1.0 ` -Environment_Variable @{ "envvar1"="value";"envvar2"="value" }
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 CreateFunction을 참조하세요.
-
다음 코드 예시에서는 Publish-LMVersion
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 Lambda 함수 코드의 기존 스냅샷에 대한 버전을 생성합니다.
Publish-LMVersion -FunctionName "MylambdaFunction123" -Description "Publishing Existing Snapshot of function code as a new version through Powershell"
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 PublishVersion을 참조하세요.
-
다음 코드 예시에서는 Remove-LMAlias
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 명령에 언급된 Lambda 함수 별칭을 삭제합니다.
Remove-LMAlias -FunctionName "MylambdaFunction123" -Name "NewAlias"
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 DeleteAlias를 참조하세요.
-
다음 코드 예시에서는 Remove-LMFunction
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 특정 버전의 Lambda 함수를 삭제합니다.
Remove-LMFunction -FunctionName "MylambdaFunction123" -Qualifier '3'
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 DeleteFunction을 참조하세요.
-
다음 코드 예시에서는 Remove-LMFunctionConcurrency
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 Lambda 함수의 함수 동시성을 제거합니다.
Remove-LMFunctionConcurrency -FunctionName "MylambdaFunction123"
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 DeleteFunctionConcurrency를 참조하세요.
-
다음 코드 예시에서는 Remove-LMPermission
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 Lambda 함수의 지정된 StatementId에 대한 함수 정책을 제거합니다.
$policy = Get-LMPolicy -FunctionName "MylambdaFunction123" -Select Policy | ConvertFrom-Json| Select-Object -ExpandProperty Statement Remove-LMPermission -FunctionName "MylambdaFunction123" -StatementId $policy[0].Sid
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 RemovePermission을 참조하세요.
-
다음 코드 예시에서는 Remove-LMProvisionedConcurrencyConfig
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 특정 별칭에 대한 프로비저닝된 동시성 구성을 제거합니다.
Remove-LMProvisionedConcurrencyConfig -FunctionName "MylambdaFunction123" -Qualifier "NewAlias1"
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 DeleteProvisionedConcurrencyConfig를 참조하세요.
-
다음 코드 예시에서는 Remove-LMResourceTag
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 함수에서 제공된 태그를 제거합니다. -Force 스위치가 지정되지 않은 경우 cmdlet은 진행하기 전에 확인 메시지를 표시합니다. 태그를 제거하려면 서비스를 한 번만 직접적으로 호출하면 됩니다.
Remove-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction" -TagKey "Washington","Oregon","California"
예제 2: 함수에서 제공된 태그를 제거합니다. -Force 스위치가 지정되지 않은 경우 cmdlet은 진행하기 전에 확인 메시지를 표시합니다. 제공된 태그별로 서비스에 대한 호출은 한 번만 이루어집니다.
"Washington","Oregon","California" | Remove-LMResourceTag -Resource "arn:aws:lambda:us-west-2:123456789012:function:MyFunction"
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 UntagResource를 참조하세요.
-
다음 코드 예시에서는 Update-LMAlias
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 기존 Lambda 함수 별칭의 구성을 업데이트합니다. 트래픽의 60%(0.6)를 버전 1로 이동하도록 RoutingConfiguration 값을 업데이트합니다.
Update-LMAlias -FunctionName "MylambdaFunction123" -Description " Alias for version 2" -FunctionVersion 2 -Name "newlabel1" -RoutingConfig_AdditionalVersionWeight @{Name="1";Value="0.6}
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 UpdateAlias를 참조하세요.
-
다음 코드 예시에서는 Update-LMFunctionCode
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 지정된 zip 파일에 포함된 새 콘텐츠로 'MyFunction'이라는 함수를 업데이트합니다. C# .NET Core Lambda 함수의 경우 zip 파일에는 컴파일된 어셈블리가 포함되어야 합니다.
Update-LMFunctionCode -FunctionName MyFunction -ZipFilename .\UpdatedCode.zip
예제 2: 이 예제는 이전 예제와 유사하지만 업데이트된 코드가 포함된 Amazon S3 객체를 사용하여 함수를 업데이트합니다.
Update-LMFunctionCode -FunctionName MyFunction -BucketName amzn-s3-demo-bucket -Key UpdatedCode.zip
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 UpdateFunctionCode를 참조하세요.
-
다음 코드 예시에서는 Update-LMFunctionConfiguration
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 기존 Lambda 함수의 구성을 업데이트합니다.
Update-LMFunctionConfiguration -FunctionName "MylambdaFunction123" -Handler "lambda_function.launch_instance" -Timeout 600 -Environment_Variable @{ "envvar1"="value";"envvar2"="value" } -Role arn:aws:iam::123456789101:role/service-role/lambda -DeadLetterConfig_TargetArn arn:aws:sns:us-east-1: 123456789101:MyfirstTopic
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 UpdateFunctionConfiguration을 참조하세요.
-
다음 코드 예시에서는 Write-LMFunctionConcurrency
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 함수 전체에 대해 동시성 설정을 적용합니다.
Write-LMFunctionConcurrency -FunctionName "MylambdaFunction123" -ReservedConcurrentExecution 100
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 PutFunctionConcurrency를 참조하세요.
-
다음 코드 예시에서는 Write-LMProvisionedConcurrencyConfig
을 사용하는 방법을 보여 줍니다.
- PowerShell용 도구
-
예제 1: 이 예제에서는 함수의 별칭에 프로비저닝된 동시성 구성을 추가합니다.
Write-LMProvisionedConcurrencyConfig -FunctionName "MylambdaFunction123" -ProvisionedConcurrentExecution 20 -Qualifier "NewAlias1"
-
API 세부 정보는 AWS Tools for PowerShell Cmdlet 참조의 PutProvisionedConcurrencyConfig를 참조하세요.
-