Розгортання демонстраційного застосунку
Щоб дослідити Istio, ви встановите демонстраційний застосунок Bookinfo, що складається з чотирьох окремих мікросервісів, які використовуються для демонстрації різних функцій Istio.
У рамках цього посібника ви розгорнете застосунок Bookinfo та відкриєте сервіс productpage
за допомогою ingress gateway.
Розгортання застосунку Bookinfo
Розпочніть з розгортання застосунку:
$ 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
:
$ 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.
Якщо ви оновите сторінку, ви повинні побачити, як рейтинги книг змінюються, оскільки запити розподіляються між різними версіями сервісу reviews
.
Подальші кроки
Перейдіть до наступного розділу, щоб додати застосунок до сервісної мережі та дізнатися, як забезпечити безпеку та візуалізувати комунікацію між застосунками.