Install
openclaw skills install @huaweicloudskill/huawei-cloud-mrs-new-cluster-plannerHuawei Cloud MRS new cluster spec planning. Derives YARN and storage requirements from business investigation, evaluates node specs, outputs Excel report. Automatically evaluates Master and Core node specs and quantities based on five load type models, and outputs a minimum-redundancy spec plan. Applicable to MRS new cluster planning, node spec selection, resource estimation, capacity planning, and OBS storage-compute separation scenarios. Trigger words: "new MRS", "new MRS cluster", "MRS new cluster planning", "MRS sizing", "MRS cluster planning", "MRS node spec", "MRS resource planning", "Huawei Cloud MRS", "MapReduce Service", "MRS spec recommendation", "new big data cluster", "新建MRS", "新建MRS集群", "MRS新集群规划", "MRS选型", "MRS集群规划", "MRS节点规格", "MRS资源规划", "华为云MRS", "MRS规格推荐", "新建大数据集群"
openclaw skills install @huaweicloudskill/huawei-cloud-mrs-new-cluster-plannerChinese triggers: "新建MRS", "新建MRS集群", "MRS新集群规划", "MRS选型", "MRS集群规划", "MRS节点规格", "MRS资源规划", "华为云MRS", "MapReduce Service", "MRS规格推荐", "新建大数据集群"
English triggers: "new MRS", "new MRS cluster", "MRS new cluster planning", "MRS sizing", "MRS cluster planning", "MRS node spec", "MRS resource planning", "Huawei Cloud MRS", "MapReduce Service", "MRS spec recommendation", "new big data cluster"
For greenfield MRS cluster scenarios, derives YARN vCPU/memory and storage requirements through business investigation (components, daily incremental data, compute window, concurrency, throughput), evaluates Master and Core node specs and quantities, and outputs a minimum-redundancy spec plan that fits business requirements. Key difference from the migration scenario skill (huawei-cloud-mrs-migration-planner): no existing cluster resource benchmark; resource targets are derived from business load models.
Security rule: Resource estimation coefficients are industry experience-based estimates and must be annotated as "estimated value" in the report. The report script only takes business data via --input/stdin and generates the Excel file locally — it accepts no arbitrary shell arguments, performs no shell execution, and makes no cloud resource write operations.
pip install openpyxl) — for generating multi-sheet Excel report| Phase | Content | Output |
|---|---|---|
| Phase 1 | Business investigation: component requirements, data scale, load characteristics (14 required + 4 estimation items) | Component list + business load profile |
| Phase 2 | Cluster type matching: select cluster type, MRS version, dependency resolution based on components | Cluster type + component dependencies |
| Phase 3 | Resource estimation: business requirements -> YARN vCPU/memory/storage (five load type models) | Estimated resource targets (annotated as estimated values) |
| Phase 4 | Node spec planning: Master (node count + vCPU + memory), Core (minimum-redundancy selection) | Master/Core specs and node counts |
| Phase 5 | Storage and disk planning: system disk, data disk, OBS capacity calculation | Disk configuration + OBS plan |
| Phase 6 | Report output + Excel generation: 4-sheet multi-dimensional report | MRS_Cluster_Sizing_Report.xlsx |
For greenfield scenarios there is no existing cluster; investigate business requirements and load characteristics. Questions fall into three categories:
Detailed component mapping table: references/component-mapping.md
Select cluster type (Analysis/Streaming/Hybrid/Custom) and MRS version based on business components. Default recommendation: MRS 3.3.0-LTS. Kerberos is a deployment config item that only affects Master node count and cluster security architecture.
Detailed cluster type selection logic: references/component-mapping.md
Greenfield scenario has no existing cluster resource benchmark; resource targets are derived from business load models. Select estimation model by load type:
| Load Type | Estimation Formula |
|---|---|
| Offline batch | D_compute = daily_increment + existing_data × hot_ratio × hot_compute_ratio; vCPU = D_compute × unit_CPU_coefficient ÷ compute_window_hours; memory = vCPU × R |
| Real-time streaming | vCPU = partitions × 1 OR throughput_MBps ÷ 10; memory = vCPU × 4 |
| Interactive query | vCPU = concurrent_users × 4; memory = vCPU × 4 |
| HBase | vCPU = QPS_wan ÷ 0.6; memory = hot_data_TB × 16 OR vCPU × 8 |
| Kafka | vCPU = daily_messages_100M × 2; memory = vCPU × 4 |
Complexity coefficients: Simple ETL=20, Standard warehouse=40, Complex compute/ML=80 vCPU·h/TB. 离线批处理必须考虑热数据参与计算量,不能仅看增量数据。Mixed loads are estimated per item then summed (peak off-peak can apply ×0.8 discount). All estimated resources must be annotated as "estimated value" with the estimation process shown; proceed to Phase 4 only after user confirmation.
Full five load type estimation models: references/business-to-resource-algorithm.md
max(1, ceil(vCPU × 40 / 600)) × 600GB General SSDMaster 6-step algorithm: references/master-sizing-algorithm.md Core selection algorithm: references/core-sizing-algorithm.md ECS flavor catalog (MRS-supported, localized from official doc): references/ecs-flavor-catalog.md
System disk 480GB High IO, Master data disk 1×600GB General SSD, Core/Task data disk calculated by formula. OBS storage-compute separation: total storage = existing data + daily_increment × retention_days × compression_ratio, reported directly as the actual required capacity (no package tier rounding).
Full disk configuration: references/storage-disk-planning.md
Generate Markdown report (5 sections: business investigation summary, resource estimation details, cluster config and spec recommendation, estimated resources vs MRS comparison, decision summary) and 4-sheet Excel report.
Full sheet column definitions: references/excel-report-template.md Python script implementation: scripts/generate_mrs_report.py
python scripts/generate_mrs_report.py --input <report_data.json>
<report_data.json> 为业务调研 + 资源推算 + 方案选型结果汇总的 JSON 文件,结构见 references/excel-report-template.md(完整示例见 references/example-report-data.json),必需字段:business_requirements / estimated_resources / plan_a。另支持 stdin 管道输入(--input -)、--output <FILE> 指定输出路径;--example 可生成内置示例(仅供测试/演示)。
File naming: MRS_Cluster_Sizing_Report_<YYYYMMDD>.xlsx
| Parameter | Required/Optional | Description | Default |
|---|---|---|---|
| Deployment region | Optional | Target region; for confirming ECS flavor availability | cn-north-4 (widest flavor availability) |
| Business type | Required | Offline batch / streaming / interactive query / HBase / Kafka / mixed | N/A |
| Daily incremental data | Required | TB/day, pre-compression logical volume | N/A |
| Existing data + retention days | Required | Existing data TB + retention days; affects OBS capacity | N/A |
| Compression format and ratio | Required | ORC/Parquet/TextFile etc.; affects storage calculation | Estimated 0.5 with annotation |
| Data temperature distribution | Required | Hot/warm/cold data ratio | N/A |
| Business complexity | Required | Simple ETL / standard warehouse / complex compute; determines W_CPU coefficient | N/A |
| Job concurrency | Required | Concurrent job count | N/A |
| Compute window | Required | Hours/day available for compute | N/A |
| Real-time throughput | Conditional | MB/s; streaming scenarios only | N/A |
| Concurrent users | Conditional | Concurrent query users; OLAP scenarios only | N/A |
| Peak load description | Required | Whether load sustains >90% | No (no +20% buffer) |
| Business growth rate | Required | Annual/monthly growth rate | N/A |
| Storage mode | Required | OBS or local HDFS | N/A |
| Elastic Task requirement | Required | Whether elastic Task nodes needed | No |
| Streaming State size (A1) | Estimation | Streaming State size; medium State coefficient 6 | Default 6, annotated |
| Metadata file characteristics (A2) | Estimation | Files per TB | Default 500K/TB, annotated |
| Load sustains >90% (A3) | Estimation | Whether peak load sustains >90% | Default No, annotated |
| Hot data compute ratio (A4) | Estimation | 热数据参与计算比例;影响CPU/内存选型 | Default 100%, annotated |
| Estimation confirmation | Required | Phase 3 results must be confirmed by user before Phase 4 | N/A |
| Data retention and compression | Conditional | Affects OBS capacity 50%+ | Retention 180 days / compression 0.5, annotated |
| Document | Description |
|---|---|
| Business-to-Resource Algorithm | Business requirements -> resource estimation models (five load types, core of greenfield scenario) |
| Component Mapping | Component mapping table and cluster type matching rules |
| ECS Flavor Catalog | MRS-supported ECS flavor catalog (localized from official doc) and flavor selection matrix |
| Master Sizing Algorithm | Master spec 6-step selection algorithm |
| Core Sizing Algorithm | Core node selection algorithm |
| Storage Disk Planning | Storage and disk planning |
| Excel Report Template | Excel report template and data structure |
| IAM Policies | IAM permission requirements (no API permissions needed for this planning skill) |
| Verification Methods | Output verification and validation methods |
scripts/
└── generate_mrs_report.py # Excel report generation (4 sheets, single plan + estimation details)
references/
├── business-to-resource-algorithm.md # Business requirements -> resource estimation models (five load types)
├── component-mapping.md # Component mapping table and cluster type matching rules
├── core-sizing-algorithm.md # Core node selection algorithm (minimum redundancy + elastic Task)
├── ecs-flavor-catalog.md # MRS-supported ECS flavor catalog (localized) and flavor selection matrix
├── excel-report-template.md # Excel report template and report_data data structure
├── iam-policies.md # IAM permission requirements (no API permissions needed)
├── master-sizing-algorithm.md # Master spec 6-step selection algorithm
├── storage-disk-planning.md # Storage and disk planning (system/data disk, OBS capacity)
├── example-report-data.json # Example report_data JSON for --input (demo/test only)
└── verification-method.md # Output verification and validation methods
python scripts/generate_mrs_report.py --input <report_data.json> to generate Excel report; confirm 4 sheets output (Cluster Spec Recommendation / Resource Estimation Details / Selection Decision Rationale / OBS Storage Spec)