Hướng Dẫn Chạy Máy Chủ MCP Quản Lý Chi Phí AWS Tại Nhà Với Q CLI
Giới Thiệu
Trong bài viết này, chúng ta sẽ tìm hiểu cách chạy Máy Chủ Quản Lý Chi Phí và Thanh Toán AWS (MCP) tại nhà và kết nối nó với Amazon Q Developer CLI để truy vấn dữ liệu chi phí AWS bằng ngôn ngữ tự nhiên. Bạn sẽ có thể đặt các câu hỏi như:
- “Chi phí AWS của tôi trong tháng trước theo dịch vụ là bao nhiêu?”
- “Hiển thị chi phí CloudFront phân loại theo loại sử dụng.”
- “So sánh chi phí EC2 với S3 trong 6 tháng qua.”
Bài viết này sẽ cung cấp hướng dẫn chi tiết từng bước, từ các yêu cầu trước khi bắt đầu đến cách cấu hình và chạy máy chủ MCP.
1. Các Yêu Cầu Trước Khi Bắt Đầu
Trước khi bắt đầu, bạn cần chuẩn bị một số thứ sau:
- Tài khoản AWS: Đảm bảo rằng bạn đã kích hoạt Cost Explorer.
- Cài đặt AWS CLI: Phải được cài đặt và cấu hình (sử dụng
aws configure). - Python 3.10 trở lên: Để chạy máy chủ MCP.
- uv / uvx: Là gói chạy từ Astral.
- Cài đặt Amazon Q Developer CLI.
- Chính sách IAM: Có quyền đọc cho các dịch vụ sau:
- Cost Explorer (
ce:*) - Budgets (
budgets:*) - Compute Optimizer (
compute-optimizer:*)
- Cost Explorer (
- (Tùy chọn) S3 + Athena + Glue cho Storage Lens.
Cài Đặt uv (Astral)
Chạy các lệnh sau để cài đặt:
bash
sudo apt update
sudo apt install -y curl unzip
curl -LsSf https://astral.sh/uv/install.sh | sh
2. Cấu Hình Máy Chủ MCP
Tạo file cấu hình tại ~/.aws/amazonq/mcp.json với nội dung như sau:
json
{
"mcpServers": {
"awslabs.billing-cost-management-mcp-server": {
"command": "uvx",
"args": [
"awslabs.billing-cost-management-mcp-server@latest"
],
"env": {
"AWS_PROFILE": "default",
"AWS_REGION": "us-east-1"
},
"disabled": false,
"autoApprove": []
}
}
}
Lưu ý: Thay thế "default" bằng tên profile AWS của bạn nếu khác.
3. Chạy Máy Chủ MCP (Kiểm Tra Thủ Công)
Để khởi động máy chủ MCP, sử dụng lệnh sau:
bash
uvx awslabs.billing-cost-management-mcp-server@latest
Khi máy chủ khởi động thành công, bạn sẽ thấy thông báo như sau:
Starting FastMCP... Registered tool: use_aws
4. Cài Đặt Amazon Q CLI
Tải xuống và cài đặt Q CLI bằng cách sử dụng lệnh sau:
bash
curl --proto '=https' --tlsv1.2 -sSf \
"https://desktop-release.q.us-east-1.amazonaws.com/latest/q-x86_64-linux.zip" \
-o q.zip
unzip q.zip -d ~/q
cd ~/q
chmod +x install.sh
./install.sh
Theo dõi hướng dẫn:
- Chọn Yes khi được hỏi về việc cập nhật cấu hình shell.
- Đăng nhập bằng AWS Builder ID khi được yêu cầu.
Kiểm Tra Phiên Bản Q CLI
Sau khi cài đặt, bạn có thể kiểm tra phiên bản bằng lệnh:
bash
q --version
5. Kết Nối Q CLI Với Máy Chủ MCP
Bắt đầu một phiên trò chuyện với lệnh:
bash
q chat
6. Đặt Các Câu Hỏi
Bạn có thể đặt các câu hỏi như sau:
- “Hiển thị chi phí AWS của tôi theo dịch vụ trong 3 tháng qua.”
7. Chính Sách IAM (Quyền Đọc Tối Thiểu)
Để đảm bảo rằng bạn có đầy đủ quyền truy cập, sử dụng chính sách IAM sau:
json
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ce:GetCostAndUsage",
"ce:GetCostAndUsageWithResources",
"ce:GetCostForecast",
"ce:GetReservationUtilization",
"ce:ListCostCategoryDefinitions"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"budgets:DescribeBudgets",
"budgets:ViewBudget"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"compute-optimizer:DescribeRecommendations",
"compute-optimizer:GetRecommendationSummaries"
],
"Resource": "*"
}
]
}
8. Kết Luận
Bằng cách thiết lập Máy Chủ Quản Lý Chi Phí và Thanh Toán AWS tại nhà và tích hợp nó với Amazon Q Developer CLI, bạn có thể dễ dàng truy vấn dữ liệu chi phí và sử dụng AWS bằng ngôn ngữ tự nhiên.
Cách thiết lập này cho phép:
- Phân tích chi phí nhanh chóng bằng Cost Explorer mà không cần viết lệnh CLI phức tạp.
- Nhận thông tin chi phí CloudFront (qua phân loại UsageType như truyền dữ liệu và yêu cầu).
- Tiếp cận dễ dàng với ngân sách, kế hoạch tiết kiệm và các khuyến nghị Graviton để tối ưu hóa chi phí.
- Tạo ra một môi trường demo có thể lặp lại, có thể mở rộng cho các dịch vụ AWS khác (CloudWatch, Config, Security Hub, v.v.) bằng cách sử dụng thêm các máy chủ MCP.
Tóm lại, cách tiếp cận này đơn giản hóa quản lý tài chính đám mây, giúp tăng khả năng nhìn thấy chi phí cho cả kỹ sư và người dùng doanh nghiệp, và cung cấp một cách thực tế để trình diễn thông tin chi phí AWS trong các buổi hội thảo, demo hoặc thảo luận nhóm.