
HaloITSM Guides
Documentation to assist with the setup and configuration of the HaloITSM platform
AWS Integration (EC2)
In this lesson we will cover:
- What is the AWS integration?
- How to import instances from AWS to Halo
What is the AWS integration?
The AWS integration is used to import EC2 instances from Amazon Web Services into Halo. Allowing you to manage your servers (instances) in Halo. When instances are imported these will be created as assets in your Halo instance, data against the instance in AWS will be imported into fields against the asset.
Instances can be imported on a recurring schedule to ensure data is consistent between the AWS instance and Halo asset.
Connecting to AWS
First you will need to enable the AWS integration module. Head to configuration > integrations and enable the module using the '+' icon.
Fig 1. Enable integration module
Once enabled click into the module and create a new tenant. Under the 'details' tab you will see an access and secret key are required to connect to the integration.
Fig 2. AWS connection details
The access key you use here can either be a root access key or an IAM access key.
Root access key - Will give the application administrator permissions
IAM access key - Allows you to choose the permissions the application has.
For information on how to obtain a root access key see the documentation by AWS here.
For information on how to create an IAM access key see the documentation by AWS here. The user you are creating the access key for must have permission to read/view the instances you would like to import into Halo. For information on how to change user permissions in AWS see their documentation here.
Now you have your access key and secret paste these into the field shown in figure 2 (in Halo) and save. The 'Test configuration' button can be used to ensure you have connected successfully.
Asset import configuration
Now you have connected head to the 'Assets' tab under the integration page to setup how the instances will be imported.
Fig 3. AWS asset imports page
In the 'Regions' field add the regions you would like instances to be imported from. Only instances in these regions will be imported.
In the 'Asset Matching Field' choose the field you would like to be the unique identifier for assets/instances imported from AWS. This field is used to match instances in AWS to existing asset records in Halo. If matched, the record will be updated, if no match is found a new asset will be created in Halo. By default, the AWS ID will always be checked first.
Asset Field Mappings
Mappings can be configured to ensure data from AWS fields are imported into a chosen Halo field. Create a mapping by adding to the 'Field mappings' table.
Fig 4. Field mappings
Field Type - This will be the type of Halo field the data will be imported into. See our lesson on Asset Fields if you are unsure on the difference between asset fields and custom fields in Halo.
Now choose the AWS and Halo field you would like to map together. If you would like data from the AWS field to create a new field in Halo select '*Create new field during the next import*' under 'HaloPSA Field'.
Note: Ensure the field you have selected as the 'Asset Matching field' has a mapping.
Complete mappings for all the AWS data you would like to be brought into Halo.
Determine an Asset's type
When assets are imported from AWS a new asset in Halo will be created, as AWS does not have a concept of 'asset types' like Halo we will need to configure how the type of new assets created from AWS are determined. This is done using the 'Determining an Asset's type' field.
Fig 5. Settings to determine a new asset's type
Use the same type for all Assets
If you would like all imported assets to have the same asset type when imported set the 'Determining an Asset's type' field to be 'use the same type for all Assets' then set the 'Default Asset Type' field to be the asset type you would like assets from AWS to be.
Fig 6. Use same type for all assets
Use a field to determine each Asset's type
If you would like all imported assets' types to be determined by a particular field, set the set the 'Determining an Asset's type' field to be 'Use a field to determine each Asset's type'. Then in 'Field for determining an Asset's type' choose the field you would like the type to depend on. The field you choose must contain the name of the desired asset type, if this name can be matched to an existing asset type in Halo, it will be assigned this asset type. If the name is not the same as an asset type in Halo, a new asset type will be created. Note that the names must be identical in order to match. This setting is used if you have a field in AWS that already determines an asset's type and you would like the types to be consistent between Halo and AWS. Instances that have field data but this data does not match an existing asset type in Halo will create a new asset type. Instances that do not have the selected field populated will create under the default asset type.
Fig 7. Use field to determine an asset's type
In the figure 7 example new assets will be assigned to an asset type in Halo based on their 'Architecture' field. If the data in the Architecture field matches the name of an asset type in Halo this asset will be created under the matched asset type. If a match cannot be made a new asset type will be created, under the asset group 'Network Equipment'. If the asset does not have the 'Architecture' field populated the asset will be created under the default asset type, 'Application server'.
Determine Asset type using rules
If you would like asset types to be determined by asset rules set the set the 'Determining an Asset's type' field to be 'Determine asset type using rules'. Now you will be able to set asset's types based on rules, These rules are based on field values, and if matched will assign an asset to the chosen asset type. When creating a rule first add criteria for the rule, select the Halo field that you would like to base the criteria on, then set the rule type and the outcome needed in the field to match the rule. If an asset matches this rule it will be imported as this asset type.
If an asset is imported that does not match any of these rules, it will be created under the default asset type. Alternatively, if you would like to not import assets that do not match these rules, set the 'Default Asset type' to 'Don't import assets that do not match any rules'.
Fig 8. Determine asset's type using rules
Fig 8a. Rule example to determine asset type
In the figure 8 example instances that have an Asset Number starting with 'SERV-' will be created under the Server asset type. Instances that do not meet this criteria will not be imported.
Miscellaneous Asset import settings
Deactivate Assets in Halo when they are deleted from AWS (Halo Integrator only) - When enabled assets will be deactivated in Halo when they are deleted from AWS. This only comes into effect when instances are imported using the Halo integrator (not when importing manually).
Don't create new Assets - When enabled new assets will not be created in Halo. Instances that match to a Halo asset will be updated but any instances that do not match will not be imported/created.
Don't update the Asset type for existing or matched Assets - If enabled, any instances that match to an existing asset when importing will not update the existing asset with a different asset type from AWS. This allows you to change data that impacts the Halo asset type in AWS without it affecting the existing assets in Halo.
Don't update the asset site for existing or matched assets- If enabled, any instances that match to an existing asset when importing will not update the existing asset with a new site. This allows you to change asset site rules without it affecting the existing assets in Halo.
Site Mappings
AWS does not have a concept of sites or customers, so to determine which site an asset should be created against you can use site rules under the 'Sites' tab. These rules are based on field values, and if matched will assign an asset to the site of the mapping. For example if an asset in AWS has a field with a value 'x' it will be imported under a chosen site in Halo. To do this, add a site rule to the table, select the Halo site you would like the asset to go to, add to the criteria table. Here select the Halo field that you would like to base the criteria on, then set the rule type and the outcome needed in the field to match the rule.
You will also need to set a 'Default site' any assets that do not match a site rule will be assigned to the default site.
Fig 9a. Site rules
Fig 9b. Site rule example
In the figure 9 example instances that contain the string 'ACORN-LDN' in their 'Name' field will be assigned to the London HQ site for the customer Acorn Construction. Any other assets that do not meet this criteria will be assigned to the site Leeds under the customer St Johns High School.
Importing Instances
Now you are ready to import instances. Head to the Assets tab and use the button 'Import Instances' to pull up the import preview screen. Here, you will see all the instances that will be imported. To begin the import hit start, this will create the instacnes as assets in your Halo instance.
To have instances import on a scheduled basis head to the 'Syncing' tab and enable the Halo Integrator for the AWS integration.
Fig 10. Enable the Halo Integrator for the AWS integration
When enabled instances will be imported automatically on a daily basis. You can also see here if there are any errors with the import too.
Popular Guides
- Asset Import - CSV/XLS/Spreadsheet Method
- Call Management in Halo
- Creating a New Application for API Connections
- Creating Agents and Editing Agent Details
- Departments and Teams
- Halo Integrator
- Importing Data
- Multiple New Portals with different branding for one customer [Hosted]
- NHServer Deprecation User Guide
- Organisation Basics
- Organising Teams of Agents
- Step-by-Step Configuration Walk Through