Ingest Cloud Resources with New Relic
This guide aims to show you how to ingest cloud resources using New Relic to have a comprehensive view of the cloud resources/entities you have from your cloud providers.
Common Use Cases
- Map your monitored resources from cloud providers in New Relic.
- Enhance visibility of your cloud infrastructure within Port without relying solely on direct integrations.
Prerequisites
This guide assumes the following:
- You have a Port account and have completed the onboarding process.
- You have installed and set up Port's New Relic integration.
- You have entities from cloud providers configured in New Relic. See New Relic's documentation for details on setting up cloud integrations.
Ingesting cloud resources into Port
We will utilize the entity
kind in Port's New Relic integration, which provides information on entities monitored in New Relic.
Entities are ingested based on their respective infrastructureIntegrationType
.
Examples of cloud resources infrastructure integration types
AWS_EC2_INSTANCE
AWS_S3_BUCKET
AWS_RDS_DB_INSTANCE
AWS_LAMBDA_FUNCTION
AWS_ELB_LOAD_BALANCER
AZURE_VIRTUAL_MACHINE
AZURE_SQL_DATABASE
GCP_COMPUTE_INSTANCE
GCP_STORAGE_BUCKET
GCP_SQL_DATABASE_INSTANCE
Data model setup
Follow the steps below to set your data model up for ingesting cloud resources from New Relic:
- Creating the blueprint configuration
After installing the New Relic integration, create the following blueprint configuration in Port:
New Relic newRelicEntityCloudResource
blueprint configuration
{
"identifier": "newRelicEntityCloudResource",
"description": "This blueprint represents a New Relic cloud resource entity.",
"title": "New Relic Cloud Resource",
"icon": "NewRelic",
"schema": {
"properties": {
"accountId": {
"type": "string",
"title": "Account ID",
"description": "The New Relic account ID associated with the entity."
},
"domain": {
"type": "string",
"title": "Domain",
"description": "The domain of the entity (e.g., INFRA, APM)."
},
"type": {
"type": "string",
"title": "Entity Type",
"description": "The type of the entity."
},
"infrastructureIntegrationType": {
"type": "string",
"title": "Infrastructure Integration Type",
"description": "The cloud provider integration type."
},
"tags": {
"type": "object",
"title": "Tags",
"description": "Tags associated with the entity."
},
"reporting": {
"type": "boolean",
"title": "Reporting",
"description": "Indicates if the entity is reporting data."
},
"link": {
"type": "string",
"title": "Entity Link",
"description": "A link to the entity in New Relic.",
"format": "url"
}
},
"required": []
},
"relations": {}
}
- Configuring the integration mapping
Locate the New Relic integration in the Data Sources page and add the following mapping for cloud resources:
New Relic entity
mapping configuration
- kind: entity
selector:
query: 'true'
infrastructureIntegrationTypes:
- AWS_EC2_INSTANCE
- AWS_S3_BUCKET
- AWS_RDS_DB_INSTANCE
- AWS_LAMBDA_FUNCTION
- AWS_ELB_LOAD_BALANCER
- AZURE_VIRTUAL_MACHINE
- AZURE_SQL_DATABASE
- GCP_COMPUTE_INSTANCE
- GCP_STORAGE_BUCKET
- GCP_SQL_DATABASE_INSTANCE
# Add more infrastructure integration types as needed
port:
entity:
mappings:
identifier: .guid
title: .name
blueprint: '"newRelicEntityCloudResource"'
properties:
accountId: .accountId
domain: .domain
type: .type
infrastructureIntegrationType: .infrastructureIntegrationType
reporting: .reporting
link: .permalink
tags: .tag
- Resyncing Data
After configuring the mapping, click on Resync
to start ingesting your cloud resources from New Relic into Port.
More entity types
Based on New Relic's documentation and common integrations, here's a comprehensive list of infrastructureIntegrationType
values you can include in your mapping:
Common Infrastructure Integration Types
-
AWS Integration Types
AWS_EC2_INSTANCE
AWS_EBS_VOLUME
AWS_S3_BUCKET
AWS_RDS_DB_INSTANCE
AWS_LAMBDA_FUNCTION
AWS_ELB_LOAD_BALANCER
AWS_DYNAMODB_TABLE
AWS_ELASTICACHE_NODE
AWS_REDSHIFT_CLUSTER
AWS_KINESIS_STREAM
AWS_SNS_TOPIC
AWS_SQS_QUEUE
AWS_ELASTIC_BEANSTALK
AWS_AUTOSCALING_GROUP
AWS_CLOUDFRONT_DISTRIBUTION
AWS_API_GATEWAY
AWS_ECS_CLUSTER
AWS_EKS_CLUSTER
-
Azure Integration Types
AZURE_VIRTUAL_MACHINE
AZURE_VM_SCALE_SET
AZURE_APP_SERVICE
AZURE_FUNCTION_APP
AZURE_SQL_DATABASE
AZURE_STORAGE_ACCOUNT
AZURE_COSMOS_DB
AZURE_REDIS_CACHE
AZURE_SERVICE_BUS_NAMESPACE
AZURE_EVENT_HUB_NAMESPACE
AZURE_LOAD_BALANCER
AZURE_APPLICATION_GATEWAY
AZURE_CONTAINER_INSTANCE
AZURE_KUBERNETES_SERVICE
-
GCP Integration Types
GCP_COMPUTE_INSTANCE
GCP_STORAGE_BUCKET
GCP_CLOUD_SQL_DATABASE
GCP_FUNCTION
GCP_PUBSUB_TOPIC
GCP_BIGQUERY_DATASET
GCP_CLOUD_SPANNER_INSTANCE
GCP_KUBERNETES_CLUSTER
GCP_CLOUD_RUN_SERVICE
-
Other Integration Types
APACHE_HTTPD_SERVER
NGINX_SERVER
MYSQL_DATABASE
POSTGRESQL_DATABASE
REDIS_INSTANCE
DOCKER_CONTAINER
KUBERNETES_CLUSTER