Skip to content

Feature/efa ec2 integration test#688

Open
mitali-salvi wants to merge 4 commits into
mainfrom
feature/efa-ec2-integration-test
Open

Feature/efa ec2 integration test#688
mitali-salvi wants to merge 4 commits into
mainfrom
feature/efa-ec2-integration-test

Conversation

@mitali-salvi
Copy link
Copy Markdown
Contributor

@mitali-salvi mitali-salvi commented May 8, 2026

Summary

Adds EFA EC2 integration test with Terraform module and test matrix entry.

Changes

  • EFA EC2 integration test (test/efa_ec2/) — validates EFA metrics are published to CloudWatch with correct short dimension names (device, port, eni_id) and InstanceId from append_dimensions
  • Terraform module — provisions c5n.9xlarge instance with EFA-enabled ENI in a placement group
  • Test matrix entry (generator/resources/ec2_efa_test_matrix.json) — defines AMI and instance config for CI
  • Dimension name validation — verifies the transform processor correctly renames OTel-style attributes (aws.efa.device, aws.efa.port, aws.efa.eni.id) to CW-friendly short names

Related PRs

Testing

  • Manually verified on c5n.9xlarge EFA instances in us-east-1
  • Metrics confirmed in CloudWatch with correct dimensions: device=rdmap0s31, port=1, eni_id=eni-044b89ddc44b78ea7

- test/efa_ec2/: Go integration test following nvidia_gpu EC2 pattern
  - Copies agent config, starts agent, sleeps 2min, stops, validates 9 EFA metrics via CloudWatch API
- terraform/ec2/efa/: EFA-specific Terraform module
  - EFA network interface (interface_type=efa), cluster placement group
  - Self-referencing security group for EFA OS-bypass
  - EIP for SSH access, EFA driver installation via aws-efa-installer
  - Hard failure if EFA device not detected after driver install
- Add ec2_efa to testTypeToTestConfig with testDir=./test/efa_ec2, terraformDir=terraform/ec2/efa
- Create ec2_efa_test_matrix.json with AL2023 on c5n.9xlarge
@mitali-salvi mitali-salvi requested a review from a team as a code owner May 8, 2026 17:54
Verify that EFA metrics use short CW-friendly dimension names (device,
port, eni_id) instead of OTel-style dotted names (aws.efa.device,
aws.efa.port, aws.efa.eni.id).
@mitali-salvi mitali-salvi force-pushed the feature/efa-ec2-integration-test branch from 5754307 to c541fa4 Compare May 8, 2026 19:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant