mirror of https://github.com/istio/istio.io.git
Update docs to use templates.
This commit is contained in:
parent
471cc5f453
commit
c72c252bc0
|
@ -22,23 +22,14 @@
|
|||
{% endif %}
|
||||
|
||||
|
||||
{% if steps %}
|
||||
|
||||
{{ steps }}
|
||||
|
||||
{% else %}
|
||||
|
||||
{% include templates/_errorthrower.md missing_block='steps' purpose='lists a sequence of numbered steps that accomplish the task.' %}
|
||||
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% if discussion %}
|
||||
|
||||
{{ discussion }}
|
||||
|
||||
{% else %}
|
||||
|
||||
{% include templates/_errorthrower.md missing_block='discussion' purpose='supplies the discussion of the page content.' %}
|
||||
|
||||
{% endif %}
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,18 @@
|
|||
---
|
||||
bodyclass: docs
|
||||
headline: Architecture
|
||||
layout: docs
|
||||
sidenav: doc-side-concepts-nav.html
|
||||
title: Architecture
|
||||
headline: Architecture
|
||||
sidenav: doc-side-concepts-nav.html
|
||||
bodyclass: docs
|
||||
layout: docs
|
||||
type: markdown
|
||||
---
|
||||
|
||||
The Istio service mesh consists of three major components:
|
||||
{% capture overview %}
|
||||
The page explains in broad terms the major components of the Istio service mesh design.
|
||||
{% endcapture %}
|
||||
|
||||
## Proxy
|
||||
{% capture body %}
|
||||
## The proxy
|
||||
|
||||
The Istio proxy is designed to mediate inbound and outbound
|
||||
traffic for all Istio-managed services. The Istio proxy is based on
|
||||
|
@ -21,7 +24,7 @@ Istio extends the proxy to interact with the mixer to enforce various
|
|||
access control policies rate limiting, ACLs, as well as telemetry
|
||||
reporting.
|
||||
|
||||
## Mixer
|
||||
## The mixer
|
||||
|
||||
The Istio mixer is responsible for enforcing access control
|
||||
and usage policies across the service mesh and collects telemetry data from
|
||||
|
@ -32,7 +35,7 @@ attribute extraction and policy evaluation can be found
|
|||
it to interface to a variety of host environments and configured backends,
|
||||
abstracting the proxy and Istio-managed services from these details.
|
||||
|
||||
## Manager
|
||||
## The manager
|
||||
|
||||
The Istio manager serves as an interface between the user
|
||||
and Istio, collecting configuration, validating it and propagating it to
|
||||
|
@ -44,5 +47,6 @@ of the underlying platform. In addition, [traffic management rules](../reference
|
|||
can be programmed at runtime via the Istio Manager.
|
||||
|
||||
<img src="../../img/arch.svg" alt="The overall architecture of an Istio-based service.">
|
||||
{% endcapture %}
|
||||
|
||||
<div id="toc" class="toc mobile-toc"></div>
|
||||
{% include templates/concept.md %}
|
||||
|
|
|
@ -6,6 +6,12 @@ sidenav: doc-side-concepts-nav.html
|
|||
title: Mixer
|
||||
type: markdown
|
||||
---
|
||||
{% capture overview %}
|
||||
The page explains the role and composition of the Istio mixer.
|
||||
{% endcapture %}
|
||||
|
||||
{% capture body %}
|
||||
## General usage
|
||||
|
||||
The mixer provides the control-plane abstractions necessary for most real-world multi-tenant services.
|
||||
The proxy delegates policy decisions to the mixer and dispatches its telemetry data to the mixer, which
|
||||
|
@ -27,7 +33,7 @@ for its consumers.
|
|||
**Quota Management**. Enables services to allocate and free quota on a number of dimensions, Quotas are used as a relatively simple resource management
|
||||
tool to provide some fairness between service consumers when contending for limited resources.
|
||||
|
||||
## Mixer Adapters
|
||||
## Adapters
|
||||
|
||||
Adapters are binary-level plugins to the mixer which make it possible to customize the mixer’s behavior. Adapters allow the mixer to interface
|
||||
to different backend systems that deliver core control-plane functionality, such as logging, monitoring, quotas, ACL checking, and more. Adapters
|
||||
|
@ -35,5 +41,6 @@ enable the mixer to expose a single consistent control API, independent of the b
|
|||
used at runtime is determined through configuration.
|
||||
|
||||
<img src="../../img/adapters.svg" alt="Mixer and its adapters.">
|
||||
{% endcapture %}
|
||||
|
||||
<div id="toc" class="toc mobile-toc"></div>
|
||||
{% include templates/concept.md %}
|
||||
|
|
|
@ -7,6 +7,11 @@ title: Service Model
|
|||
type: markdown
|
||||
---
|
||||
|
||||
{% capture overview %}
|
||||
The page explains Istio's overall service model.
|
||||
{% endcapture %}
|
||||
|
||||
{% capture body %}
|
||||
The Istio manager serves as an interface between the user and Istio,
|
||||
collecting configuration, validating it and propagating it to various
|
||||
components. It abstracts platform-specific implementation details from the
|
||||
|
@ -78,5 +83,6 @@ source/destination and/or by weights assigned to each version.
|
|||
Note that Istio does not provide a DNS. Applications can try to resolve the
|
||||
FQDN using the DNS service present in the underlying platform (kube-dns,
|
||||
mesos-dns, etc.).
|
||||
{% endcapture %}
|
||||
|
||||
<div id="toc" class="toc mobile-toc"></div>
|
||||
{% include templates/concept.md %}
|
||||
|
|
|
@ -231,18 +231,19 @@ To write a new sample page, create a Markdown file in a subdirectory of the
|
|||
variables, and then include templates/sample.md:
|
||||
|
||||
- `overview` - required
|
||||
- `body` - required
|
||||
- `prerequisites` - required
|
||||
- `discussion` - required
|
||||
- `whatsnext` - optional
|
||||
|
||||
In the `body` section, use `##` to start with a level-two heading. For subheadings,
|
||||
In the `discussion` section, use `##` to start with a level-two heading. For subheadings,
|
||||
use `###` and `####` as needed.
|
||||
|
||||
Here's an example of a page that uses the concept template:
|
||||
|
||||
{% raw %}
|
||||
<pre>---
|
||||
title: Trying a Thing
|
||||
headline: Trying a Thing
|
||||
title: Running a Thing
|
||||
headline: Running a Thing
|
||||
sidenav: doc-side-samples-nav.html
|
||||
bodyclass: docs
|
||||
layout: docs
|
||||
|
@ -250,23 +251,36 @@ type: markdown
|
|||
---
|
||||
|
||||
{% capture overview %}
|
||||
This page explains ...
|
||||
This page shows how to ...
|
||||
{% endcapture %}
|
||||
|
||||
{% capture body %}
|
||||
{% capture prerequisites %}
|
||||
* Do this.
|
||||
* Do this too.
|
||||
{% endcapture %}
|
||||
|
||||
{% capture discussion %}
|
||||
## Building ...
|
||||
|
||||
1. Do this.
|
||||
1. Do this next. Possibly read this [related explanation](...).
|
||||
|
||||
## Running ...
|
||||
|
||||
To run this sample...
|
||||
1. Do this.
|
||||
1. Do this next.
|
||||
|
||||
## Understanding the code
|
||||
Here's something interesting about the code you ran in the preceding steps.
|
||||
{% endcapture %}
|
||||
|
||||
{% capture whatsnext %}
|
||||
* Learn more about [this](...).
|
||||
* See this [related task](...).
|
||||
* See this [related tutorial](...).
|
||||
{% endcapture %}
|
||||
|
||||
{% include templates/sample.md %}
|
||||
</pre>
|
||||
{% endraw %}
|
||||
|
||||
Here's an example of a published topic that uses the sample template: [TBD]({{site.baseurl}}/docs/samples/TBD.html)
|
||||
Here's an example of a published topic that uses the sample template: [BookInfo]({{site.baseurl}}/docs/samples/bookinfo.html)
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
---
|
||||
title: Bookinfo - A Polyglot Microservice App
|
||||
headline: 'Bookinfo - A Polyglot Microservice App'
|
||||
title: BookInfo
|
||||
headline: 'BookInfo - A Polyglot Microservice App'
|
||||
sidenav: doc-side-samples-nav.html
|
||||
bodyclass: docs
|
||||
layout: docs
|
||||
type: markdown
|
||||
---
|
||||
|
||||
{% capture overview %}
|
||||
In this sample, we will deploy a simple app 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
|
||||
|
@ -31,11 +32,11 @@ The end-to-end architecture of the application is shown below.
|
|||
|
||||
This application is polyglot, i.e., the microservices are written in different languages.
|
||||
|
||||
{% endcapture %}
|
||||
|
||||
{% capture prerequisites %}
|
||||
_Note: The following instructions assume that you have access to a kubernetes cluster. To install kubernetes locally, checkout [minikube](https://github.com/kubernetes/minikube)_
|
||||
|
||||
|
||||
## Setup Istio
|
||||
|
||||
1. Clone the istio GitHub repository and start the core Istio services (the istio-manager, the istio-mixer, and the istio ingress controller).
|
||||
|
||||
```bash
|
||||
|
@ -84,7 +85,9 @@ http://<grafana-svc-external-IP>:3000/dashboard/db/istio-dashboard
|
|||
> If in doubt, download again or add the `--tag` option when running `istioctl kube-inject`.
|
||||
> Invoke `istioctl kube-inject --help` for more details.
|
||||
|
||||
{% endcapture %}
|
||||
|
||||
{% capture discussion %}
|
||||
## Start the Application
|
||||
|
||||
1. Change your current working directory to the bookinfo application directory:
|
||||
|
@ -403,3 +406,6 @@ If you now refresh the `productpage` you'll see that while the load generator is
|
|||
$ kubectl get pods #-- the bookinfo, and (optionally) control plane services, should be deleted
|
||||
No resources found.
|
||||
```
|
||||
{% endcapture %}
|
||||
|
||||
{% include templates/sample.md %}
|
||||
|
|
Loading…
Reference in New Issue