init
This commit is contained in:
17
1.Cluster/README.md
Normal file
17
1.Cluster/README.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# Подготовка
|
||||
|
||||
* Необходимо 3 ноды (с докером) с белыми адресами и балансер.
|
||||
* Так же нужно подготовить субдомен для балансера и алиасы на него для
|
||||
* argo
|
||||
* keygloack
|
||||
* id
|
||||
|
||||
## Управление
|
||||
|
||||
управлять будем с [линзы](https://k8slens.dev)
|
||||
|
||||
## Разворачиваем тестовый кластер
|
||||
|
||||
1. rke up
|
||||
2. install cert-manager
|
||||
3. install longhorn with 2 replicas in storageClass
|
21
1.Cluster/cert-issuer.yaml
Normal file
21
1.Cluster/cert-issuer.yaml
Normal file
@@ -0,0 +1,21 @@
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: ClusterIssuer
|
||||
metadata:
|
||||
name: orc-letsencrypt-issuer
|
||||
spec:
|
||||
acme:
|
||||
# The ACME server URL
|
||||
server: https://acme-v02.api.letsencrypt.org/directory
|
||||
# Email address used for ACME registration
|
||||
email: vasyakrg@gmail.com
|
||||
# Name of a secret used to store the ACME account private key from step 3
|
||||
privateKeySecretRef:
|
||||
name: orc-letsencrypt-private-key
|
||||
# Enable the HTTP-01 challenge provider
|
||||
solvers:
|
||||
# An empty selector will 'match' all Certificate resources that
|
||||
# reference this Issuer.
|
||||
- selector: {}
|
||||
http01:
|
||||
ingress:
|
||||
class: nginx
|
59
1.Cluster/cluster.yml
Normal file
59
1.Cluster/cluster.yml
Normal file
@@ -0,0 +1,59 @@
|
||||
cluster_name: k8s-test
|
||||
kubernetes_version: v1.23.14-rancher1-1
|
||||
|
||||
ignore_docker_version: true
|
||||
|
||||
nodes:
|
||||
- address: 65.109.190.72
|
||||
hostname_override: node1
|
||||
user: root
|
||||
labels:
|
||||
worker: yes
|
||||
ingress: yes
|
||||
location: nsk
|
||||
role: [controlplane, worker, etcd]
|
||||
- address: 65.109.190.74
|
||||
hostname_override: node2
|
||||
user: root
|
||||
labels:
|
||||
worker: yes
|
||||
ingress: yes
|
||||
location: nsk
|
||||
role: [controlplane, worker, etcd]
|
||||
- address: 135.181.206.109
|
||||
hostname_override: node3
|
||||
user: root
|
||||
labels:
|
||||
worker: yes
|
||||
ingress: yes
|
||||
location: nsk
|
||||
role: [controlplane, worker, etcd]
|
||||
|
||||
services:
|
||||
etcd:
|
||||
snapshot: true
|
||||
creation: 6h
|
||||
retention: 30h
|
||||
kube-controller:
|
||||
extra_args:
|
||||
terminated-pod-gc-threshold: 100
|
||||
|
||||
authentication:
|
||||
strategy: x509
|
||||
sans:
|
||||
- "rke.xxx-net.ru"
|
||||
|
||||
ingress:
|
||||
provider: nginx
|
||||
node_selector:
|
||||
ingress: yes
|
||||
tolerations:
|
||||
- key: node-role.kubernetes.io/controlplane
|
||||
operator: Exists
|
||||
effect: NoSchedule
|
||||
- key: node-role.kubernetes.io/etcd
|
||||
operator: Exists
|
||||
effect: NoExecute
|
||||
extra_args:
|
||||
http-port: 80
|
||||
https-port: 443
|
34
README.md
Normal file
34
README.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# Курс по ArgoCD + Keycloak
|
||||
|
||||
## Научимся
|
||||
|
||||
1. разворачивать тестовый кластер
|
||||
2. устанавливать зависимости для комфортной работы
|
||||
3. разворачивать рабочие кластера ArgoCD и Keycloak
|
||||
4. разворачивать FreeIPA для ведения внешней базы данных пользователей
|
||||
5. собирать все это в кучу и настраивать взаимодействие
|
||||
6. напишим приложение на JS и подключим к нему авторизацию через Keycloak + FreeIPA
|
||||
|
||||
## Порядок действий
|
||||
|
||||
1. создаем 3 ноды под куб, одну ВМ под FreeIPA
|
||||
для куба идеально - ubuntu 20.04
|
||||
для IPA - fedora 35
|
||||
|
||||
2. поднимаем куб и стаавим зависимости для работы по [гайду](./1.Cluster/README.md)
|
||||
3. поднимаем ArgoCD по [гайду](./2.ArgoCD/README.md)
|
||||
4. через ArgoCD разворачиваем Keycloak в виде первого приложения
|
||||
5. на отдельную машину ставим FreeIPA, минимально настраиваем
|
||||
6. подключаем между собой все компоненты
|
||||
|
||||
## Видео к курсу
|
||||
|
||||
- [видео]()
|
||||
|
||||
### Автор
|
||||
|
||||
Vassiliy Yegorov
|
||||
|
||||
- [школа](https://realmanual.ru)
|
||||
- [youtube](https://youtube.com/realmanual)
|
||||
- [телега](https://t.me/realmanual_group)
|
Reference in New Issue
Block a user