AWS classic ELB Service discovery
Summarize
Summary of AWS classic ELB Service discovery
The AWS classic ELB Service discovery pattern in ServiceNow enables automatic identification and mapping of Amazon Elastic Load Balancers (ELB) that handle HTTP and HTTPS traffic within your cloud environment. ELB efficiently distributes incoming application traffic across multiple targets, primarily Amazon EC2 instances. This pattern supports top-down discovery starting from HTTP(s) or TCP endpoints and integrates with the ServiceNow AI Platform, including support for Amazon Commercial Cloud Services (C2S) used by the Intelligence Community.
Show less
This discovery pattern is compatible with ServiceNow Jakarta and later releases and can be accessed via apps available on the ServiceNow Store.
Prerequisites
- Perform a horizontal discovery using the Cloud API (CAPI) first, as this pattern supports only top-down discovery.
- After storing load balancer data in the Configuration Management Database (CMDB), create an application service for each load balancer.
- Set read-only permissions for specific AWS REST APIs to enable discovery of load balancers and their relations to EC2 instances.
- Download the Discovery and Service Mapping Patterns from the ServiceNow Store for cloud discovery implementation.
- Ensure the MID Server host machine meets ServiceNow’s system requirements.
- Verify and grant required REST API user permissions using the Cloud Discovery patterns spreadsheet, which is regularly updated with new patterns and relevant details.
- Optionally, use Postman for testing AWS REST APIs prior to discovery runs.
Data Collected During Discovery
The discovery process collects detailed information from key CMDB tables:
- Load Balancer Services [cmdbcilbservice]: Includes fields such as Fully Qualified Domain Name (FQDN), load balancer name (formatted as <LB name>:<LB port>), front-end and back-end ports, server ports, IP addresses, server protocols, and object IDs representing load balancer ports.
- IP Address [cmdbciipaddress]: Captures the IP address associated with the load balancer FQDN and related details such as netmask (defaulted to 0.0.0.0) and name in the <LB name>:<LB port> format.
Practical Benefits for ServiceNow Customers
This discovery pattern helps ServiceNow customers automatically identify and map AWS classic ELB instances and their associated EC2 targets within the CMDB, enabling accurate service modeling and improved cloud governance. By leveraging this pattern, organizations can maintain up-to-date visibility of load balancer configurations and relationships, facilitating better operational management and incident response.
Discovery uses the Amazon AWS classic ELB Service discovery pattern to find all load balancers that use HTTP and HTTPS traffic.
Elastic Load Balancing (ELB) automatically distributes incoming application traffic across multiple targets.
The Amazon AWS classic ELB Service discovery pattern supports top-down discovery. The two possible entry points for top-down discovery are the HTTP(s) Endpoint and TCP Endpoint. Outgoing relations are to Amazon EC2 instances.
The ServiceNow AI Platform supports Amazon Commercial Cloud Services (C2S) for discovery and cloud governance. C2S is the government program that brings AWS into the Intelligence Community.
You can use this pattern on the ServiceNow platform using Jakarta or later releases.
Visit the ServiceNow Store website to view all the available apps and for information about submitting requests to the store. For cumulative release notes information for all released apps, see the ServiceNow Store version history release notes.Prerequisites
- Run a horizontal discovery, using Cloud API (CAPI). This is necessary because this discovery pattern supports top-down discovery only. For cloud discovery, you can run the horizontal discovery as usual.
- When the load balancers data has been stored in the Configuration Management Database (CMDB), create an application service for each load balancer.
- Set read-only permissions for these REST APIs:
- https://elasticloadbalancing.<REGION>.amazonaws.com/?Action=DescribeLoadBalancers&Version=2012-06-01&LoadBalancerNames.member.1=<LB_NAME>
- https://ec2.<REGION>.amazonaws.com/?Action=DescribeInstances&Version=2016-11-15&Filter.1.Name=instance-state-name&Filter.1.Value=running&Filter.2.Name=instance-id&Filter.2.Value=<INSTANCE_ID> (to create relation between LB and EC2 instance)
- For Cloud Discovery, download the Discovery and Service Mapping Patterns from the ServiceNow Store.
- When installing the MID Server, ensure that the host machine meets or exceeds the MID Server system requirements published on the ServiceNow documentation site.
Verify the REST API Permissions
Download the Cloud Discovery patterns spreadsheet so you can grant user permissions required for running the Discovery patterns. In addition to permissions, the spreadsheet also includes useful information such as pattern names, types, CI Classes, and links to vendor documentation. New patterns are available quarterly, so check periodically to be sure you have the latest version of the spreadsheet.
Data collected by Discovery during horizontal discovery
The discovered data includes the following tables and fields.
| Table and field | Description |
|---|---|
| Load Balancer Services [cmdb_ci_lb_service] | |
| Fully qualified domain name [fqdn] | Fully Qualified Domain Name (FQDN) of the load balancer. The DNS name. |
| Name [name] | Name of the load balancer, in the following format: <LB name>:<LB port>. |
| Back End Port [back_end_port] | Port of the instance. |
| Server Port [server_port] | Port of the instance. |
| Port [port] | Port of the load balancer. |
| Front End Port [front_end_port] | Port of the load balancer. |
| Object ID [object_id] | LB port. |
| IP Address [ip_address] | IP address of the FQDN. |
| Server Protocol [server_protocol] | Protocol of the instance. |
| IP Address [cmdb_ci_ip_address] | |
| IP Address [ip_address] | IP address of the load balancer FQDN. |
| Name [name] | Name of the load balancer, in the following format: <LB name>:<LB port>. |
| Netmask [netmask] | 0.0.0.0 |