Gloo Edge Service Mesh
Gloo Edge
Gloo Edge — це сучасний API Gateway, рідний для Kubernetes, який надає всю необхідну функціональність всередині Kubernetes. Gloo Edge допомагає вирішити питання, як ефективно керувати API та веб-трафіком в масштабах великого підприємства.
Налаштування Gloo Edge Open-Source в Minikube
Gloo Edge Open-Source працює в трьох різних режимах:
- Запуск Gloo Edge в режимі
gateway
для функціонування як API Gateway. - Запуск Gloo Edge в режимі
ingress
як стандартного контролера Kubernetes Ingress. - Gloo Edge Enterprise
Є два основних способи встановити Gloo Edge в продукційне середовище:
- Встановити Gloo Edge на Kubernetes.
- Запустити Gloo Edge на HashiCorp Nomad Cluster, використовуючи Consul для конфігурації та Vault для зберігання секретів.
Налаштування Kubernetes кластера та встановлення Gloo Edge
Ми будемо встановлювати Gloo Edge на Kubernetes
У цьому демонстраційному прикладі встановимо Gloo Edge в середовищі Minikube Kubernetes Cluster. Кроки:
- Встановіть Colima
- Встановіть Minikube
- Встановіть Gloo Edge
- Встановіть Gloo Gateway
- Розгорніть тестовий додаток
- Перевірте Upstream для тестового додатку
- Налаштуйте маршрутизацію
- Перевірте Virtual Service
- Протестуйте додаток
Встановлення Colima та Minikube на Mac OS
Джерело: https://blog.kubelancer.com/install-minikube-on-mac-os/
Встановлення Gloo Edge
Виконайте наступну команду для встановлення контрольного бінарного файлу Gloo
$ curl -sL https://run.solo.io/gloo/install | sh
Експортуємо бінарний шлях як змінну середовища OS
$ export PATH=$HOME/.gloo/bin:$PATH
Встановлення Gloo Gateway
$ glooctl install gateway
Перевірка статусу встановлення Gloo Gateway
Зверніть увагу, що LoadBalancer знаходиться в стані "Pending". Щоб призначити IP-адресу для LoadBalancer, створіть мережевий тунель для відкриття сервісів типу
LoadBalancer
на локальну IP-адресу 127.0.0.1 / localhost.
Виконайте в окремому терміналі
$ minikube tunnel
Перевірте LoadBalancer
$ kubectl get svc -n gloo-system
Розгортання тестового додатка в namespace dev
$ cd kubelancer-lab-sample-deployment
$ kubectl apply -f deployment.yaml
Перевірка Upstream для тестового додатка
$ glooctl get upstreams
Налаштування маршруту
Тепер налаштуємо маршрут для створення правил трафіку для публічного доступу до додатка
$ glooctl add route --path-prefix=/ --dest-name dev-kubeapp-80
— dest-name dev-kubeapp — це upstream
Перевірка Virtual Service
$ glooctl get virtualservice
Тестування додатка
Виконайте http://localhost
Вихід
Для видалення тестового додатка, Gloo Edge, Minikube і Colima
$ kubectl delete -f deployment.yaml
$ glooctl uninstall --all
$ minikube stop
$ colima stop
Перекладено з: [Gloo Edge setup on Kubernetes](https://balablog.medium.com/gloo-edge-setup-on-kubernetes-ef4491070114)