陈奇网络工作室

自动创建AWSLambda自动化和python-s3bucketlifecycle

云计算

最近需要为备份创建几个S3 Bucket。 必须为每个新Bucket配置生命周期,并自动删除旧数据以节省空间和成本。

豆子写了简单的Lambda函数自动实现了。 每次我们创建Bucket时,他都会调用对应的API,Cloudtrail监控了这个事件后发送到Cloudwatch,Cloudwatch会自动调用我的函数创建生命周期策略。

以下是简单的屏幕截图说明。

创建新的云修补规则

对应的Lambda函数

他的默认IAM已经有访问Cloudwatch的权限。 我创建了一个新的Policy,并将其分配给他的IAM role,以便此lambda函数可以访问Cloudwatch和S3。

接下来是Python代码

导入日志

import boto3

frombotocore.exceptionsimportclienterror

lifecycle_config_settings={

\\\& #039; Rules\\\& #039; [

{\\\& quot; id\\& quot;\& quot; 删除规则\ & amp; quot;

\\\& #039; filter\\& quot; {\\& quot; prefix\\& quot;\& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; \& quot; 使用,

\\\& quot; status\\& quot;\& quot; 启用\ & amp; quot;

\\\& #039; expiration\\& quot; {\\& quot; days\\& quot; 100}

]}

ef put _ bucket _ lifecycle_configuration ( bucket _ name,life cycle _ config ) :

setthelifecycleconfigurationofanamazons3bucket

: param bucket_name: string

: param life cycle _ config:dictoflifecycleconfigurationsettings

: return:trueiflifecycleconfigurationwasset,otherwise False

# Set the configuration

S3=botO3.client ( ( () ) ) ( S3 ) ( ( ) ) ) ) ) ) ) ) ) ) ) ) ) ) 652

try :

S3.put _ bucket _ life cycle _ configuration ( bucket=bucket _ name,

life cycle configuration=life cycle _ config )

except ClientError as e :

返回假

返回真

eflambda_handleR111(event,context ) :

# TODO implement

test _ bucket _ name=event.get (\\ & amp; #039; 详细信息\\& amp; quot; get(\( ) ) ( (请求参数) ) ) )

打印(事件)。

print(event.get ( ( ( ) detail ( ( ) ) ) ) ) ( buckks ) ) ) ) ) ) ) bucket )

success=put _ bucket _ life cycle _ configuration ( test _ bucket _ name,lifecycle_config_settings ) )。

if success :

#logging.info ( ( ( ) ( thelifecycleconfigurationwassetfor ( test _ bucket _ name ) ) ) ) ) ) )。

print ( ( ) ) ( thelifecycleconfigurationwassetfor ( test _ bucket _ name ) ) ) ) ) ) ) ) 652 )

虽然是实际执行的效果,但是当我创建新的Bucket时,他会自动调用此函数并添加policy。

以下是云watch日志

这是新Bucket的生命周期策略

详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn

相关推荐

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3