如何部署CortexXDR经纪人VM在AWS使用 AWS CLI
2468
Created On 03/25/22 16:08 PM - Last Modified 04/23/24 18:34 PM
Objective
我们将在 Ubuntu Linux 上使用 aws cli。使用 aws cli 我们将连接到AWS并执行所需的操作以上传 BrokerVM VMDK文件,转换VMDK进入AWS AMI图像。然后我们从新创建的 Broker 启动一个 EC2 实例VM AMI图像。
Environment
AWS EC2实例
Ubuntu 操作系统
Procedure
创建一个IAM具有适当权限的用户。
我们将使用登录AWS身份和访问管理(IAM ) 用户,该用户需要以下权限IAM policy使用VM进出口:
- 去IAM>> 访问管理 >> 用户 >> 添加用户
- 启用选项:访问密钥 - 编程访问.然后点击下一步:权限
- 选择直接附加现有政策.然后点击创造policy
- 在里面JSON选项卡,将以下配置复制并粘贴到其中。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:PutObject" ], "Resource": ["arn:aws:s3:::mys3bucket","arn:aws:s3:::mys3bucket/*"] }, { "Effect": "Allow", "Action": [ "ec2:CancelConversionTask", "ec2:CancelExportTask", "ec2:CreateImage", "ec2:CreateInstanceExportTask", "ec2:CreateTags", "ec2:DescribeConversionTasks", "ec2:DescribeExportTasks", "ec2:DescribeExportImageTasks", "ec2:DescribeImages", "ec2:DescribeInstanceStatus", "ec2:DescribeInstances", "ec2:DescribeSnapshots", "ec2:DescribeTags", "ec2:ExportImage", "ec2:ImportInstance", "ec2:ImportVolume", "ec2:StartInstances", "ec2:StopInstances", "ec2:TerminateInstances", "ec2:ImportImage", "ec2:ImportSnapshot", "ec2:DescribeImportImageTasks", "ec2:DescribeImportSnapshotTasks", "ec2:CancelImportTask" ], "Resource": "*" } ] }
Note: Change the mys3bucket to * if you want it to apply for all buckets, or change it to the proper S3 bucket name.
- 单击下一步,直到您指定Policy姓名。然后点击创造Policy.
- 回到IAM用户配置,选择Policy你刚刚创建。
- 完成用户创建。
- 确认用户已创建后,记下以下用户信息。稍后您将需要它。
- 用户名
- 访问密钥 ID
- 秘密访问密钥
设置AWS CLI在Ubuntu中
安装AWS CLI并配置它IAM我们之前刚刚创建的用户。
- 使用管理员权限登录服务器并安装 awscli
sudo bash apt install awscli
- 运行此命令以配置 awscli
aws configure
指定正确的配置
-AWS访问密钥ID:
-AWS秘密访问密钥:
- 默认区域名称:
- 我们现在已准备好在 aws cli 中执行命令。
创建一个AMI使用 Broker 的图像VM VMDK文件
我们需要下载 BrokerVM从CortexXDR网络控制台。然后将其导入您的 S3 存储桶。然后我们将转换VMDK在 S3 存储桶中AMI图像。
- 前往CortexXDR网络控制台>>设置>>配置>>数据经纪人>>代理虚拟机>>下载>>VMDK .
- 下载VMDK文件(例如 broker-vm-15.0.62.vmdk)到您的 ubuntu 计算机。
- 在里面AWS控制台,导航到服务 >> 存储 >> S3。点击创建桶.提供唯一名称以创建 S3 存储桶并使用默认配置。
- 运行此命令将 vmdk 文件复制到 S3 存储桶中。
aws s3 cp ~/<path/to/broker-vm-version.vmdk> s3://<your_bucket/broker-vm-version.vmdk>
- 准备以下配置文件
配置.json
在 ubuntu 中运行此命令:
vi configuration.json
在 json 文件中输入以下信息。在S3桶, 只需使用 Bucket Name 而不是它的ARN姓名。S3键是个VMDK文件名。替换里面的名字<>因此。
[ { "Description":"Cortex XDR VM Broker 15.0.62", "Format":"vmdk", "UserBucket":{ "S3Bucket":"<your_bucket>", "S3Key":"<broker-vm-version.vmdk>" } } ]
- 相信-policy .json
- 在 ubuntu 中运行此命令:
vi trust-policy.json
将以下信息复制并粘贴到 json 文件中。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "vmie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals":{ "sts:Externalid": "vmimport" } } } ] }
- 在 ubuntu 中运行此命令:
- 角色-policy .json
- 在 ubuntu 中运行此命令:
vi role-policy.json
将以下信息复制并粘贴到 json 文件中。更换<磁盘映像文件桶>和<导出桶>使用正确的存储桶名称。您可以指定 * 以访问所有 S3 存储桶
{ "Version":"2012-10-17", "Statement":[ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::<disk-image-file-bucket>", "arn:aws:s3:::<disk-image-file-bucket>/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:GetBucketAcl" ], "Resource": [ "arn:aws:s3:::<export-bucket>", "arn:aws:s3:::<export-bucket>/*" ] }, { "Effect": "Allow", "Action": [ "ec2:ModifySnapshotAttribute", "ec2:CopySnapshot", "ec2:RegisterImage", "ec2:Describe*" ], "Resource": "*" } ] }
- 在 ubuntu 中运行此命令:
- 使用 create-role 命令创建一个名为 vmimport 的角色并授予VM导入/导出访问它。
aws iam create-role --role-name vmimport --assume-role-policy-document "file://trust-policy.json"
- 使用 put-role-policy命令附加policy到上面创建的 vmimport 角色。
aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document "file://role-policy.json"
- 创建一个AMI图片来自VMDK文件。
aws ec2 import-image --description "Cortex XDR VM Broker 15.0.62" --disk-containers "file://configuration.json"
- 要跟踪进度,请使用输出中的任务 ID 值并运行:
aws ec2 describe-import-image-tasks --import-task-ids import-ami-<task-id>
- 任务完成后,AMI图像可以使用了。
启动经纪人VM实例在AWSEC2
您可以使用以下命令启动 EC2 实例AMI图像已创建。
- 导航服务→ EC2 →图片→ AMIs .你会看到AMI图片添加到这里。
- 去EC2 →实例. 搜索你的AMI图像和发射文件。
- 在 Launch Instance Wizard 中,根据您公司的要求定义实例并发射.
- 定义HTTPS和SSH访问您的实例。
右键单击您的实例并导航到联网→更改安全组.
在里面更改安全组弹出,选择HTTPS能够访问经纪人VM网络UI, 和SSH以便在故障排除时允许远程访问。 确保仅允许这些连接来自安全网络的代理。 - 验证经纪人VM已正确启动
找到您的实例,右键单击并导航到实例设置 → 获取实例截图.
您被定向到您的经纪人VM控制台列出您的经纪人详细信息。
配置代理VM并注册CortexXDR.
经纪人注册VM到CortexXDR可以从 Broker 完成VM网络控制台
- 从获取注册令牌CortexXDRWeb 控制台 >> 设置 >> 配置 >> 数据代理 >> 代理虚拟机 >>生成令牌
- 确定IPEC2 实例的地址并用它来打开 BrokerVM Web 控制台(例如https://ip_地址) .
- 通过输入令牌信息完成注册过程。