Guides -> Examples

As agreed, in prep for the 1.0 launch.
This commit is contained in:
mtail 2018-06-27 16:03:53 -07:00
parent 527ae646fc
commit e3c1f36859
51 changed files with 126 additions and 116 deletions

View File

@ -35,10 +35,10 @@ is the best fit for your content:
</tr>
<tr>
<td>Guides</td>
<td>A guide page describes a fully working stand-alone example highlighting a particular set of features. Guides
<td>Examples</td>
<td>An example page describes a fully working stand-alone example highlighting a particular set of features. Examples
must have easy to follow setup and usage instructions so users can quickly run the sample
themselves and experiment with changing the sample to explore the system.
themselves and experiment with changing the example to explore the system.
</td>
</tr>

View File

@ -53,7 +53,7 @@ Below is our list of existing features and their current phases. This informatio
| Feature | Phase
|-------------------|-------------------
| [Prometheus Integration](/docs/tasks/telemetry/querying-metrics/) | Beta
| [Local Logging (STDIO)](/docs/guides/telemetry/) | Stable
| [Local Logging (STDIO)](/docs/examples/telemetry/) | Stable
| [Statsd Integration](/docs/reference/config/policy-and-telemetry/adapters/statsd/) | Stable
| [Service Dashboard in Grafana](/docs/tasks/telemetry/using-istio-dashboard/) | Beta
| [Stackdriver Integration](/docs/reference/config/policy-and-telemetry/adapters/stackdriver/) | Alpha
@ -87,7 +87,7 @@ Below is our list of existing features and their current phases. This informatio
| [Pilot Integration into Kubernetes Service Discovery](/docs/setup/kubernetes/) | Stable
| [Attribute Expression Language](/docs/reference/config/policy-and-telemetry/expression-language/) | Stable
| [Mixer Adapter Authoring Model](/blog/2017/adapter-model/) | Stable
| [VM: Envoy Installation, Traffic Interception and Service Registration](/docs/guides/integrating-vms/) | Alpha
| [VM: Envoy Installation, Traffic Interception and Service Registration](/docs/examples/integrating-vms/) | Alpha
| [VM: Istio Control Plane Installation and Upgrade (Galley, Mixer, Pilot, CA)](https://github.com/istio/istio/issues/2083) | Alpha
| VM: Ansible Envoy Installation, Interception and Registration | Alpha
| [Pilot Integration into Consul](/docs/setup/consul/quick-start/) | Alpha

View File

@ -104,7 +104,7 @@ spec:
Here is the service graph for the Bookinfo application.
{{< image width="80%" ratio="59.08%"
link="/docs/guides/bookinfo/withistio.svg"
link="/docs/examples/bookinfo/withistio.svg"
caption="Bookinfo Service Graph"
>}}

View File

@ -10,23 +10,23 @@ keywords: [traffic-management,egress,https]
In many cases, not all the parts of a microservices-based application reside in a _service mesh_. Sometimes, the microservices-based applications use functionality provided by legacy systems that reside outside the mesh. We may want to migrate these systems to the service mesh gradually. Until these systems are migrated, they must be accessed by the applications inside the mesh. In other cases, the applications use web services provided by external organizations, often over the World Wide Web.
In this blog post, I modify the [Istio Bookinfo Sample Application](/docs/guides/bookinfo/) to fetch book details from an external web service ([Google Books APIs](https://developers.google.com/books/docs/v1/getting_started)). I show how to enable external HTTPS traffic in Istio by using an _egress rule_. Finally, I explain the current issues related to the egress traffic control in Istio.
In this blog post, I modify the [Istio Bookinfo Sample Application](/docs/examples/bookinfo/) to fetch book details from an external web service ([Google Books APIs](https://developers.google.com/books/docs/v1/getting_started)). I show how to enable external HTTPS traffic in Istio by using an _egress rule_. Finally, I explain the current issues related to the egress traffic control in Istio.
## Bookinfo sample application with external details web service
### Initial setting
To demonstrate the scenario of consuming an external web service, I start with a Kubernetes cluster with [Istio installed](/docs/setup/kubernetes/quick-start/#installation-steps). Then I deploy [Istio Bookinfo Sample Application](/docs/guides/bookinfo/). This application uses the _details_ microservice to fetch book details, such as the number of pages and the publisher. The original _details_ microservice provides the book details without consulting any external service.
To demonstrate the scenario of consuming an external web service, I start with a Kubernetes cluster with [Istio installed](/docs/setup/kubernetes/quick-start/#installation-steps). Then I deploy [Istio Bookinfo Sample Application](/docs/examples/bookinfo/). This application uses the _details_ microservice to fetch book details, such as the number of pages and the publisher. The original _details_ microservice provides the book details without consulting any external service.
The example commands in this blog post work with Istio 0.2+, with or without [Mutual TLS](/docs/concepts/security/mutual-tls/) enabled.
The Bookinfo configuration files required for the scenario of this post appear starting from [Istio release version 0.5](https://github.com/istio/istio/releases/tag/0.5.0).
The Bookinfo configuration files reside in the `samples/bookinfo/kube` directory of the Istio release archive.
Here is a copy of the end-to-end architecture of the application from the original [Bookinfo Guide](/docs/guides/bookinfo/).
Here is a copy of the end-to-end architecture of the application from the original [Bookinfo sample application](/docs/examples/bookinfo/).
{{< image width="80%" ratio="59.08%"
link="/docs/guides/bookinfo/withistio.svg"
link="/docs/examples/bookinfo/withistio.svg"
caption="The Original Bookinfo Application"
>}}
@ -65,7 +65,7 @@ spec:
EOF
```
Let's access the web page of the application, after [determining the ingress IP and port](/docs/guides/bookinfo/#determining-the-ingress-ip-and-port).
Let's access the web page of the application, after [determining the ingress IP and port](/docs/examples/bookinfo/#determining-the-ingress-ip-and-port).
Oops... Instead of the book details we have the _Error fetching product details_ message displayed:

View File

@ -10,11 +10,11 @@ aliases:
keywords: [traffic-management,egress,tcp]
---
In my previous blog post, [Consuming External Web Services](/blog/2018/egress-https/), I described how external services can be consumed by in-mesh Istio applications via HTTPS. In this post, I demonstrate consuming external services over TCP. I use the [Istio Bookinfo sample application](/docs/guides/bookinfo/), the version in which the book ratings data is persisted in a MySQL database. I deploy this database outside the cluster and configure the _ratings_ microservice to use it. I define an [egress rule](/docs/reference/config/istio.routing.v1alpha1/#EgressRule) to allow the in-mesh applications to access the external database.
In my previous blog post, [Consuming External Web Services](/blog/2018/egress-https/), I described how external services can be consumed by in-mesh Istio applications via HTTPS. In this post, I demonstrate consuming external services over TCP. I use the [Istio Bookinfo sample application](/docs/examples/bookinfo/), the version in which the book ratings data is persisted in a MySQL database. I deploy this database outside the cluster and configure the _ratings_ microservice to use it. I define an [egress rule](/docs/reference/config/istio.routing.v1alpha1/#EgressRule) to allow the in-mesh applications to access the external database.
## Bookinfo sample application with external ratings database
First, I set up a MySQL database instance to hold book ratings data, outside my Kubernetes cluster. Then I modify the [Bookinfo sample application](/docs/guides/bookinfo/) to use my database.
First, I set up a MySQL database instance to hold book ratings data, outside my Kubernetes cluster. Then I modify the [Bookinfo sample application](/docs/examples/bookinfo/) to use my database.
### Setting up the database for ratings data
@ -120,14 +120,14 @@ Now I am ready to deploy a version of the Bookinfo application that will use my
### Initial setting of Bookinfo application
To demonstrate the scenario of using an external database, I start with a Kubernetes cluster with [Istio installed](/docs/setup/kubernetes/quick-start/#installation-steps). Then I deploy the [Istio Bookinfo sample application](/docs/guides/bookinfo/). This application uses the _ratings_ microservice to fetch book ratings, a number between 1 and 5. The ratings are displayed as stars for each review. There are several versions of the _ratings_ microservice. Some use [MongoDB](https://www.mongodb.com), others use [MySQL](https://www.mysql.com) as their database.
To demonstrate the scenario of using an external database, I start with a Kubernetes cluster with [Istio installed](/docs/setup/kubernetes/quick-start/#installation-steps). Then I deploy the [Istio Bookinfo sample application](/docs/examples/bookinfo/). This application uses the _ratings_ microservice to fetch book ratings, a number between 1 and 5. The ratings are displayed as stars for each review. There are several versions of the _ratings_ microservice. Some use [MongoDB](https://www.mongodb.com), others use [MySQL](https://www.mysql.com) as their database.
The example commands in this blog post work with Istio 0.3+, with or without [Mutual TLS](/docs/concepts/security/mutual-tls/) enabled.
As a reminder, here is the end-to-end architecture of the application from the [Bookinfo Guide](/docs/guides/bookinfo/).
As a reminder, here is the end-to-end architecture of the application from the [Bookinfo sample application](/docs/examples/bookinfo/).
{{< image width="80%" ratio="59.08%"
link="/docs/guides/bookinfo/withistio.svg"
link="/docs/examples/bookinfo/withistio.svg"
caption="The original Bookinfo application"
>}}
@ -175,7 +175,7 @@ Note that the MySQL database is outside the Istio service mesh, or more precisel
### Access the webpage
Let's access the webpage of the application, after [determining the ingress IP and port](/docs/guides/bookinfo/#determining-the-ingress-ip-and-port).
Let's access the webpage of the application, after [determining the ingress IP and port](/docs/examples/bookinfo/#determining-the-ingress-ip-and-port).
We have a problem... Instead of the rating stars, the message _"Ratings service is currently unavailable"_ is currently displayed below each review:
@ -258,7 +258,7 @@ Also note that the IPs of an external service are not always static, for example
## Relation to mesh expansion
Note that the scenario described in this post is different from the mesh expansion scenario, described in the
[Integrating Virtual Machines](/docs/guides/integrating-vms/) guide. In that scenario, a MySQL instance runs on an external
[Integrating Virtual Machines](/docs/examples/integrating-vms/) example. In that scenario, a MySQL instance runs on an external
(outside the cluster) machine (a bare metal or a VM), integrated with the Istio service mesh. The MySQL service becomes a first-class citizen of the mesh with all the beneficial features of Istio applicable. Among other things, the service becomes addressable by a local cluster domain name, for example by `mysqldb.vm.svc.cluster.local`, and the communication to it can be secured by
[mutual TLS authentication](/docs/concepts/security/mutual-tls/). There is no need to create an egress rule to access this service; however, the
service must be registered with Istio. To enable such integration, Istio components (_Envoy proxy_, _node-agent_, _istio-agent_) must be

View File

@ -13,7 +13,7 @@ and export those logs to various configured sinks such as such as
or [Cloud Pub/Sub](https://cloud.google.com/pubsub/). At the end of this post you can perform
analytics on Istio data from your favorite places such as BigQuery, GCS or Cloud Pub/Sub.
The [Bookinfo](/docs/guides/bookinfo/) sample application is used as the example
The [Bookinfo](/docs/examples/bookinfo/) sample application is used as the example
application throughout this task.
## Before you begin
@ -253,7 +253,7 @@ exported. In detail as follows:
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions to shutdown
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions to shutdown
the application.
## Availability of logs in export sinks

View File

@ -257,7 +257,7 @@ Error from server (Forbidden): pods is forbidden: User "dev-admin" cannot list p
```
The tenant administrator can deploy applications in the application namespace configured for
that tenant. As an example, updating the [Bookinfo](/docs/guides/bookinfo/)
that tenant. As an example, updating the [Bookinfo](/docs/examples/bookinfo/)
manifests and then deploying under the tenant's application namespace of *ns-0*, listing the
pods in use by this tenant's namespace is permitted:

View File

@ -161,7 +161,7 @@ In effect, what has changed is that instead of configuring routing using a set o
now configure the (virtual) destination itself, with all of its rules in an ordered list within a corresponding
[VirtualService](/docs/reference/config/istio.networking.v1alpha3/#VirtualService) resource.
For example, where previously we had two `RouteRule` resources for the
[Bookinfo](/docs/guides/bookinfo/) applications `reviews` service, like this:
[Bookinfo](/docs/examples/bookinfo/) applications `reviews` service, like this:
```yaml
apiVersion: config.istio.io/v1alpha2

View File

@ -20,7 +20,7 @@ is where you can learn about what Istio does and how it does it.
- [Tasks](/docs/tasks/). Tasks show you how to do a single directed activity with Istio.
- [Guides](/docs/guides/). Guides are fully working stand-alone examples
- [Examples](/docs/examples/). Examples are fully working and stand-alone demonstrations
intended to highlight a particular set of Istio's features.
- [Performance and Scalability](/docs/performance-and-scalability/).

View File

@ -103,7 +103,7 @@ policy based on service identity rather than network controls. Starting from rel
- Learn about Istio's [design goals](/docs/concepts/what-is-istio/goals/).
- Explore our [Guides](/docs/guides/).
- Explore our [Guides](/docs/examples/).
- Read about Istio components in detail in our other [Concepts](/docs/concepts/) guides.

View File

@ -0,0 +1,9 @@
---
title: Examples
description: A variety of fully working example uses for Istio that you can experiment with.
weight: 30
type: section-index
aliases:
- /docs/samples/index.html
- /docs/guides/index.html
---

View File

@ -1,23 +1,24 @@
---
title: Bookinfo Sample Application
description: This guide deploys a sample application composed of four separate microservices which will be used to demonstrate various features of the Istio service mesh.
description: Deploys a sample application composed of four separate microservices used to demonstrate various Istio features.
weight: 10
aliases:
- /docs/samples/bookinfo.html
- /docs/guides/bookinfo/index.html
---
> Note: This guide assumes you will be using the new [v1alpha3 traffic management API](/blog/2018/v1alpha3-routing/).
> Note: This example assumes you will be using the new [v1alpha3 traffic management API](/blog/2018/v1alpha3-routing/).
The old API has been deprecated and will be removed in the next Istio release.
If you need to use the old version, you can follow the old instructions [here](https://archive.istio.io/v0.6/docs/guides/bookinfo.html),
but note that on Kubernetes you will need to run an additional command (`kubectl apply -f samples/bookinfo/kube/bookinfo-gateway.yaml`)
to define the Ingress, which previously was included in `bookinfo.yaml`.
This guide deploys a sample application composed of four separate microservices which will be used
to demonstrate various features of the Istio service mesh.
This example deploys a sample application composed of four separate microservices used
to demonstrate various Istio features.
## Overview
In this guide we will deploy a simple application that displays information about a
In this example we will deploy a simple application that displays information about a
book, similar to a single catalog entry of an online book store. Displayed
on the page is a description of the book, book details (ISBN, number of
pages, and so on), and a few book reviews.
@ -199,7 +200,7 @@ version routing.
You can now use this sample to experiment with Istio's features for
traffic routing, fault injection, rate limiting, etc..
To proceed, refer to one or more of the [Istio Guides](/docs/guides),
depending on your interest. [Intelligent Routing](/docs/guides/intelligent-routing/)
depending on your interest. [Intelligent Routing](/docs/examples/intelligent-routing/)
is a good place to start for beginners.
## Cleanup

View File

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 83 KiB

View File

Before

Width:  |  Height:  |  Size: 96 KiB

After

Width:  |  Height:  |  Size: 96 KiB

View File

@ -2,6 +2,8 @@
title: Install Istio for Google Cloud Endpoints Services
description: Explains how to manually integrate Google Cloud Endpoints services with Istio.
weight: 42
aliases:
- /docs/guides/endpoints/index.html
---
This document shows how to manually integrate Istio with existing

View File

@ -1,15 +1,17 @@
---
title: Integrating Virtual Machines
description: This sample deploys the Bookinfo services across Kubernetes and a set of virtual machines, and illustrates how to use the Istio service mesh to control this infrastructure as a single mesh.
description: Illustrates how to use Istio to control a Kubernetes cluster and raw VMs as a single mesh.
weight: 60
keywords: [vms]
aliases:
- /docs/guides/integrating-vms/index.html
---
This sample deploys the Bookinfo services across Kubernetes and a set of
This example deploys the Bookinfo services across Kubernetes and a set of
Virtual Machines, and illustrates how to use Istio service mesh to control
this infrastructure as a single mesh.
> This guide is still under development and only tested on Google Cloud Platform.
> This example is still under development and only tested on Google Cloud Platform.
On IBM Cloud or other platforms where overlay network of Pods is isolated from VM network,
VMs cannot initiate any direct communication to Kubernetes Pods even when using Istio.
@ -27,7 +29,7 @@ VMs cannot initiate any direct communication to Kubernetes Pods even when using
* Setup Istio by following the instructions in the
[Installation guide](/docs/setup/kubernetes/quick-start/).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application (in the `bookinfo` namespace).
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application (in the `bookinfo` namespace).
* Create a VM named 'vm-1' in the same project as Istio cluster, and [Join the Mesh](/docs/setup/kubernetes/mesh-expansion/).

View File

Before

Width:  |  Height:  |  Size: 210 KiB

After

Width:  |  Height:  |  Size: 210 KiB

View File

@ -1,11 +1,13 @@
---
title: Intelligent Routing
description: This guide demonstrates how to use various traffic management capabilities of an Istio service mesh.
description: Demonstrates how to use various traffic management capabilities of an Istio service mesh.
weight: 20
keywords: [traffic-management,routing]
aliases:
- /docs/guides/intelligent-routing/index.html
---
This guide demonstrates how to use various traffic management capabilities
This example demonstrates how to use various traffic management capabilities
of an Istio service mesh.
## Overview
@ -15,7 +17,7 @@ to externally control service monitoring and tracing, request (version) routing,
security and policy enforcement, etc., in a consistent way across the services,
for the application as a whole.
In this guide, we will use the [Bookinfo sample application](/docs/guides/bookinfo/)
In this example, we will use the [Bookinfo sample application](/docs/examples/bookinfo/)
to show how operators can dynamically configure request routing and fault injection
for a running application.
@ -25,7 +27,7 @@ for a running application.
corresponding to your platform [installation guide](/docs/setup/).
* Run the Bookinfo sample application by following the applicable
[application deployment instructions](/docs/guides/bookinfo/#deploying-the-application).
[application deployment instructions](/docs/examples/bookinfo/#deploying-the-application).
## Tasks
@ -48,5 +50,5 @@ for a running application.
When you're finished experimenting with the Bookinfo sample, you can
uninstall it by following the
[Bookinfo cleanup instructions](/docs/guides/bookinfo/#cleanup)
[Bookinfo cleanup instructions](/docs/examples/bookinfo/#cleanup)
corresponding to your environment.

View File

@ -1,11 +1,13 @@
---
title: In-Depth Telemetry
description: This sample demonstrates how to obtain uniform metrics, logs, traces across different services using Istio Mixer and Istio sidecar.
description: Demonstrates how to obtain uniform metrics, logs, traces across different services using Istio Mixer and Istio sidecar.
weight: 30
keywords: [telemetry]
keywords: [telemetry,metrics,logging,tracing]
aliases:
- /docs/guides/telemetry/index.html
---
This sample demonstrates how to obtain uniform metrics, logs, traces across different services using Istio Mixer and Istio sidecar.
This example demonstrates how to obtain uniform metrics, logs, traces across different services using Istio Mixer and Istio sidecar.
## Overview
@ -14,7 +16,7 @@ to externally control service monitoring and tracing, request (version) routing,
security and policy enforcement, etc., in a consistent way across the services,
for the application as a whole.
In this guide, we will use the [Bookinfo sample application](/docs/guides/bookinfo/)
In this example, we will use the [Bookinfo sample application](/docs/examples/bookinfo/)
to show how operators can obtain uniform metrics and traces from running
applications involving diverse language frameworks without relying on
developers to manually instrument their applications.
@ -25,7 +27,7 @@ developers to manually instrument their applications.
corresponding to your platform [installation guide](/docs/setup/).
* Run the Bookinfo sample application by following the applicable
[application deployment instructions](/docs/guides/bookinfo/#deploying-the-application).
[application deployment instructions](/docs/examples/bookinfo/#deploying-the-application).
## Tasks
@ -53,5 +55,5 @@ developers to manually instrument their applications.
When you're finished experimenting with the Bookinfo sample, you can
uninstall it by following the
[Bookinfo cleanup instructions](/docs/guides/bookinfo/#cleanup)
[Bookinfo cleanup instructions](/docs/examples/bookinfo/#cleanup)
corresponding to your environment.

View File

@ -1,8 +0,0 @@
---
title: Guides
description: Guides include a variety of fully working example uses for Istio that you can experiment with.
weight: 30
type: section-index
aliases:
/docs/samples/index.html
---

View File

@ -67,7 +67,7 @@ For example, run the following command on a MacOS or Linux system:
## Deploy your application
You can now deploy your own application or one of the sample applications provided with the
installation like [Bookinfo](/docs/guides/bookinfo/).
installation like [Bookinfo](/docs/examples/bookinfo/).
> Since there is no concept of pods in a Docker setup, the Istio
> sidecar runs in the same container as the application. We will
@ -91,4 +91,4 @@ $ docker-compose -f @install/consul/istio.yaml@ down
## What's next
* See the sample [Bookinfo](/docs/guides/bookinfo/) application.
* See the sample [Bookinfo](/docs/examples/bookinfo/) application.

View File

@ -61,7 +61,7 @@ For example, run the following command on a MacOS or Linux system:
## Deploy your application
You can now deploy your own application or one of the sample applications provided with the
installation like [Bookinfo](/docs/guides/bookinfo/).
installation like [Bookinfo](/docs/examples/bookinfo/).
> Since there is no concept of pods in a Docker setup, the Istio
> sidecar runs in the same container as the application. We will
@ -85,4 +85,4 @@ $ docker-compose -f @install/eureka/istio.yaml@ down
## What's next
* See the sample [Bookinfo](/docs/guides/bookinfo/) application.
* See the sample [Bookinfo](/docs/examples/bookinfo/) application.

View File

@ -144,13 +144,13 @@ istio-pilot-58c65f74bc-2f5xn 2/2 Running 0 1m
istio-sidecar-injector-86cc99578-4t58m 1/1 Running 0 1m
```
With this minimal set you can proceed to installing the sample [Bookinfo](/docs/guides/bookinfo/) application or install your own application and [configure request routing](/docs/tasks/traffic-management/request-routing/) for instance.
With this minimal set you can proceed to installing the sample [Bookinfo](/docs/examples/bookinfo/) application or install your own application and [configure request routing](/docs/tasks/traffic-management/request-routing/) for instance.
Of course that if no ingress is expected and sidecar is to be [injected manually](/docs/setup/kubernetes/sidecar-injection/#manual-sidecar-injection) then you can reduce this minimal set even further and only have Pilot and Citadel. However, Pilot depends on Citadel therefore you can't install it without the other.
## What's next
See the sample [Bookinfo](/docs/guides/bookinfo/) application.
See the sample [Bookinfo](/docs/examples/bookinfo/) application.
## Uninstall

View File

@ -279,4 +279,4 @@ services running on the machine.
## What's next
* See the [Bookinfo Mesh Expansion](/docs/guides/integrating-vms/) guide.
* See the [Bookinfo Mesh Expansion](/docs/examples/integrating-vms/) guide.

View File

@ -7,8 +7,8 @@ keywords: [kubernetes,gke]
Quick Start instructions to install and run Istio in [Google Kubernetes Engine](https://cloud.google.com/kubernetes-engine/) (GKE) using [Google Cloud Deployment Manager](https://cloud.google.com/deployment-manager/).
This Quick Start creates a new GKE [zonal cluster](https://cloud.google.com/kubernetes-engine/versioning-and-upgrades#versions_available_for_new_cluster_masters), installs the current release version of Istio and then deploys the [Bookinfo](/docs/guides/bookinfo/) sample
application. It uses Deployment Manager to automate the steps detailed in the [Istio on Kubernetes setup guide](/docs/setup/kubernetes/quick-start/) for Kubernetes Engine
This Quick Start creates a new GKE [zonal cluster](https://cloud.google.com/kubernetes-engine/versioning-and-upgrades#versions_available_for_new_cluster_masters), installs the current release version of Istio and then deploys the [Bookinfo](/docs/examples/bookinfo/) sample
application. It uses Deployment Manager to automate the steps detailed in the [Istio on Kubernetes setup instructions](/docs/setup/kubernetes/quick-start/) for Kubernetes Engine
## Prerequisites
@ -47,7 +47,7 @@ caption="GKE-IAM Role"
We recommend that you leave the default settings as the rest of this tutorial shows how to access the installed features. By default the tool creates a
GKE alpha cluster with the specified settings, then installs the Istio [control plane](/docs/concepts/what-is-istio/overview/#architecture), the
[Bookinfo](/docs/guides/bookinfo/) sample app,
[Bookinfo](/docs/examples/bookinfo/) sample app,
[Grafana](/docs/tasks/telemetry/using-istio-dashboard/) with
[Prometheus](/docs/tasks/telemetry/querying-metrics/),
[ServiceGraph](/docs/tasks/telemetry/servicegraph/),
@ -246,7 +246,7 @@ For more details on tracing see [Understanding what happened](/docs/tasks/teleme
## What's next
You can further explore the Bookinfo app and Istio functionality by following any of the tutorials in the
[Guides](/docs/guides/) section. However, to do this you need to install `istioctl` to interact
[Guides](/docs/examples/) section. However, to do this you need to install `istioctl` to interact
with Istio. You can either [install](/docs/setup/kubernetes/quick-start/#installation-steps) it directly
on our workstation or within Cloud Shell.

View File

@ -329,7 +329,7 @@ containers are up and running: `istio-pilot-*`,
## Deploy your application
You can now deploy your own application or one of the sample applications provided with the
installation like [Bookinfo](/docs/guides/bookinfo/).
installation like [Bookinfo](/docs/examples/bookinfo/).
Note: the application must use HTTP/1.1 or HTTP/2.0 protocol for all its HTTP traffic because HTTP/1.0 is not supported.
If you started the [Istio-sidecar-injector](/docs/setup/kubernetes/sidecar-injection/#automatic-sidecar-injection),
@ -366,6 +366,6 @@ otherwise [uninstall Istio with Helm](/docs/setup/kubernetes/helm-install/#unins
## What's next
* See the sample [Bookinfo](/docs/guides/bookinfo/) application.
* See the sample [Bookinfo](/docs/examples/bookinfo/) application.
* See how to [test mutual TLS authentication](/docs/tasks/security/mutual-tls/).

View File

@ -104,7 +104,7 @@ admissionregistration.k8s.io/v1alpha1
admissionregistration.k8s.io/v1beta1
```
See the Kubernetes [quick start](/docs/setup/kubernetes/quick-start/) guide for instructions on installing Kubernetes version >= 1.9.
See [Kubernetes quick start](/docs/setup/kubernetes/quick-start/) for instructions on installing Kubernetes version >= 1.9.
Note that unlike manual injection, automatic injection occurs at the pod-level. You won't see any change to the deployment itself. Instead you'll want to check individual pods (via `kubectl describe`) to see the injected proxy.

View File

@ -1,6 +1,6 @@
---
title: Upgrading Istio
description: This guide demonstrates how to upgrade the Istio control plane and data plane independently.
description: Demonstrates how to upgrade the Istio control plane and data plane independently.
weight: 70
keywords: [kubernetes,upgrading]
---

View File

@ -15,7 +15,7 @@ service.
* Setup Istio in a Kubernetes cluster by following the quick start instructions
in the [Installation guide](/docs/setup/kubernetes/quick-start/).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
* Initialize the application version routing to direct `reviews` service
requests from test user "jason" to version v2 and requests from any other
@ -263,7 +263,7 @@ with the given namespace.
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next

View File

@ -14,7 +14,7 @@ This task shows how to control access to a service using the Kubernetes labels.
* Set up Istio on Kubernetes by following the instructions in the
[Installation guide](/docs/setup/kubernetes/).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
* Initialize the application version routing to direct `reviews` service requests from
test user "jason" to version v2 and requests from any other user to v3.
@ -40,7 +40,7 @@ This task shows how to control access to a service using the Kubernetes labels.
Using Istio you can control access to a service based on any attributes that are available within Mixer.
This simple form of access control is based on conditionally denying requests using Mixer selectors.
Consider the [Bookinfo](/docs/guides/bookinfo/) sample application where the `ratings` service is accessed by multiple versions
Consider the [Bookinfo](/docs/examples/bookinfo/) sample application where the `ratings` service is accessed by multiple versions
of the `reviews` service. We would like to cut off access to version `v3` of the `reviews` service.
1. Point your browser at the Bookinfo `productpage` (http://$GATEWAY_URL/productpage).
@ -178,7 +178,7 @@ Verify that after logging in as "jason" you see black stars.
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next

View File

@ -72,7 +72,7 @@ The following steps enable plugging in the certificates and key into Citadel:
In this section, we verify that the new workload certificates and root certificates are propagated.
This requires you have `openssl` installed on your machine.
1. Deploy the bookinfo application following the [instructions](/docs/guides/bookinfo/).
1. Deploy the bookinfo application following the [instructions](/docs/examples/bookinfo/).
1. Retrieve the mounted certificates.
In the following, we take the ratings pod as an example, and verify the certificates mounted on the pod.

View File

@ -15,7 +15,7 @@ RBAC from [Istio RBAC concept page](/docs/concepts/security/rbac/).
Note that authentication should be enabled at step 5 in the
[installation steps](/docs/setup/kubernetes/quick-start/#installation-steps).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
> The current Istio release may not have the up-to-date Istio RBAC samples. So before you continue, you
need to copy these [configuration files](https://github.com/istio/istio/blob/{{<branch_name>}}/samples/bookinfo/kube) to

View File

@ -20,7 +20,7 @@ For the format of the service account in Istio, please refer to the
Note that authentication should be enabled at step 5 in the
[installation steps](/docs/setup/kubernetes/quick-start/#installation-steps).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
* Run the following command to create service account `bookinfo-productpage`,
and redeploy the service `productpage` with the service account.
@ -39,7 +39,7 @@ use `$ istioctl -n namespace ...` to specify the namespace.
## Access control using _denials_
In the [Bookinfo](/docs/guides/bookinfo/) sample application, the `productpage` service is accessing
In the [Bookinfo](/docs/examples/bookinfo/) sample application, the `productpage` service is accessing
both the `reviews` service and the `details` service. We would like the `details` service to deny the requests from
the `productpage` service.
@ -88,7 +88,7 @@ the `productpage` service.
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next

View File

@ -12,7 +12,7 @@ After completing this task, you should understand all of the assumptions about y
application and how to have it participate in tracing, regardless of what
language/framework/platform you use to build your application.
The [Bookinfo](/docs/guides/bookinfo/) sample is used as the
The [Bookinfo](/docs/examples/bookinfo/) sample is used as the
example application for this task.
## Before you begin
@ -22,7 +22,7 @@ example application for this task.
Either use the `istio-demo.yaml` (or `istio-demo-auth.yaml`) template, which includes tracing support, or
use the helm chart with tracing enabled using the `--set tracing.enabled=true` option.
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
## Accessing the dashboard
@ -136,7 +136,7 @@ When you make downstream calls in your applications, make sure to include these
## Cleanup
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next

View File

@ -15,7 +15,7 @@ architecture. One popular logging backend is
end of this task, a new log stream will be enabled sending logs to an
example Fluentd / Elasticsearch / Kibana stack.
The [Bookinfo](/docs/guides/bookinfo/) sample application is used
The [Bookinfo](/docs/examples/bookinfo/) sample application is used
as the example application throughout this task.
## Before you begin
@ -357,7 +357,7 @@ example stack.
1. Send traffic to the sample application.
For the
[Bookinfo](/docs/guides/bookinfo/#determining-the-ingress-ip-and-port)
[Bookinfo](/docs/examples/bookinfo/#determining-the-ingress-ip-and-port)
sample, visit `http://$GATEWAY_URL/productpage` in your web browser
or issue the following command:
@ -397,7 +397,7 @@ example stack.
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next

View File

@ -11,7 +11,7 @@ This task shows how to configure Istio to automatically gather telemetry for
services in a mesh. At the end of this task, a new metric and a new log stream
will be enabled for calls to services within your mesh.
The [Bookinfo](/docs/guides/bookinfo/) sample application is used
The [Bookinfo](/docs/examples/bookinfo/) sample application is used
as the example application throughout this task.
## Before you begin
@ -294,7 +294,7 @@ here to illustrate how to use `match` expressions to control rule execution.
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next
@ -304,4 +304,4 @@ here to illustrate how to use `match` expressions to control rule execution.
* Discover the full [Attribute Vocabulary](/docs/reference/config/policy-and-telemetry/attribute-vocabulary/).
* Refer to the [In-Depth Telemetry](/docs/guides/telemetry/) guide.
* Refer to the [In-Depth Telemetry](/docs/examples/telemetry/) example.

View File

@ -8,7 +8,7 @@ keywords: [telemetry,metrics]
This task shows you how to query for Istio Metrics using Prometheus. As part of
this task, you will use the web-based interface for querying metric values.
The [Bookinfo](/docs/guides/bookinfo/) sample application is used as
The [Bookinfo](/docs/examples/bookinfo/) sample application is used as
the example application throughout this task.
## Before you begin
@ -38,7 +38,7 @@ application.
$ curl http://$GATEWAY_URL/productpage
```
> `$GATEWAY_URL` is the value set in the [Bookinfo](/docs/guides/bookinfo/) guide.
> `$GATEWAY_URL` is the value set in the [Bookinfo](/docs/examples/bookinfo/) example.
1. Open the Prometheus UI.
@ -112,9 +112,9 @@ docs](https://prometheus.io/docs/querying/basics/).
```
- If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next
- Refer to the [In-Depth Telemetry](/docs/guides/telemetry/) guide.
- Refer to the [In-Depth Telemetry](/docs/examples/telemetry/) example.

View File

@ -9,7 +9,7 @@ This task shows you how to generate a graph of services within an Istio mesh.
As part of this task, you will install the Servicegraph addon and use
the web-based interface for viewing service graph of the service mesh.
The [Bookinfo](/docs/guides/bookinfo/) sample application is used as
The [Bookinfo](/docs/examples/bookinfo/) sample application is used as
the example application throughout this task.
## Before you begin
@ -50,7 +50,7 @@ the example application throughout this task.
Refresh the page a few times (or send the command a few times) to generate a
small amount of traffic.
> `$GATEWAY_URL` is the value set in the [Bookinfo](/docs/guides/bookinfo/) guide.
> `$GATEWAY_URL` is the value set in the [Bookinfo](/docs/examples/bookinfo/) example.
1. Open the Servicegraph UI.
@ -122,5 +122,5 @@ Servicegraph add-on:
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.

View File

@ -9,7 +9,7 @@ This task shows how to configure Istio to automatically gather telemetry for TCP
services in a mesh. At the end of this task, a new metric will be enabled for
calls to a TCP service within your mesh.
The [Bookinfo](/docs/guides/bookinfo/) sample application is used
The [Bookinfo](/docs/examples/bookinfo/) sample application is used
as the example application throughout this task.
## Before you begin
@ -227,7 +227,7 @@ protocols within policies.
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next
@ -238,7 +238,7 @@ and [Mixer Config](/docs/concepts/policies-and-telemetry/config/).
* Discover the full [Attribute
Vocabulary](/docs/reference/config/policy-and-telemetry/attribute-vocabulary/).
* Refer to the [In-Depth Telemetry](/docs/guides/telemetry/) guide.
* Refer to the [In-Depth Telemetry](/docs/examples/telemetry/) example.
* Learn more about [Querying Istio
Metrics](/docs/tasks/telemetry/querying-metrics/).

View File

@ -9,7 +9,7 @@ This task shows you how to setup and use the Istio Dashboard to monitor mesh
traffic. As part of this task, you will install the Grafana Istio addon and use
the web-based interface for viewing service mesh traffic data.
The [Bookinfo](/docs/guides/bookinfo/) sample application is used as
The [Bookinfo](/docs/examples/bookinfo/) sample application is used as
the example application throughout this task.
## Before you begin
@ -75,7 +75,7 @@ the example application throughout this task.
caption="Istio Dashboard With Traffic"
>}}
> `$GATEWAY_URL` is the value set in the [Bookinfo](/docs/guides/bookinfo/) guide.
> `$GATEWAY_URL` is the value set in the [Bookinfo](/docs/examples/bookinfo/) example.
### About the Grafana add-on
@ -114,5 +114,5 @@ add-on:
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.

View File

@ -16,7 +16,7 @@ This task shows how to inject delays and test the resiliency of your application
* Setup Istio by following the instructions in the
[Installation guide](/docs/setup/).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
* Initialize the application version routing by either first doing the
[request routing](/docs/tasks/traffic-management/request-routing/) task or by running following
@ -166,5 +166,5 @@ message.
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.

View File

@ -16,7 +16,7 @@ This task shows you how to configure dynamic request routing based on weights an
* Setup Istio by following the instructions in the
[Installation guide](/docs/setup/).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
## Content-based routing
@ -117,7 +117,7 @@ you'll need to use `replace` rather than `create` in the following command.
to propagate to all pods before attempting to access the application.
1. Open the Bookinfo URL (`http://$GATEWAY_URL/productpage`) in your browser. Recall that `GATEWAY_URL`
should have been set using [these instructions](/docs/guides/bookinfo/#determining-the-ingress-ip-and-port)
should have been set using [these instructions](/docs/examples/bookinfo/#determining-the-ingress-ip-and-port)
when the Bookinfo sample was deployed.
You should see the Bookinfo application productpage displayed.
@ -193,7 +193,7 @@ all users to v2, optionally in a gradual fashion. We'll explore this in a separa
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next

View File

@ -16,7 +16,7 @@ This task shows you how to setup request timeouts in Envoy using Istio.
* Setup Istio by following the instructions in the
[Installation guide](/docs/setup/).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
* Initialize the application version routing by running the following command:
@ -138,7 +138,7 @@ the timeout is specified in millisecond (instead of second) units.
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next

View File

@ -20,7 +20,7 @@ two steps: 50%, 100%.
* Setup Istio by following the instructions in the
[Installation guide](/docs/setup/).
* Deploy the [Bookinfo](/docs/guides/bookinfo/) sample application.
* Deploy the [Bookinfo](/docs/examples/bookinfo/) sample application.
## Weight-based version routing
@ -98,7 +98,7 @@ For more about version routing with autoscaling, check out [Canary Deployments u
```
* If you are not planning to explore any follow-on tasks, refer to the
[Bookinfo cleanup](/docs/guides/bookinfo/#cleanup) instructions
[Bookinfo cleanup](/docs/examples/bookinfo/#cleanup) instructions
to shutdown the application.
## What's next

View File

@ -3,7 +3,7 @@ title: How do I get started using Istio?
weight: 30
---
We recommend starting with the [Guides](/docs/guides/), which walks
We recommend starting with the [Guides](/docs/examples/), which walks
through different core Istio concepts in a tutorial style. The guides show
case intelligent routing, policy enforcement, security, telemetry, etc.

View File

@ -6,7 +6,7 @@ weight: 80
Check out the [documentation](/docs/) right here on istio.io. The docs include
[concept overviews](/docs/concepts/),
[task guides](/docs/tasks/),
[guides](/docs/guides/),
[guides](/docs/examples/),
and the [complete reference documentation](/docs/reference/).
Detailed developer-level documentation is maintained on our [Wiki](https://github.com/istio/istio/wiki)

View File

@ -12,7 +12,7 @@ Oh no! You're having trouble? Below is a list of solutions to common problems.
## Route rules have no effect on my application
If route rules are working perfectly for the [Bookinfo](/docs/guides/bookinfo/) sample,
If route rules are working perfectly for the [Bookinfo](/docs/examples/bookinfo/) sample,
but similar version routing rules have no effect on your own application, it may be that
your Kubernetes services need to be changed slightly.

View File

@ -11,7 +11,7 @@ sidebar_multicard: true
- [概念](/docs/concepts/)。概念解释了 Istio 的一些重要方面。您可以在这里了解 Istio 的功能以及如何实现。
- [安装](/docs/setup/)。安装包含有关在各种环境中安装 Istio 控制平面的说明,以及在应用程序部署中安装 sidecar 的说明。快速开始说明适用于 [Kubernetes](/docs/setup/kubernetes/quick-start/)、[Docker Compose 和 Consul](/docs/setup/consul/quick-start/)。
- [任务](/docs/tasks/)。任务展示如何使用 Istio 实现特定目标的活动。
- [指南](/docs/guides/)。指南是完全有效的独立示例,旨在强调的 Istio 特性。
- [指南](/docs/examples/)。指南是完全有效的独立示例,旨在强调的 Istio 特性。
- [性能和可扩展性](/docs/performance-and-scalability/)。关于 Istio 性能和可扩展性进展和结果的信息。
- [参考](/docs/reference/)。详细的命令行选项、配置选项、API 定义和过程的详尽列表。

View File

@ -64,6 +64,6 @@ Envoy 被部署为 **sidecar**,和对应服务在同一个 Kubernetes pod 中
## 下一步
- 了解 Istio 的[设计目标](/docs/concepts/what-is-istio/goals/)。
- 探索我们的[指南](/docs/guides/)。
- 探索我们的[指南](/docs/examples/)。
- 在我们其他的[概念](/docs/concepts/)指南中详细了解 Istio 组件。
- 使用我们的[任务](/docs/tasks/)指南,了解如何将自己的服务部署到 Istio。

View File

@ -310,7 +310,7 @@ $ kubectl apply -f install/kubernetes/istio-demo-auth.yaml
## 部署应用
您可以部署自己的应用或者示例应用程序如 [BookInfo](/docs/guides/bookinfo/)。
您可以部署自己的应用或者示例应用程序如 [BookInfo](/docs/examples/bookinfo/)。
注意:应用程序必须使用 HTTP/1.1 或 HTTP/2.0 协议来传递 HTTP 流量,因为 HTTP/1.0 已经不再支持。
如果您启动了 [Istio-Initializer](/docs/setup/kubernetes/sidecar-injection/#automatic-sidecar-injection),如上所示,您可以使用 `kubectl create` 直接部署应用。Istio-Initializer 会向应用程序的 Pod 中自动注入 Envoy 容器,如果运行 Pod 的 namespace 被标记为 `istio-injection=enabled` 的话:
@ -342,6 +342,6 @@ $ kubectl delete -f install/kubernetes/istio-demo.yaml
## 下一步
* 查看 [Bookinfo](/docs/guides/bookinfo/) 应用程序示例
* 查看 [Bookinfo](/docs/examples/bookinfo/) 应用程序示例
* 查看如何[验证 Istio 双向 TLS 认证](/docs/tasks/security/mutual-tls/)