# EC2-exemplaarprofiel

Definieer een IAM-rol voor uw Qlik-beheerde EC2-exemplaren. Deze rol wordt gebruikt door de exemplaren die in uw AWS lakehouse-omgeving worden uitgevoerd.

Een EC2-exemplaarprofiel is een container voor een IAM-rol die kan worden toegewezen aan een EC2-exemplaar. Hiermee kan het exemplaar veilig toegang krijgen tot AWS-services zonder dat er AWS-referenties op het exemplaar opgeslagen te hoeven worden.

Wanneer een exemplaar met een exemplaarprofiel wordt gestart, worden de tijdelijke referenties van de bijbehorende IAM-rol automatisch beschikbaar gemaakt voor applicaties die op het exemplaar draaien via de metagegevensservice. Hierdoor kan het exemplaar geautoriseerde API-aanvragen verzenden naar AWS-services zoals Amazon S3, DynamoDB of CloudWatch.

Het gebruik van exemplaarprofielen verbetert de beveiliging en vereenvoudigt het referentiebeheer door:

* Het elimineren van in code vastgelegde referenties in applicatiecode of configuratiebestanden.

* Automatisch roterende referenties.

* Het afdwingen van minimale bevoegdheden via fijnmazige IAM-beleidsregels die aan de rol zijn gekoppeld.

Exemplaarprofielen worden vaak gebruikt in scenario's waar EC2-exemplaren veilig en programmatisch moeten samenwerken met andere AWS-resources.

## Vereisten

Zorg ervoor dat u de VPC, het subnet en de Availability Zones voor het hosten van uw Qlik Open Lakehouse hebt gemaakt en dat u de volgende gegevens hebt:

* De URL van de S3-bucket voor Qlik om interne metagegevensbestanden op te slaan.

## Een exemplaarprofiel aanmaken

Om een beheerrol te maken, doet u het volgende:

1. Ga in de AWS-console naar IAM

2. Klik in Rollen op Rol maken en configureer deze:

   * Vertrouwd entiteitstype: selecteer AWS-service uit de opties.

   * Service of gebruiksscenario: selecteer EC2.

   * Gebruiksscenario: selecteer EC2.

3. Maak de rol. Ga terug naar de pagina Rollen en klik op de rol die u hebt gemaakt.

4. Klik op het pictogram Kopiëren naast de ARN-naam van het exemplaarprofiel en sla deze waarde op.

5. Klik op Machtigingen toevoegen en selecteer Inline beleid maken.

6. Beleidseditor: selecteer JSON. Plak de volgende tekst en doe het volgende:

   * Verander de parameter &lt;BUCKET\_NAME&gt; in uw [S3-bucket](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/s3-bucket.htm).

```

			{
			"Version": "2012-10-17",
			"Statement": [
			{
			"Effect": "Allow",
			"Action": [
			"ec2:AttachVolume",
			"ec2:DetachVolume",
			"autoscaling:SetInstanceHealth"
			],
			"Resource": "*",
			"Condition": {
			"Null": {
			"aws:ResourceTag/qlik_cluster": "false"
			}
			}
			},
			{
			"Effect": "Allow",
			"Action": "cloudwatch:PutMetricData",
			"Resource": "*"
			},
			{
			"Effect": "Allow",
			"Action": [
			"s3:PutObject",
			"s3:GetObject",
			"s3:AbortMultipartUpload",
			"s3:DeleteObjectVersion",
			"s3:ListBucket",
			"s3:DeleteObject",
			"s3:GetObjectVersion"
			],
			"Resource": [
			"arn:aws:s3:::<BUCKET_NAME>",
			"arn:aws:s3:::<BUCKET_NAME>/*"
			]
			},
			{
			"Effect": "Allow",
			"Action": [
			"ssm:GetParameter",
			"ssm:PutParameter"
			],
			"Resource": "arn:aws:ssm:*:*:parameter/qlik/*"
			},
			{
			"Effect": "Allow",
			"Action": "kms:*",
			"Resource": "<SYMMETRIC_KMS_KEY>"
			},
			{
			"Effect": "Allow",
			"Action": "sts:AssumeRole",
			"Resource": "*",
			"Condition": {
			"StringEquals": {
			"sts:ExternalId": "6b69f9c3c8f502f2ddfc8434d443f172ebe4c032f4ef1a3c51215d27a58ca799"
			}
			}
			}
			]
			}
		
```

## Redenen van vereiste machtiging

De volgende tabel geeft uitleg over elke machtiging die aan het EC2-exemplaar is toegekend:

| Beleid | Machtigingen | Uitleg |
| --- | --- | --- |
| Volumebeleid bijvoegen | ```<br>{<br>"Version": "2012-10-17",<br>"Effect": "Allow",<br>"Resource": [<br>"*"<br>],<br>"Action": [<br>"ec2:AttachVolume",<br>"ec2:DetachVolume",<br>"autoscaling:SetInstanceHealth"<br>],<br>"Condition": {<br>"Null": {<br>"aws:ResourceTag/qlik_cluster": "false"<br>}<br>}<br>}<br>]<br>}<br><br><br>``` | Dit beleid geeft EC2-exemplaren machtigingen om Persistent EBS-volumes bij te voegen die zijn aangemaakt door Qlik. Hierdoor blijven gegevens behouden tussen upgrades van Gateway-machines. |
| CloudWatch | ```<br>{<br>"Version": "2012-10-17",<br>"Effect": "Allow",<br>"Resource": [<br>"*"<br>],<br>"Action": [<br>"cloudwatch:PutMetricData"<br>}<br>]<br>}<br><br><br>``` | Met dit beleid kunnen EC2-exemplaren aangepaste statistieken naar CloudWatch sturen, die worden gebruikt om Qlik-clusters automatisch te schalen op basis van softwareprestaties. |
| Interne bucket | ```<br>{<br>"Version": "2012-10-17",<br>"Effect": "Allow",<br>"Resource": [<br>"arn:aws:s3:::<BUCKET_NAME>",<br>"arn:aws:s3:::<BUCKET_NAME>/*"<br>],<br>"Action": [<br>"s3:PutObject",<br>"s3:GetObject",<br>"s3:AbortMultipartUpload",<br>"s3:DeleteObjectVersion",<br>"s3:ListBucket",<br>"s3:DeleteObject",<br>"s3:GetObjectVersion"<br>]<br>}<br>]<br>}<br><br><br>``` | Het beleid geeft EC2-exemplaren machtigingen om interne gegevens op te slaan, te lezen en verwijderen. De interne gegevens bevatten echte gebruikersgegevens die in tussentijdse opslag worden bewaard voor verwerking. &lt;BUCKET\_NAME&gt; is een door de gebruiker geconfigureerde waarde. |