更新 Amazon S3 Storage Lens 存储统计管理工具控制面板
Amazon S3 Storage Lens 存储统计管理工具默认控制面板是 default-account-dashboard
。此控制面板由 Amazon S3 预配置,可帮助您在控制台上直观显示整个账户的聚合费用和高级指标的汇总见解和趋势。您无法修改原定设置控制面板的配置范围,但是您可以将指标选择从免费指标升级到付费的高级指标和建议,配置可选指标导出,甚至可以禁用原定设置控制面板。无法删除默认控制面板,而只能禁用它。有关更多信息,请参阅 使用 S3 控制台。
使用以下步骤在 Amazon S3 控制台中更新 Amazon S3 Storage Lens 存储统计管理工具控制面板。
步骤 1:更新控制面板范围
登录到Amazon Web Services Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/
。 -
在左侧导航窗格中,选择 Storage Lens(Storage Lens 存储统计管理工具)和 Dashboards(控制面板)。
-
请选择要编辑的控制面板,然后选择 Edit(编辑)。
此时将打开 Edit dashboard(编辑控制面板)页。
注意
不能更改以下内容:
-
控制面板名称
-
主区域
-
原定设置控制面板的控制面板范围,其范围限于整个账户的存储
-
-
(可选)在控制面板配置页面上的 General(常规)部分中,更新标签并向控制面板添加标签。
您可以使用标签来管理控制面板的权限和跟踪 S3 Storage Lens 存储统计管理工具的成本。有关更多信息,请参阅《IAM 用户指南》中的使用资源标签控制访问以及 Amazon Billing 用户指南中的 Amazon 生成的成本分配标签。
注意
您最多可以在控制面板配置中添加 50 个标签。
-
在控制面板范围部分中,执行以下操作:
-
更新希望 S3 Storage Lens 存储统计管理工具在控制面板中包含或排除的区域和桶。
注意
-
您可以包括或排除区域和桶。在组织中跨成员账户创建组织级控制面板时,此选项仅限于“区域”。
-
您最多可以选择 50 个桶来包括或排除。
-
-
更新您希望 S3 Storage Lens 存储统计管理工具包含或排除的选定区域中的桶。您可以包括或排除桶,但不能同时包括和排除桶。创建组织级控制面板时,此选项不存在。
-
步骤 2:更新指标选择
-
在指标选择部分,选择要为此控制面板聚合的指标类型。
-
要包括在桶级别聚合且可用于 14 天查询的免费指标,请选择 Free Metrics(免费指标)。
-
要启用高级指标和其他高级选项,请选择 Advanced metrics and recommendations(高级指标和建议)。这些选项包括高级前缀聚合、Amazon CloudWatch 发布和上下文建议。数据可查询 15 个月。高级指标和建议需要额外付费。有关更多信息,请参阅 Amazon S3 定价
。 有关高级指标和免费指标的更多信息,请参阅指标选择。
-
-
在 Advanced metrics and recommendations features(高级指标和建议功能)下方,选择您要启用的选项:
-
Advanced metrics(高级指标)
-
CloudWatch publishing(CloudWatch 发布)
-
Prefix aggregation(前缀聚合)
重要
如果您为 S3 Storage Lens 存储统计管理工具配置启用了前缀聚合,那么前缀级别的指标将不会发布到 CloudWatch。只有桶、账户和企业级 S3 Storage Lens 存储统计管理工具指标才会发布到 CloudWatch。
-
-
如果您启用了 Advanced metrics(高级指标),请选择要在 S3 Storage Lens 存储统计管理工具控制面板中显示的 Advanced metrics categories(高级指标类别):
-
活动指标
-
Detailed status code metrics(详细的状态代码指标)
-
Advanced cost optimization metrics(高级成本优化指标)
-
Advanced data protection metrics(高级数据保护指标)
有关指标类别的更多信息,请参阅指标类别。要获得指标的完整列表,请参阅 Amazon S3 Storage Lens 存储统计管理工具指标词汇表。
-
-
如果选择启用前缀聚合,请配置以下内容:
-
选择此控制面板的最小前缀阈值大小。
例如,5% 的前缀阈值表示将聚合构成占桶的总存储大小 5% 或更大的前缀。
-
选择前缀名称。
此设置指示评估前缀的最大级别数。前缀深度必须小于 10。
-
输入前缀分隔符字符。
这是用来标识每个前缀级别的值。Amazon S3 中的原定设置值为
/
个字符,但是您的存储结构可能会使用其他分隔符字符。
-
(可选)步骤 3:导出控制面板的指标
-
在 Metrics export(指标导出)部分中,要创建将每天放置在您选择的目标桶中的指标导出,请选择 Enable(启用)。要禁用指标导出,请选择 Disable(禁用)。
指标导出为 CSV 或 Apache Parquet 格式。它代表的数据范围与 S3 Storage Lens 存储统计管理工具控制面板数据相同,但不包含建议。
-
如果启用,请选择每日指标导出的输出格式:CSV 或 Apache Parquet。
Parquet 是 Hadoop 的开源文件格式,它以平面列格式存储嵌套数据。
-
为您的指标导出选择目标 S3 桶。
您可以在 S3 Storage Lens 存储统计管理工具控制面板的当前账户中选择桶。或者,如果您拥有目标桶权限和目标桶拥有者的账户 ID,则可以选择另一个 Amazon Web Services 账户。
-
选择目标 S3 桶(格式:
s3://
)。bucket-name
/prefix
桶必须在 S3 Storage Lens 存储统计管理工具控制面板的主区域中。S3 控制台向您显示 Amazon S3 将添加到目标桶策略的 Destination bucket permission(目标桶权限)。Amazon S3 将更新目标桶上的桶策略,以允许 S3 在该桶中放置数据。
-
(可选)要对指标导出启用服务器端加密,请选择 Specify an encryption key(指定加密密钥)。然后,选择加密类型:Amazon S3 托式管密钥(SSE-S3)或 Amazon Key Management Service 密钥(SSE-KMS)。
您可以在 Amazon S3 托管式密钥(SSE-S3)和 Amazon Key Management Service(Amazon KMS)密钥(SSE-KMS)之间进行选择。
-
(可选)要指定 Amazon KMS 密钥,必须选择 KMS 密钥或输入密钥 Amazon 资源名称(ARN)。在 Amazon KMS 密钥下,通过以下方式之一指定您的 KMS 密钥:
-
要从可用的 KMS 密钥列表中进行选择,请选择从您的 Amazon KMS keys 密钥中进行选择,并从可用密钥的列表中选择您的 KMS 密钥。
Amazon 托管式密钥 (
aws/s3
) 和您的客户自主管理型密钥都显示在此列表中。有关客户自主管理型密钥的更多信息,请参阅《Amazon Key Management Service 开发人员指南》中的客户密钥和 Amazon 密钥。注意
使用 S3 Storage Lens 存储统计管理工具进行的 SSE-KMS 加密不支持 Amazon 托管式密钥(
aws/S3
)。 -
要输入 KMS 密钥 ARN,请选择输入 Amazon KMS key ARN,然后在显示的字段中输入您的 KMS 密钥 ARN。
-
要在 Amazon KMS 控制台中创建新的客户自主管理型密钥,请选择创建 KMS 密钥。
如果您选择客户托管式密钥,则必须在 Amazon KMS 密钥策略中向 Amazon S3 Storage Lens 存储统计管理工具授予加密权限。有关更多信息,请参阅 使用 Amazon KMS key 加密您的指标导出。
有关创建 Amazon KMS key 的更多信息,请参阅 Amazon Key Management Service 开发人员指南中的创建密钥。
-
-
选择 Save changes(保存更改)。
要进一步了解您的存储,您可以创建一个或多个 S3 Storage Lens 组并将它们附加到您的控制面板。S3 Storage Lens 组是基于前缀、后缀、对象标签、对象大小、对象龄期或这些筛选条件的组合的自定义对象筛选条件。
您可以使用 S3 Storage Lens 组获得对大型共享桶(例如数据湖)的精细可见性,从而做出更明智的业务决策。例如,您可以将存储使用情况细分到一个或多个桶中各个项目和成本中心的特定对象组,从而简化存储分配并优化成本报告。
要使用 S3 Storage Lens 组,您必须升级控制面板以使用高级指标和建议。有关 S3 Storage Lens 组的更多信息,请参阅 使用 S3 Storage Lens 组筛选和汇总指标。
以下示例命令更新 Amazon S3 Storage Lens 存储统计管理工具控制面板配置。要使用这些示例,请将
替换为您自己的信息。user input placeholders
aws s3control put-storage-lens-configuration --account-id=
111122223333
--config-id=example-dashboard-configuration-id
--region=us-east-1
--storage-lens-configuration=file://./config.json
--tags=file://./tags.json
例 – 使用高级指标和建议更新默认 Amazon S3 Storage Lens 存储统计管理工具配置
以下示例显示了如何在适用于 Java 的 SDK 中使用高级指标和建议来更新默认 S3 Storage Lens 存储统计管理工具配置。
package aws.example.s3control; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.services.s3control.AWSS3Control; import com.amazonaws.services.s3control.AWSS3ControlClient; import com.amazonaws.services.s3control.model.AccountLevel; import com.amazonaws.services.s3control.model.ActivityMetrics; import com.amazonaws.services.s3control.model.BucketLevel; import com.amazonaws.services.s3control.model.Format; import com.amazonaws.services.s3control.model.Include; import com.amazonaws.services.s3control.model.OutputSchemaVersion; import com.amazonaws.services.s3control.model.PrefixLevel; import com.amazonaws.services.s3control.model.PrefixLevelStorageMetrics; import com.amazonaws.services.s3control.model.PutStorageLensConfigurationRequest; import com.amazonaws.services.s3control.model.S3BucketDestination; import com.amazonaws.services.s3control.model.SSES3; import com.amazonaws.services.s3control.model.SelectionCriteria; import com.amazonaws.services.s3control.model.StorageLensAwsOrg; import com.amazonaws.services.s3control.model.StorageLensConfiguration; import com.amazonaws.services.s3control.model.StorageLensDataExport; import com.amazonaws.services.s3control.model.StorageLensDataExportEncryption; import com.amazonaws.services.s3control.model.StorageLensTag; import java.util.Arrays; import java.util.List; import static com.amazonaws.regions.Regions.
US_WEST_2
; public class UpdateDefaultConfigWithPaidFeatures { public static void main(String[] args) { String configurationId = "default-account-dashboard"; // This configuration ID cannot be modified. String sourceAccountId = "111122223333
"; try { SelectionCriteria selectionCriteria = new SelectionCriteria() .withDelimiter("/"
) .withMaxDepth(5
) .withMinStorageBytesPercentage(10.0
); PrefixLevelStorageMetrics prefixStorageMetrics = new PrefixLevelStorageMetrics() .withIsEnabled(true) .withSelectionCriteria(selectionCriteria); BucketLevel bucketLevel = new BucketLevel() .withActivityMetrics(new ActivityMetrics().withIsEnabled(true
)) .withPrefixLevel(new PrefixLevel().withStorageMetrics(prefixStorageMetrics)); AccountLevel accountLevel = new AccountLevel() .withActivityMetrics(new ActivityMetrics().withIsEnabled(true)) .withBucketLevel(bucketLevel); StorageLensConfiguration configuration = new StorageLensConfiguration() .withId(configurationId) .withAccountLevel(accountLevel) .withIsEnabled(true); AWSS3Control s3ControlClient = AWSS3ControlClient.builder() .withCredentials(new ProfileCredentialsProvider()) .withRegion(US_WEST_2
) .build(); s3ControlClient.putStorageLensConfiguration(new PutStorageLensConfigurationRequest() .withAccountId(sourceAccountId) .withConfigId(configurationId) .withStorageLensConfiguration(configuration) ); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }
注意
高级指标和建议需支付额外费用。有关详细信息,请参阅高级指标和建议。