Skip to content

Commit fd0fa0b

Browse files
authored
Merge pull request #2 from Altinity/docs-install
Update the installation guide
2 parents 2a2dc76 + 1aa56e7 commit fd0fa0b

1 file changed

Lines changed: 58 additions & 1 deletion

File tree

README.md

Lines changed: 58 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,64 @@ It also sets some annotations on PVCs backed by EBS CSI Driver representing curr
66

77
## Installation
88

9-
See [example deployment manifest](https://github.com/Altinity/ebs-params-controller/blob/main/deployment.yaml).
9+
**To create your EBS Params Controller IAM role with the AWS Management Console**
10+
11+
1. Open the IAM console at https://console.aws.amazon.com/iam/
12+
2. In the left navigation pane, choose **Roles**.
13+
3. On the **Roles** page, choose **Create role**.
14+
4. On the **Select trusted entity** page, do the following:
15+
- a. In the **Trusted entity type** section, choose **Web identity**.
16+
- b. For **Identity provider**, choose the **OpenID Connect provider URL** for your cluster (as shown under **Overview** in Amazon EKS).
17+
- c. For **Audience**, choose `sts.amazonaws.com`.
18+
- d. Choose **Next**.
19+
5. On the **Add permissions page**, skip everything and choose **Next**.
20+
6. On the **Name, review, and create** page, do the following:
21+
- a. For **Role name**, enter a unique name for your role, such as ***AltinityRoleForEBSParamsController***.
22+
- b. Under **Add tags (Optional)**, add metadata to the role by attaching tags as key–value pairs. For more information about using tags in IAM, see [Tagging IAM Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html) in the _IAM User Guide_.
23+
- c. Choose Create role.
24+
7. After the role is created, choose the role in the console to open it for editing.
25+
8. On the **Permissions** tab, choose **Add permissions**, and then choose **Create inline policy**.
26+
9. Choose **JSON**, and replace the contents in the **Policy editor** with the following code:
27+
```
28+
{
29+
"Version": "2012-10-17",
30+
"Statement": [
31+
{
32+
"Effect": "Allow",
33+
"Action": [
34+
"ec2:ModifyVolume",
35+
"ec2:DescribeAvailabilityZones",
36+
"ec2:DescribeTags",
37+
"ec2:DescribeVolumes",
38+
"ec2:DescribeVolumesModifications"
39+
],
40+
"Resource": "*"
41+
}
42+
]
43+
}
44+
```
45+
10. Choose **Next**, then enter a unique policy name, such as ***AltinityEBSParamsControllerPolicy***.
46+
11. Choose **Create policy**
47+
12. Choose the **Trust relationships** tab, and then choose **Edit trust policy**.
48+
13. Find the line that looks similar to the following line:
49+
```
50+
"oidc.eks.region-code.amazonaws.com/id/EXAMPLE168660E7300CC5879EEXAMPLE:aud": "sts.amazonaws.com"
51+
```
52+
Add a comma to the end of the previous line, and then add the following line after the previous line. Replace `region-code` with the AWS Region that your cluster is in. Replace `EXAMPLE168660E7300CC5879EEXAMPLE` with your cluster's OIDC provider ID.
53+
```
54+
"oidc.eks.region-code.amazonaws.com/id/EXAMPLE168660E7300CC5879EEXAMPLE:sub": "system:serviceaccount:kube-system:ebs-params-controller"
55+
```
56+
14. Choose **Update policy** to finish.
57+
15. Copy the **ARN** value from the role's **Summary**.
58+
59+
**To deploy the EBS Params Controller**
60+
61+
1. Save the **Manifest** from https://github.com/Altinity/ebs-params-controller/blob/main/deployment.yaml
62+
2. Replace the `${role_arn}` string with your role's **ARN**.
63+
3. Apply the **Manifest**:
64+
```
65+
kubectl apply -n kube-system -f deployment.yaml
66+
```
1067

1168
## Annotations to control parameters
1269

0 commit comments

Comments
 (0)