mirror of https://github.com/istio/istio.io.git
				
				
				
			
		
			
				
	
	
		
			80 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
| ---
 | ||
| title: Розгортання демонстраційного застосунку
 | ||
| description: Розротання демонстраційного застосунку Bookinfo.
 | ||
| weight: 2
 | ||
| owner: istio/wg-networking-maintainers
 | ||
| test: yes
 | ||
| ---
 | ||
| 
 | ||
| Щоб дослідити Istio, ви встановите демонстраційний [застосунок Bookinfo](/docs/examples/bookinfo/), що складається з чотирьох окремих мікросервісів, які використовуються для демонстрації різних функцій Istio.
 | ||
| 
 | ||
| {{< image width="50%" link="./bookinfo.svg" caption="Демонстраційний застосунок Bookinfo в Istio написаний різними мовами" >}}
 | ||
| 
 | ||
| У рамках цього посібника ви розгорнете застосунок Bookinfo та відкриєте сервіс `productpage` за допомогою ingress gateway.
 | ||
| 
 | ||
| ## Розгортання застосунку Bookinfo {#deploy-the-bookinfo-application}
 | ||
| 
 | ||
| Розпочніть з розгортання застосунку:
 | ||
| 
 | ||
| {{< text bash >}}
 | ||
| $ kubectl apply -f {{< github_file >}}/samples/bookinfo/platform/kube/bookinfo.yaml
 | ||
| $ kubectl apply -f {{< github_file >}}/samples/bookinfo/platform/kube/bookinfo-versions.yaml
 | ||
| {{< /text >}}
 | ||
| 
 | ||
| Щоб перевірити, що застосунок працює, перевірте статус podʼів:
 | ||
| 
 | ||
| {{< text syntax=bash snip_id=none >}}
 | ||
| $ 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
 | ||
| {{< /text >}}
 | ||
| 
 | ||
| Щоб отримати доступ до сервісу `productpage` ззовні кластера, потрібно налаштувати ingress gateway.
 | ||
| 
 | ||
| ## Розгортання та налаштування ingress gateway {#deploy-and-configure-the-ingress-gateway}
 | ||
| 
 | ||
| Ви будете використовувати Kubernetes Gateway API для розгортання шлюзу з назвою `bookinfo-gateway`:
 | ||
| 
 | ||
| {{< text syntax=bash snip_id=deploy_bookinfo_gateway >}}
 | ||
| $ kubectl apply -f {{< github_file >}}/samples/bookinfo/gateway-api/bookinfo-gateway.yaml
 | ||
| {{< /text >}}
 | ||
| 
 | ||
| Стандартно Istio створює сервіс `LoadBalancer` для шлюзу. Оскільки ми будемо отримувати доступ до цього шлюзу через тунель, нам не потрібен балансувальник навантаження. Змініть тип сервісу на `ClusterIP`, додавши анотацію до шлюзу:
 | ||
| 
 | ||
| {{< text syntax=bash snip_id=annotate_bookinfo_gateway >}}
 | ||
| $ kubectl annotate gateway bookinfo-gateway networking.istio.io/service-type=ClusterIP --namespace=default
 | ||
| {{< /text >}}
 | ||
| 
 | ||
| Щоб перевірити статус шлюзу, виконайте:
 | ||
| 
 | ||
| {{< text bash >}}
 | ||
| $ kubectl get gateway
 | ||
| NAME               CLASS   ADDRESS                                            PROGRAMMED   AGE
 | ||
| bookinfo-gateway   istio   bookinfo-gateway-istio.default.svc.cluster.local   True         42s
 | ||
| {{< /text >}}
 | ||
| 
 | ||
| Зачекайте, поки шлюз не зʼявиться, як запрограмовано, перш ніж продовжити.
 | ||
| 
 | ||
| ## Доступ до застосунку {#access-the-application}
 | ||
| 
 | ||
| Ви зможете зʼєднатись з сервісом Bookinfo `productpage` через шлюз, який ви щойно налаштували. Щоб отримати доступ до шлюзу, використовуйте команду `kubectl port-forward`:
 | ||
| 
 | ||
| {{< text syntax=bash snip_id=none >}}
 | ||
| $ kubectl port-forward svc/bookinfo-gateway-istio 8080:80
 | ||
| {{< /text >}}
 | ||
| 
 | ||
| Відкрийте ваш оглядач та перейдіть за адресою `http://localhost:8080/productpage`, щоб переглянути застосунок Bookinfo.
 | ||
| 
 | ||
| {{< image width="80%" link="./bookinfo-browser.png" caption="Застосунок Bookinfo" >}}
 | ||
| 
 | ||
| Якщо ви оновите сторінку, ви повинні побачити, як рейтинги книг змінюються, оскільки запити розподіляються між різними версіями сервісу `reviews`.
 | ||
| 
 | ||
| ## Подальші кроки {#next-steps}
 | ||
| 
 | ||
| [Перейдіть до наступного розділу](../secure-and-visualize/), щоб додати застосунок до сервісної мережі та дізнатися, як забезпечити безпеку та візуалізувати комунікацію між застосунками.
 |