问题标签 [amazon-systems-manager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-web-services - 使用亚马逊信任服务证书
我想在我自己的本地服务器上设置系统管理器。根据 AWS SSM 文档,我必须使用 AWS Certificate Manager 安装并启用来自 Amazon Trust Services 的证书。我认为这份文件很旧,并且显示了许多不正确的说明。我在那里找不到与 Amazon Trust Services 相关的任何内容,也找不到使用这些证书的说明。谁能给我任何帮助?
python - AWS Systems Manager“进行中”命令限制为 5 个?
所以首先,我四处寻找关于我面临的问题的现有线程,但我没有找到任何东西。我也在AWS 论坛上发布了这个,但没有得到任何答复。如果这里已经有一个现有的线程,我很抱歉。此外,我将为即将发布的相对较长的帖子道歉。
现在,我要做的是使用AWS-RunShellScript 文档运行同一个应用程序的多个(阻塞)进程。问题是,我不能使用这种方法启动超过5 个进程。如果我通过 SSH 甚至手动启动它们,我可以毫无问题地启动几十个。
我使用的实例是Ubuntu。我正在使用Python 3.7.4进行 AWS 资源操作,但在使用AWS 控制台时也会发生同样的情况。
每个命令通常会阻塞终端(即阻止您在终端的该实例中发出进一步的命令,如果您要手动执行) - 这反过来会设置其状态,如 AWS SSM - In Progress所见。从本质上讲,从 AWS SSM 的角度来看,该命令是不完整的,直到进程被终止或停止(更多内容见下文)。
问题是我可以通过 SSM 运行多达4 个进程,并且仍然能够使用 SSM 操作它们(杀死、检查等)——这意味着最多有4 个命令In Progress。但是,当我启动第五个时,虽然它们都继续工作,但我不能再使用 SSM,没有其他命令被执行(无论是新进程还是任何其他命令)
重现此问题的最简单方法是通过AWS-RunShellScript文档发送5 个简单的sleep 60命令,然后尝试任何新命令 - 您会在 SSM 中注意到它们将弹出In Progress,但如果您跟踪 amazon-ssm- agent.log文件,实际上不会执行任何新命令。更奇怪的是,您会注意到日志在此块之后停止:
在此之后将不再处理任何命令,也不会记录更多信息。但是,使用我们的示例,当睡眠结束时,一旦打开另一个插槽,就会执行QUEUED命令(假设您一次只能排队5 个命令,我相信是这种情况,但没有提到)。
注意:正如我提到的AWS-RunShellScript文档一样, AWS-RunRemoteScript文档也会出现同样的问题。
由于我必须提供一些代码,请使用Python从上述示例中找到以下片段:
我希望能够通过 SSH 或手动运行尽可能多的阻塞命令(这比5多得多),但是要么我在 SSM 方面做错了事,要么 AWS SSM 受到限制。
amazon-web-services - 如何在 CloudFormation 中使用预定义的 SSM Windows 补丁基准
我正在 CloudFormation 中创建 Systems Manager 补丁基准,以自动为我的 Windows EC2 实例应用操作系统更新:
但是,我可以看到有一个预定义的基线可以完成大部分配置。我想使用这个预定义的基线而不是创建自己的基线,但我在 CloudFormation 的AWS::SSM::PatchBaseline
.
以前有没有人这样做过,或者它可能只能通过控制台获得?
amazon-web-services - 如何建立 AWs Systems Manager PortForwarding 会话?未知会话类型端口
我正在尝试对 AWS Systems Manager Session Manager Port Forwarding 会话进行 POC,但即使启动正常会话,我似乎也无法启动 PortForwarding 会话。
会话开始并按预期工作 aws ssm start-session --target i-xxxxxxxxxxx
IAM 角色具有 AWS 策略 AmazonSSMManagedInstanceCore 和会话管理器策略
我希望会话建立隧道并开始将端口 80 转发到我的本地端口 3001
相反,我收到以下错误:
amazon-web-services - 如何在 SSM 文档中使用 StringMap 参数?
我在 SSM 文档中有以下步骤。调用的结果是一个 Json,所以我想将它解析为一个 stringMap(这似乎是它的正确类型),而不是为我想要引用的每个变量创建一个输出
我尝试将其引用为:
和
在这两种情况下,我都会收到一条错误消息,指出从未定义过变量
这是实际的消息:
步骤在验证和解析步骤输入时失败。无法解析输入:GetLoadBalancerProperties.Description["LoadBalancerName"] 键入字符串。GetLoadBalancerProperties.Description["LoadBalancerName"] 未在自动化文档中定义。有关详细诊断信息,请参阅自动化服务故障排除指南。
amazon-web-services - 尽管有策略,CloudFormation 仍无法访问模板中的 SSM 参数
我正在尝试部署一个 CloudFormation 模板,该模板使用此博客文章中描述的方法从 SSM 中提取一些参数:https ://aws.amazon.com/blogs/mt/integrating-aws-cloudformation-with-aws-systems -manager-parameter-store/
CF 模板的参数部分的相关摘录是:
但是,当我尝试部署它时(通过 CodePipeline)出现以下错误:
我有一个 CloudFormation 的角色和策略设置,其中包括以下部分以授予对 SSM 中某些参数命名空间的访问权限:
这些似乎已经应用得很好,基于使用
因此,我正在使用的角色应该具有获取相关参数所需的访问权限,但它不起作用,我没有东西可以检查。
amazon-web-services - 有没有办法使用 SSM 参数为 CodePipeline 中的 S3 部署提供路径
因此,我有一个简单的 CodePipeline 设置,它使用 CodeBuild 将一些工件放在一起,然后配置 CloudFormation 堆栈。
创建的资源之一是用于存储静态文件的 S3 存储桶。它还使用存储桶的名称创建一个 SSM 参数。
目前,要部署到存储桶,我正在使用 S3 阶段解压缩初始文件集。不幸的是,我只能弄清楚如何手动设置存储桶。如果堆栈已经配置好,但如果堆栈是从新创建的(分配了新的存储桶名称)则失败。
有没有办法可以使用 SSM 参数作为我没有看到的这个阶段的一部分?
amazon-ec2 - Windows 的 AWS SSM ping 状态连接丢失
嗨,我正在尝试使用 AWS 系统管理器对 ec2 实例执行修补活动,但无法执行活动,因为在 SSM 托管实例面板中,它显示 ping 状态的“连接丢失”。我该如何解决这个问题?
amazon-web-services - AWS Systems Manager 命令:手动执行时有效,运行命令无效
我正在我的 EC2 实例上执行一个脚本,该脚本将自动恢复数据库。如果我远程进入实例并手动执行相同的 ps1 脚本,它就可以工作。所有 SQL 服务都在运行。但是,如果我从系统管理器执行它,我会收到错误消息:
关于可能导致此问题的原因或调试此问题的步骤的任何线索?谢谢。
PS1 脚本: