AWS Resource Explorer
Tags: aws, devops
Published: 2023-11-14 17:49:41

When you have a large cloud estate having multiple accounts, multiple resources and multiple resources across multiple regions, it is a tedious task for one to search for a particular resource that he is looking for. For example, to find an S3 bucket and EC2 instance, we need to explore the respective resource details and search for the resource we are looking for.

This is reduced a lot by the introduction of AWS Resource Explorer. It can be used to quickly search for a cloud resource using its resource ID, metadata tags or resource groups. AWS Resource Explorer is a resource search and discovery service. With Resource Explorer, you can explore your resources, such as Amazon Elastic Compute Cloud instances, Amazon Kinesis streams, or Amazon DynamoDB tables, using an internet search engine-like experience. You can search for your resources using resource metadata like names, tags, and IDs. Resource Explorer works across AWS Regions in your account to simplify your cross-region workloads.

Resource Explorer provides fast responses to your search queries by using indexes that are created and maintained by the AWS Resource Explorer service. Resource Explorer uses a variety of data sources to gather information about resources in your AWS account. Resource Explorer stores that information in the indexes for Resource Explorer to search. For more [click here](https://docs.aws.amazon.com/resource-explorer/latest/userguide/welcome.html)

![](https://cdn-images-1.medium.com/max/4720/0*WDES_4VcSMOatvhv.png)

## Supported services and resource types

Supported AWS services

    | Service Name                               | Description                                   |
    |--------------------------------------------|-----------------------------------------------|
    | Amazon Elastic Compute Cloud (EC2)         | Virtual servers in the cloud                  |
    | Amazon Simple Storage Service (Amazon S3) | Scalable object storage                       |
    | Amazon OpenSearch Service                  | Managed Elasticsearch service                 |
    | AWS Elastic Beanstalk                       | Platform for deploying applications           |
    | Amazon CloudFront                           | Content delivery network (CDN)                |
    | Amazon ElastiCache                          | In-memory caching service                     |
    | Amazon Elastic Container Registry          | Docker container registry                     |
    | Amazon Elastic File System                  | Scalable file storage service                 |
    | AWS IoT                                    | Internet of Things (IoT) platform             |
    | Amazon Elastic Container Service           | Container orchestration service               |
    | AWS CodeBuild                              | Fully managed build service                   |
    | Amazon Kinesis                              | Real-time streaming data service              |
    | Elastic Load Balancing                      | Distributes incoming application traffic     |
    | AWS CodePipeline                           | Continuous delivery service                   |
    | AWS Resource Explorer                       | View and explore AWS resources                |
    | AWS Identity and Access Management (IAM)    | Identity and access management service       |
    | Amazon CloudWatch Logs                      | Monitor, store, and access log files          |
    | AWS Service Catalog                         | Create, manage, and share products            |
    | AWS Lambda                                 | Run code without provisioning or managing servers |
    | Amazon DynamoDB                            | NoSQL database service                        |
    | Amazon Simple Notification Service (SNS)    | Pub/sub messaging service                     |
    | Amazon Relational Database Service (Amazon RDS) | Managed relational database service      |
    | Amazon CloudWatch                           | Monitoring service for AWS resources         |
    | Amazon Simple Queue Service (SQS)           | Fully managed message queuing service        |
    | AWS Systems Manager                         | Gain operational insights and take action     |
    | AWS Step Functions                          | Serverless function orchestration            |
    | Amazon Cognito                             | Identity management for apps                 |

To know more about it [click here](https://docs.aws.amazon.com/resource-explorer/latest/userguide/supported-resource-types.html?icmp=docs_re_console_supported-resource-types)

## Benefits and features

**Add resources**

* Find relevant resources across AWS Regions using resource metadata, tags and simple keywords.

**Act quickly**

* Quickly navigate to your resources and act on them in the appropriate service console.

**Increase efficiency**

* Save time by finding and acting on resources without building a custom search infrastructure.

**Search from anywhere**

* Search for resources from any service page using a unified search in the AWS Management Console.

## Use cases

**Better understand your application resources**

* Search for application resources across AWS Regions using application tags and resource metadata.

**Locate resources to act on alerts promptly**

* Address alerts by finding and navigating to relevant resources directly from the unified search bar in the AWS Management Console.

## Related AWS services

The following are the other AWS services whose primary purpose is to help you manage your AWS resources:

## AWS Resource Access Manager (AWS RAM)

Share the resources in one AWS account with other AWS accounts. If your account is managed by AWS Organizations, you can use AWS RAM to share resources with the accounts in an organizational unit, or all of the accounts in the organization. The shared resources work for users in those accounts just like they would if they were created in the local account. For more [Click here](https://docs.aws.amazon.com/ARG/#sharing-your-aws-resources)

## AWS Resource Groups

Create groups for your AWS resources. Then, you can use and manage each group as a unit instead of having to reference every resource individually. Your groups can consist of resources that are part of the same AWS CloudFormation stack, or that are tagged with the same tags. Some resource types also support applying a configuration to a resource group to affect all relevant resources in that group. For more [Click here](https://docs.aws.amazon.com/ARG/#grouping-your-aws-resources)

## Tag editor and the AWS Resource Groups Tagging API

Tags are customer-defined metadata that you can attach to your resources. You can categorize your resources for purposes like [cost allocation](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) and [attribute-based access control](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html). For more [Click here](https://docs.aws.amazon.com/ARG/#tagging-your-aws-resources)

## Pricing

There are no charges to search for resources by using AWS Resource Explorer, including creating views, turning on Regions, or searching for resources. However, interacting with the resources that you find in your search results can result in usage charges that vary depending on the resource type and its AWS service. For more information about how AWS bills for the normal use of a specific resource type, refer to the documentation for that resource type’s owning service.

## Setting up and configuring Resource Explorer

Let’s see how this works in practice.

**Using AWS Resource Explorer**
To start using Resource Explorer, we need to turn it on so that it creates and maintains the indexes that will provide fast responses to your search queries. Usually, the administrator of the account is the one taking these steps so that authorized users in that account can start searching.

To run a query, we need a view that gives access to an index. If the view is using an aggregator index, then the query can search across all indexed Regions.

![](https://cdn-images-1.medium.com/max/2048/0*_qvTyN_1Yzg2ePW0.png)

If the view is using a local index, then the query has access only to the resources in that Region.

![](https://cdn-images-1.medium.com/max/2048/0*hTV1c9zPXHtlwgWE.png)

we can control the visibility of resources in your account by creating views that define what resource information is available for search and discovery. These controls are not based only on resources but also on the information that resources bring. For example, We can give access to the [Amazon Resource Names (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of all resources but not to their tags which might contain information that we want to keep confidential.

## let’s create a resource explorer

In the **Resource Explorer console**, choose **Enable Resource Explorer**. Then, select the Quick Setup option to have visibility for all supported resources within your account. This option creates local indexes in all Regions and an aggregator index in the selected Region. A default view with a filter that includes all supported resources in the account is also created in the same Region as the aggregator index.

## Quick Setup

![](https://cdn-images-1.medium.com/max/4352/0*YJN8gs3sraAOu1YB)

With the **Quick setup** option selected, You choose **Go to Resource Explorer**. A quick overview shows the progress of enabling Resource Explorer across Regions. After the indexes have been created, it can take up to 36 hours to index all supported resources, and search results might be incomplete until then. When resources are created or deleted, your indexes are automatically updated. These updates are asynchronous, so it can take some time (usually a few minutes) to see the changes.

![](https://cdn-images-1.medium.com/max/4354/0*-IIVzo8vdxYHINqt)

## Searching With AWS Resource Explorer

After resources have been indexed, You can choose to Proceed to resource search. In the Search criteria, choose which View to use. Currently, It has the default view selected. Then, you can start typing in the Query field to search through the resources in your AWS account across all Regions.

For example, I have an Ec2 instance where I used the convention to start resource names with EKS-Client. For the resources I created manually, I also added the Env tag with the value Dev.

To find the resource of this instance, start searching for it with the name EKS-client.

The results include resources from multiple services and Regions Optionally, you can filter results by Region or resource type. If you choose any of the listed resources, the link will bring me to the corresponding service console and Region with the resource selected.

![](https://cdn-images-1.medium.com/max/4168/0*cCA29CPRtotcPV-0)

To look for something in a specific Region, such as Mumbai, you can restrict the results by adding region:ap-south-1 to the query.

![](https://cdn-images-1.medium.com/max/4076/0*c_rsF_a-xBOrncMR)

You can further restrict results to Amazon Ec2 resources by adding service:ec2 to the query. Now you only see the EC2 instances and Elastic IP in Mumbai. That’s what I was looking for!

![](https://cdn-images-1.medium.com/max/4104/0*ZkOseYCBzT1c9pEc)

You can also search using tags. For example, you can see the resources where we have added the Dev tag by including tag.value:Dev in a query. To specify the actual key-value pair of the tag, you can use tag:Env=Dev.

![](https://cdn-images-1.medium.com/max/4068/0*LKKb8P09m8PokJri)

## Creating a Custom View

Sometimes you need to control the visibility of the resources in your account. For example, all the EC2 instances used for the development of your account are in ap-south-1(Mumbai). You create a view for the development team by choosing a specific Region (ap-south-1) and filtering the results with service:ec2 in the query. Optionally, you could further filter results based on resource names or tags. For example, you can add tag:Env=Dev to only see resources that have been tagged to be in a development environment.

![](https://cdn-images-1.medium.com/max/4344/0*p72dVj4CqDpSdN55)

Now you allow access to this view to users and roles used by the development team. To do so, you can attach an identity-based policy to the users and roles of the development team. In this way, they can only explore and search resources using this view.

![](https://cdn-images-1.medium.com/max/4184/0*qndU4gZknvogkpQK)

![](https://cdn-images-1.medium.com/max/4060/0*8gHtMfmsWL7hc0bI)

## Unified Search in the AWS Management Console

After you turn Resource Explorer on, you can also search through your AWS resources in the search bar at the top of the Management Console. We call this capability unified search as it gives results that include AWS services, features, blogs, documentation, tutorials, events, and more.

To focus the search on AWS resources, add /Resources at the beginning of your search.

![](https://cdn-images-1.medium.com/max/2172/0*R7cL9XmdKXalU17P)

Note that **unified search** automatically inserts a wildcard character (*) at the end of the first keyword in the string. This means that unified search results include resources that match any string that starts with the specified keyword.

![](https://cdn-images-1.medium.com/max/3556/0*qybbzySWsLJxW74h)

The search performed by the Query text box on the Resource search page in the Resource Explorer console does not automatically append a wildcard character but you can do it manually after any term in the search string to have similar results.

**Unified search** works when you have the default view in the same Region that contains the aggregator index. To check if a unified search works for you, look at the top of the Settings page.

![](https://cdn-images-1.medium.com/max/4144/0*pzNgoCOyUlBiiB10)

## Advanced Setup

With the **Advanced setup** option, you have access to more granular controls that are useful when there are specific governance requirements. For example, you can select in which Regions to create indexes. You can choose not to replicate resource information to any other Region so that resources from each AWS Region are searchable only from within the same Region. you can also control what information is available in the default view or avoid the creation of the default view.

![](https://cdn-images-1.medium.com/max/3496/0*KqXqDAVCW_3QEi8z)

Choose Go to **Resource Explorer**. A quick overview shows the progress of enabling Resource Explorer in a selected specific Region. When resources are created or deleted, your indexes are automatically updated. These updates are asynchronous, so it can take some time (usually a few minutes) to see the changes.

![](https://cdn-images-1.medium.com/max/3468/0*vAQ7R8bq_GKvjay0)

After resources have been indexed, You can choose to Proceed to resource search. In the Search criteria, choose which View to use. Currently, It has the default view selected. Then, you can start typing in the Query field to search through the resources in your AWS account in the ap-south-1 region.

![](https://cdn-images-1.medium.com/max/4080/0*n-VGxBZiY1rVJz1W)

we can view the index which is created in ap-south-1, Resource Explorer -> indexes

![](https://cdn-images-1.medium.com/max/4024/0*hr9VR5lsF-S8LsCR)

Thanks for reading! I hope you found this helpful and informative.

I’m always happy to connect with fellow tech enthusiasts and answer any questions you may have. Don’t forget to follow me for more updates on tech, programming, and more.😄😄

Follow me on LinkedIn to see interesting posts like this : ) [Linkedin](https://www.linkedin.com/in/subbaramireddy/)