Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
devops:aws [2022/05/28 10:07] – created admindevops:aws [2022/11/17 12:24] (current) – [Создать ключи для деплоя в кластер EKS] admin
Line 1: Line 1:
 ====== Делегирование прав неосновному аккаунту ====== ====== Делегирование прав неосновному аккаунту ======
-Вот у меня есть основой **Management Account 846936610080** и неосновной **827460979007**. Мне надо дать часть прав из основного аккаунта в неосновной. \\ +Вот у меня есть основой **Management Account 8xxxxxxx0080** и неосновной **8xxxxxxx9007**. Мне надо дать часть прав из основного аккаунта в неосновной. \\ 
-Для этогоЛогинимся в основной Management Account. \\ +Для этого
-Идем в меню в правом верхнем углу, потом -> **Security Credentials** -> **Roles** -> **Create Role**. И создаем роль с **Custom trust policy**, где указываем  **arn:aws:iam::827460979007:user/usik** что данная роль предназначена для вот такого аккаунта.  +  * Логинимся в основной **Management Account** 
-<code>+  Идем в меню в правом верхнем углу, потом -> **Security Credentials** -> **Roles** -> **Create Role**. 
 +  * Создаем роль с **Custom trust policy**, где указываем  **arn:aws:iam::8xxxxxxx9007:username/username** что данная роль предназначена для вот такого аккаунта <code>
 { {
  "Version": "2012-10-17",  "Version": "2012-10-17",
Line 11: Line 12:
  "Principal": { "AWS":   "Principal": { "AWS": 
                 [                 [
-                    "arn:aws:iam::827460979007:user/usik"+                    "arn:aws:iam::8xxxxxxx9007:username/username"
                 ]                 ]
  },  },
Line 19: Line 20:
 } }
 </code> </code>
-На втором шаше **AddPermissions** - ищем что надо, например - **route53fullaccess** и выбираем эту политику. \\ +  * втором шаге **AddPermissions** - ищем что надо, например - **route53fullaccess** и выбираем эту политику. \\ 
-Ну и дальше - при доступе к из **aws cli** надо в файле **~/.aws/config** прописать профиль, который будет свитчиться в ту роль. Примерно так: +  дальше - при доступе к из **aws cli** надо в файле **~/.aws/config** прописать профиль, который будет свитчиться в ту роль. Примерно так: <code>
-<code>+
 [profile specialrole] [profile specialrole]
-   role_arn = arn:aws:iam::846936610080:role/SpecialPrivilegesRole+   role_arn = arn:aws:iam::8xxxxxxx0080:role/SpecialPrivilegesRole
    source_profile = default    source_profile = default
 </code> </code>
-И дальше юзать cli так: +  * aws-cli юзать так: <code>aws route53 list-hosted-zones --profile specialrole</code> 
-  aws route53 list-hosted-zones --profile specialrole+ 
 +====== Найти EC2 Инстанс по IP ====== 
 +Например - есть публичный IP адрес машинки. надо найти где она - в каком регионе и как называется. \\ 
 +Для начала - определим регион. Для этого скачиваем файлик с соотвествием IP-диапазонов и регионов: 
 +  wget https://ip-ranges.amazonaws.com/ip-ranges.json 
 +Теперь найдем: 
 +  jq -r '.prefixes | .[]' < ip-ranges.json | grep 13.53 -A1 
 +Ну и теперь можем посмотреть машинки в нужном регионе: 
 +  AWS_PROFILE=main aws ec2 --region eu-north-1 describe-instances   --filter "Name=instance-state-name,Values=running"   --query "Reservations[*].Instances[*].[PublicIpAddress, Tags[?Key=='Name'].Value|[0], InstanceId]"   --output text 
 + 
 +====== Перезагрузить EC2 Instance ====== 
 +  AWS_PROFILE=main aws ec2 --region eu-north-1 reboot-instances --instance-ids i-02d4044d1542ab62e 
 + 
 +====== Создать ключи для деплоя в кластер EKS ====== 
 +Мне нужно создать пользователя и ключи дл ядеплоя в кластер EKS. \\ 
 +Для этого:  
 +  * идем в меню справа сверху -> **Security Credentials** 
 +  * Слева - **Users** -> **Add user** 
 +  * Создаем пользователя, **Credentials** type ставим **Access key - Programmatic access**, никаких политик ему не назначаем. После создания не забываем скаать **csv** с ключем. 
 +Дальше даем права юзеру в кластере
 +  * <code>kubectl -n kube-system edit configmap aws-auth</code> 
 +  * Редактируем **mapRoles** и добавлем туда пользователя. Внимание! **mapRoles** это строка, а не список:<code>  mapUsers: | 
 +    userarn: arn:aws:iam::123456789011:user/xxx 
 +      username: xxx 
 +      groups: 
 +        system: masters</code>
  • devops/aws.txt
  • Last modified: 2022/11/17 12:24
  • by admin