java - 如何获取 EC2 Windows 实例 AWS 上的用户数
问题描述
我正在尝试将一些 AWS 功能合并到我的 JSF 应用程序中。我有多个运行 windows 服务器的 EC2 实例,我想知道每个实例连接了多少 windows 用户,以及他们是否正在积极使用系统。
该信息将进一步用于动态创建和终止实例。我尝试过使用 ELB,但没有衡量连接的用户数量以及它们是否处于活动状态的指标。
由于某些应用程序限制,目前我正在使用 Java AWS SDK 1.11.657。鉴于我有我的实例列表以及创建和终止它们的权力,我将如何查找连接到每个实例的用户数量?没有使用 Java SDK 在线找到任何东西。谢谢你。
解决方案
您可以使用远程桌面服务 API/SDK 或 PowerShell cmdlet ( Get-RDUserSession ) 来确定活动 RDP 会话的计数。据称,还有一个更复杂的跨服务器 PowerShell 脚本。
要在 Windows 实例上远程调用 PowerShell 脚本,您可以使用 SSM Run Command。这是使用awscli执行此操作的示例:
aws ssm send-command \
--document-name "AWS-RunShellScript" \
--comment "List Windows services" \
--instance-ids "i-1234567890,i-0987654321" \
--parameters commands="service --status-all" \
--output text
请注意,您的 Windows 实例需要提前设置以支持此功能,因此请参阅本教程。它可能是面向 Linux 的,但希望这能让您朝着正确的方向开始。
推荐阅读
- angular - 单击提交按钮无法将我的文件发布或提交到服务器
- java - BinaryOperator 的身份
- python-3.x - 在 selenium python 中检测浏览器的语言?
- reactjs - ReactJs redux 表单:传递给表单的初始值不显示
- java - 带有thymeleaf的Java spring-boot登录示例代码
- go - golang 模块和本地包
- javascript - SAPUi5 TypeError:I.fFunction.call 不是函数
- javascript - cytoscape.js 如何在 div 中显示节点?
- vb.net - 如何通过字符串从不同的项目/程序集中打开表单?
- javascript - 直到 N 个与 RXJS 相同的数字?