https://github.com/romanow/project-operator
Kubernetes operator for Project resource
https://github.com/romanow/project-operator
ansible kubernetes-operator
Last synced: about 2 months ago
JSON representation
Kubernetes operator for Project resource
- Host: GitHub
- URL: https://github.com/romanow/project-operator
- Owner: Romanow
- Created: 2022-10-25T18:34:57.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-10-25T18:35:15.000Z (over 3 years ago)
- Last Synced: 2025-12-25T16:16:52.355Z (7 months ago)
- Topics: ansible, kubernetes-operator
- Language: Makefile
- Homepage:
- Size: 16.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Kubernetes Project operator with ansible
##### Создание шаблона оператора
```shell
$ operator-sdk init \
--plugins=ansible.sdk.operatorframework.io/v1 \
--domain k8s.romanow \
--generate-role \
--generate-playbook
$ operator-sdk create api \
--group ops \
--version v1alpha1 \
--kind Project \
--generate-role
```
##### Custom Resource Definition
[ops.k8s.romanow_projects.yaml](config/crd/bases/ops.k8s.romanow_projects.yaml)
##### Sample
[ops_v1alpha1_project.yaml](config/samples/ops_v1alpha1_project.yaml)
### Тестирование
```shell
$ molecule converge
```
### Тестирование на локальном кластере
```shell
$ kind create cluster --config kind.yml
$ make docker-build IMG=romanowalex/project-operator:v1.0
$ make docker-push IMG=romanowalex/project-operator:v1.0
$ make deploy IMG=romanowalex/project-operator:v1.0
$ kubectl get namespace
NAME STATUS AGE
default Active 20m
education-prod Active 10m
education-stage Active 10m
project-operator-system Active 18m
$ kubectl describe namespace education-prod master
Name: education-prod
Labels: app.kubernetes.io/managed-by=project-operator
kubernetes.io/metadata.name=education-prod
Annotations:
Status: Active
Resource Quotas
Name: resource-quota
Resource Used Hard
-------- --- ---
limits.cpu 0 1
limits.memory 0 1Gi
requests.cpu 0 1
requests.memory 0 1Gi
No LimitRange resource.
```
## Ссылки
1. [Собственный Kubernetes оператор за час (видео)](https://www.youtube.com/watch?v=tFzM-2pwL8A)
2. [Собственный Kubernetes оператор за час (текст)](https://habr.com/ru/company/southbridge/blog/658451/)