此外,该解决方案使用最近发布的 AWS参数和秘密Lambda扩展 调用Veeam配置器功能时检索凭据。这样可以确保凭据安全,并使随后的凭据轮换很容易实现。例如,如果您要在Veeam控制台上旋转用户凭据,则只需使用新密码更新AWS Secrets Manager中的秘密,并且在下次调用该函数时,它将具有有效的凭据来完成其工作—全部,而无需在模板或代码中以纯文本形式公开它们。
解决方案要考虑的另一个考虑因素是如何访问REST API。如果Veeam控制台和REST API只能从内部网络访问(如数据保护解决方案常见),则Veeam配置器功能必须在该网络内运行才能进行API调用。该功能还需要访问AWS Secrets Manager才能访问凭据,并需要访问Amazon S3以将响应发送到CloudFormation。
因此,Veeam配置器功能已配置为连接到 亚马逊虚拟私有云(Amazon VPC),和 Lambdas堆栈 创造一个 VPC端点 让AWS Secrets Manager对该功能进行私人访问。这使该功能可以在专用网络 拉脱维亚电话号码列表 中正常运行,并满足安全最佳实践。
工作原理– CloudFormation StackSets
解决方案的第二部分是 角色堆 其中包含:
一个名为IAM的角色 VeeamEc2Role 以及相关的政策。
一个名为IAM的角色 VeeamWorkerRole,相关策略以及此角色的实例配置文件。
类型“的每个角色的自定义资源自定义:: RandomExtIdGenerator ”以生成外部ID。
类型“的每个角色的自定义资源自定义:: VeeamAwsConfigurator ”调用 VeeamConfiguratorLambda 将角色添加到Veeam Backup的功能 对于AWS。
如前所述, CloudFormation堆栈集 用于在组织成员帐户中创建这些资源。这使部署过程非常简单,使您可以利用AWS组织与CloudFormation之间的集成。
例如,创建堆栈集时,将定义将在其中创建堆栈的目标。目标可以是整个组织,也可以是组织单位(OU),使您可以控制这些角色的创建位置。您还可以指定将帐户添加到部署目标时是自动部署还是手动部署堆栈。
最后,如果需要对这些角色进行任何更改,例如在将来的发行版中添加支持新服务的权限,则可以使用添加的权限更新模板并更新堆栈集以将更改推广到所有帐户。最小的努力。
创建堆栈集并定义目标和部署选项后,这些角色将在帐户中创建并添加到Veeam备份中 对于AWS 控制台。您现在可以登录到Veeam备份 对于AWS 并开始使用这些角色来创建备份策略。
结论
将本机AWS服务与Veeam REST API一起使用为自动化和编排创造了巨大的机会。该解决方案只是当您以代码形式管理备份并将平台的功能与Veeam的功能结合在一起以使数据保护安全且简单时可以完成的工作的一个示例。
最后,请随时通过分叉来定制和调整此解决方案以适应您的需求 GitHub上的回购。如果您添加了您认为可以使更大社区受益的增强功能,请提交拉动请求以审查您的更改并将其合并回主回购中。