Розгортання демонстраційного застосунку

Щоб дослідити Istio, ви встановите демонстраційний застосунок Bookinfo, що складається з чотирьох окремих мікросервісів, які використовуються для демонстрації різних функцій Istio.

Демонстраційний застосунок Bookinfo в Istio написаний різними мовами
Демонстраційний застосунок Bookinfo в Istio написаний різними мовами

У рамках цього посібника ви розгорнете застосунок Bookinfo та відкриєте сервіс productpage за допомогою ingress gateway.

Розгортання застосунку Bookinfo

Розпочніть з розгортання застосунку:

ZipZip
$ kubectl apply -f @samples/bookinfo/platform/kube/bookinfo.yaml@
$ kubectl apply -f @samples/bookinfo/platform/kube/bookinfo-versions.yaml@

Щоб перевірити, що застосунок працює, перевірте статус podʼів:

$ kubectl get pods
NAME                             READY   STATUS    RESTARTS   AGE
details-v1-cf74bb974-nw94k       1/1     Running   0          42s
productpage-v1-87d54dd59-wl7qf   1/1     Running   0          42s
ratings-v1-7c4bbf97db-rwkw5      1/1     Running   0          42s
reviews-v1-5fd6d4f8f8-66j45      1/1     Running   0          42s
reviews-v2-6f9b55c5db-6ts96      1/1     Running   0          42s
reviews-v3-7d99fd7978-dm6mx      1/1     Running   0          42s

Щоб отримати доступ до сервісу productpage ззовні кластера, потрібно налаштувати ingress gateway.

Розгортання та налаштування ingress gateway

Ви будете використовувати Kubernetes Gateway API для розгортання шлюзу з назвою bookinfo-gateway:

Zip
$ kubectl apply -f @samples/bookinfo/gateway-api/bookinfo-gateway.yaml@

Стандартно Istio створює сервіс LoadBalancer для шлюзу. Оскільки ми будемо отримувати доступ до цього шлюзу через тунель, нам не потрібен балансувальник навантаження. Змініть тип сервісу на ClusterIP, додавши анотацію до шлюзу:

$ kubectl annotate gateway bookinfo-gateway networking.istio.io/service-type=ClusterIP --namespace=default

Щоб перевірити статус шлюзу, виконайте:

$ kubectl get gateway
NAME               CLASS   ADDRESS                                            PROGRAMMED   AGE
bookinfo-gateway   istio   bookinfo-gateway-istio.default.svc.cluster.local   True         42s

Зачекайте, поки шлюз не зʼявиться, як запрограмовано, перш ніж продовжити.

Доступ до застосунку

Ви зможете зʼєднатись з сервісом Bookinfo productpage через шлюз, який ви щойно налаштували. Щоб отримати доступ до шлюзу, використовуйте команду kubectl port-forward:

$ kubectl port-forward svc/bookinfo-gateway-istio 8080:80

Відкрийте ваш оглядач та перейдіть за адресою http://localhost:8080/productpage, щоб переглянути застосунок Bookinfo.

Застосунок Bookinfo
Застосунок Bookinfo

Якщо ви оновите сторінку, ви повинні побачити, як рейтинги книг змінюються, оскільки запити розподіляються між різними версіями сервісу reviews.

Подальші кроки

Перейдіть до наступного розділу, щоб додати застосунок до сервісної мережі та дізнатися, як забезпечити безпеку та візуалізувати комунікацію між застосунками.

Чи була ця інформація корисною?
Чи є у вас пропозиції щодо покращення?

Дякуємо за ваш відгук!