https://github.com/yandex-cloud-examples/yc-webinar-kubernetes-security-2021
Материалы вебинара «Безопасность в инфаструктуре, основанной на Kubernetes».
https://github.com/yandex-cloud-examples/yc-webinar-kubernetes-security-2021
kubernetes mk8s security terraform yandex-cloud yandexcloud
Last synced: 3 months ago
JSON representation
Материалы вебинара «Безопасность в инфаструктуре, основанной на Kubernetes».
- Host: GitHub
- URL: https://github.com/yandex-cloud-examples/yc-webinar-kubernetes-security-2021
- Owner: yandex-cloud-examples
- License: apache-2.0
- Created: 2024-03-08T08:58:20.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-13T09:42:21.000Z (8 months ago)
- Last Synced: 2025-02-28T02:56:20.780Z (8 months ago)
- Topics: kubernetes, mk8s, security, terraform, yandex-cloud, yandexcloud
- Language: HCL
- Homepage:
- Size: 134 KB
- Stars: 1
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Стенд для для практического вебинара по Kubernetes
Видео стенда будет доступно после публикации на Youtube
Стенд позволяет самостоятельно настроить все, что было показано в вебинаре. В частности1) Ролевую модель управления к разным контейнерным средам
2) Политики запуска подов в созданном кластере## Пререквизиты
- bash
- terraform
- jq
- [cli](https://cloud.yandex.ru/docs/cli/operations/install-cli), инициированный в профиле default а вашего пользователя( он должен быть admin или editor на уровне облака)
- Два тестовых фолдера. Их ID понадобятся ниже
- helm v3## Подготовка окружения
Стенд будет состоять из двух фолдеров и двух пользователей devops и developer.
Запишем ID фолдеров для нашей задач
```
export STAGING_FOLDER_ID=
export PROD_FOLDER_ID=
```Создадим сервисные аккаунты, которые будут эмулировать пользователей
```
$ yc iam service-account create --name devops-user1 --folder-id=$STAGING_FOLDER_ID
$ yc iam service-account create --name developer-user1 --folder-id=$STAGING_FOLDER_ID
```
Создадим два профиля для cli, один профиль будет эмулировать пользователя devops, второй developer
```
$ yc iam key create --service-account-name devops-user1 --folder-id=$STAGING_FOLDER_ID --output devops.json
$ yc iam key create --service-account-name developer-user1 --folder-id=$STAGING_FOLDER_ID --output developer.json$ yc config profile create demo-devops-user1
$ yc config set service-account-key devops.json$ yc config profile create demo-developer-user1
$ yc config set service-account-key developer.json
```
Проверим что в фолдерах для задания ни у кого пока нет никаких ролей
```
$yc resource-manager folder list-access-bindings --id=$STAGING_FOLDER_ID --profile=default+---------+--------------+------------+
| ROLE ID | SUBJECT TYPE | SUBJECT ID |
+---------+--------------+------------+
+---------+--------------+------------+$ yc resource-manager folder list-access-bindings --id=$PROD_FOLDER_ID --profile=default
+---------+--------------+------------+
| ROLE ID | SUBJECT TYPE | SUBJECT ID |
+---------+--------------+------------+
+---------+--------------+------------+
```Переходим к лабе
#### Часть первая - настройка ролевого доступа
```
$ cd ./terraform/iam
```И изучаем readme [данного раздела](./terraform/iam/)
#### Часть вторая - настройка политик
( Требует чтобы вы прошли часть 1 , или ранее созданного кластера kubernetes )
```
$ cd ./kubernetes/
```И изучаем readme [данного раздела](./kubernetes/)
#### Часть третья удаляем стенд
```
$ cd ./end
```И изучаем readme [данного раздела](./end/)