djzager.hello_world_k8s
Ansible Rola: Hello World Kubernetes
Zarządza aplikacją Hello World w Kubernetes|OpenShift. Ten projekt zawiera również potrzebne elementy do wdrożenia tej roli za pomocą Ansible Operator w klastrze Kubernetes|OpenShift.
Wymagania
- ansible >= 2.6
- pakiet python openshift
Zmienne Roli
Zobacz defaults/main.yml.
Zależności
Brak
Przykładowy Playbook
UWAGA Przykład poniżej zakłada, że masz działający klaster Kubernetes|OpenShift
i wystarczające uprawnienia w przestrzeni nazw my-hello-world-namespace
.
- hosts: localhost
vars:
name: my-hello-world
namespace: my-hello-world-namespace
size: 3
roles:
- djzager.hello_world_k8s
Przykładowy Operator
UWAGA Przykład poniżej zakłada, że jesteś administratorem klastra Kubernetes|OpenShift. Dzieje się tak, ponieważ będziesz tworzyć Rolę, Binding Ról Konta Usług i Definicję Zasobów Niestandardowych.
Najpierw budujemy naszego operatora za pomocą operator-sdk
, link
tutaj:
$ operator-sdk build hello-world-operator
Następnie tworzymy ważne obiekty, których nasz operator potrzebuje do działania:
$ kubectl create -f deploy/service_account.yaml \
-f deploy/role.yaml \
-f deploy/role_binding.yaml \
-f deploy/crds/examples_v1alpha1_helloworld_crd.yaml \
Potem rozpoczynamy operatora:
# Użyj nazwy obrazu z kroku budowy operator-sdk powyżej
# i ustaw imagePullPolicy na Never
$ sed 's|REPLACE_IMAGE|hello-world-operator|g; s|Always|Never|' deploy/operator.yaml | kubectl create -f -
Na koniec tworzysz zasób HelloWorld:
$ kubectl create -f deploy/crds/examples_v1alpha1_helloworld_cr.yaml
Manage hello-world application in Kubernetes|OpenShift
ansible-galaxy install djzager.hello_world_k8s