Skip to content

Commit

Permalink
Merge branch 'master' into patch-3
Browse files Browse the repository at this point in the history
  • Loading branch information
hyperbolic2346 authored Mar 15, 2018
2 parents 53d6b23 + 49a81e1 commit e51a32f
Show file tree
Hide file tree
Showing 162 changed files with 2,052 additions and 1,478 deletions.
4 changes: 2 additions & 2 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ GEM
jekyll-paginate (1.1.0)
jekyll-readme-index (0.0.3)
jekyll (~> 3.0)
jekyll-redirect-from (0.12.1)
jekyll-redirect-from (0.13.0)
jekyll (~> 3.3)
jekyll-relative-links (0.5.1)
jekyll (~> 3.3)
Expand Down Expand Up @@ -145,7 +145,7 @@ DEPENDENCIES
jekyll-optional-front-matter (~> 0.1)
jekyll-paginate (= 1.1.0)
jekyll-readme-index (= 0.0.3)
jekyll-redirect-from (~> 0.11)
jekyll-redirect-from (~> 0.13)
jekyll-relative-links (~> 0.2)
jekyll-seo-tag
jekyll-sitemap
Expand Down
2 changes: 1 addition & 1 deletion OWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ reviewers:
- tengqm
- zhangxiaoyu-zidif
- xiangpengzhao
- bradtopol
approvers:
- heckj
- a-mccarthy
- abiogenesis-now
- bradamant3
- bradtopol
- steveperry-53
- zacharysarah
- chenopis
13 changes: 13 additions & 0 deletions _data/glossary/cloud-controller-manager.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
id: cloud-controller-manager
name: Cloud Controller Manager
full-link: https://kubernetes.io/docs/tasks/administer-cluster/running-cloud-controller/
tags:
- core-object
- architecture
- operation
short-description: >
Cloud Controller Manager is an alpha feature in 1.8. In upcoming releases it will be the preferred way to integrate Kubernetes with any cloud.
long-description: >
Kubernetes v1.6 contains a new binary called cloud-controller-manager. cloud-controller-manager is a daemon that embeds cloud-specific control loops.
These cloud-specific control loops were originally in the kube-controller-manager. Since cloud providers develop and release at a different pace compared to the Kubernetes
project, abstracting the provider-specific code to the cloud-controller-manager binary allows cloud vendors to evolve independently from the core Kubernetes code.
10 changes: 10 additions & 0 deletions _data/glossary/cloud-provider.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
id: cloud-provider
name: Cloud Provider
full-link: /docs/concepts/cluster-administration/cloud-providers
tags:
- community
short-description: >
Cloud provider is a company that offers cloud computing platform that can run Kubernetes clusters.
long-description: >
Cloud providers or sometime called Cloud Service Provider (CSPs) provides cloud computing platforms. They may offer services such as Infrastructure as a Service (IaaS) or Platform as a Service (PaaS). Cloud providers host the Kubernetes cluster and also provide services that interact with the cluster, such as Load Balancers, Storage Classes etc.
9 changes: 9 additions & 0 deletions _data/glossary/container-env-variables.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
id: container-env-variables
name: Container Environment Variables
full-link: /docs/concepts/containers/container-environment-variables.md
tags:
- fundamental
short-description: >
Container environment variables are name/value pairs that provide useful information into containers running in a Pod.
long-description: >
Container environment variables provide information that is required by the running containerized applications along with information about important resources to the [Containers] {% glossary_tooltip text="Containers" term_id="container" %}. For example, file system, information about the container itself and other cluster resources such as service endpoints, etc.
File renamed without changes.
2 changes: 1 addition & 1 deletion _data/glossary/selector.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ short-description: >
Allows users to filter a list of resources based on labels.
long-description: >
Selectors are applied when querying lists of resources to filter
them by {% glossary_tooltip text="Labels" term_id="labels"
them by {% glossary_tooltip text="Labels" term_id="label"
%}.
16 changes: 0 additions & 16 deletions _data/reference.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,22 +103,6 @@ toc:
- docs/reference/generated/federation-apiserver.md
- docs/reference/generated/federation-controller-manager.md

- title: Kubernetes Design Docs
landing_page: /docs/reference/design-docs/overview/
section:
- docs/reference/design-docs/overview.md
- title: Kubernetes Architecture
path: https://git.k8s.io/community/contributors/design-proposals/architecture/architecture.md
- title: Kubernetes Design Overview
path: https://github.com/kubernetes/kubernetes/tree/release-1.6/docs/design
- title: Kubernetes Identity and Access Management
path: https://git.k8s.io/community/contributors/design-proposals/auth/access.md
- docs/admin/ovs-networking.md
- title: Security Contexts
path: https://git.k8s.io/community/contributors/design-proposals/auth/security_context.md
- title: Security in Kubernetes
path: https://git.k8s.io/community/contributors/design-proposals/auth/security.md

- title: Kubernetes Issues and Security
landing_page: https://github.com/kubernetes/kubernetes/issues/
section:
Expand Down
6 changes: 3 additions & 3 deletions _data/setup.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,8 @@ toc:
section:
- docs/getting-started-guides/coreos/index.md
- docs/getting-started-guides/cloudstack.md
- docs/getting-started-guides/vsphere.md
- title: VMware vSphere
path: https://vmware.github.io/vsphere-storage-for-kubernetes/documentation/
- docs/getting-started-guides/dcos.md
- docs/getting-started-guides/ovirt.md

Expand Down Expand Up @@ -94,7 +95,7 @@ toc:
- docs/getting-started-guides/ubuntu/glossary.md
- docs/getting-started-guides/ubuntu/local.md
- docs/getting-started-guides/ubuntu/logging.md

- docs/getting-started-guides/ubuntu/rancher.md
- docs/getting-started-guides/windows/index.md

- docs/admin/node-conformance.md
Expand All @@ -112,7 +113,6 @@ toc:
section:
- docs/user-journeys/users/cluster-operator/foundational.md
- docs/user-journeys/users/cluster-operator/intermediate.md
- docs/user-journeys/users/cluster-operator/advanced.md

- title: Docs Contributor
path: /docs/home/?path=contributors&persona=docs-contributor&level=foundational
Expand Down
2 changes: 2 additions & 0 deletions _data/tasks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,7 @@ toc:
- docs/tasks/administer-cluster/kubeadm-upgrade-1-7.md
- docs/tasks/administer-cluster/kubeadm-upgrade-1-8.md
- docs/tasks/administer-cluster/kubeadm-upgrade-1-9.md
- docs/tasks/administer-cluster/kubeadm-upgrade-ha.md
- docs/tasks/administer-cluster/namespaces.md
- docs/tasks/administer-cluster/namespaces-walkthrough.md
- docs/tasks/administer-cluster/dns-horizontal-autoscaling.md
Expand Down Expand Up @@ -180,6 +181,7 @@ toc:
- docs/tasks/administer-cluster/configure-multiple-schedulers.md
- docs/tasks/administer-cluster/ip-masq-agent.md
- docs/tasks/administer-cluster/dns-custom-nameservers.md
- docs/tasks/administer-cluster/dns-debugging-resolution.md
- docs/tasks/administer-cluster/pvc-protection.md

- title: Federation - Run an App on Multiple Clusters
Expand Down
2 changes: 1 addition & 1 deletion _data/user-personas/migrators/vmware-openstack.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
id: vmware-openstack
name: Migrating from VMWare and/or OpenStack
name: Migrating from VMware and/or OpenStack
index: 0
foundational:
- label: "a1: foundational stuff"
Expand Down
1 change: 1 addition & 0 deletions _includes/footer-scripts.html
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@

function hideNav(toc){
if (!toc) toc = document.querySelector('#docsToc')
if (!toc) return
var container = toc.querySelector('.container')

// container is built dynamically, so it may not be present on the first runloop
Expand Down
8 changes: 4 additions & 4 deletions _plugins/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ This renders the definition of the glossary term inside a `<div>`, preserving Ma

| Name | Default | Description |
| --- | --- | --- |
| `term_id` | N/A (Required) | The `id` of the glossary term whose definition will be used. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |
| `term_id` | Not Applicable (Required) | The `id` of the glossary term whose definition will be used. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |
| `length` | "short" | Specifies which term definition should be used ("short" for the `short-definition`, "long" for `long-description`, "all" when both should be included). |
| `prepend` | "Service Catalog is" | A prefix which can be attached in front of a term's short definition (which is one or more sentence fragments). |

Expand All @@ -49,7 +49,7 @@ This renders the following:
| Name | Default | Description |
| --- | --- | --- |
| `text` | the `name` of the glossary term | The text that the user will hover over to display the glossary definition. **You should include this if using the tooltip inside of a glossary term's YAML short-definition.** |
| `term_id` | N/A (Required) | The `id` of the associated glossary term. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |
| `term_id` | Not Applicable (Required) | The `id` of the associated glossary term. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |

#### (3) `glossary_injector` tag

Expand All @@ -73,6 +73,6 @@ This renders the following:
| Name | Default | Description |
| --- | --- | --- |
| `text` | the `name` of the glossary term | The text that the user will hover over to display the glossary definition. |
| `term_id` | N/A (Required) | The `id` of the glossary term whose definition will be used. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |
| `placeholder_id` | N/A (Required) | The `id` of the HTML element whose contents will be populated with the definition of `term_id` |
| `term_id` | Not Applicable (Required) | The `id` of the glossary term whose definition will be used. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |
| `placeholder_id` | Not Applicable (Required) | The `id` of the HTML element whose contents will be populated with the definition of `term_id` |
| `length` | "short" | Specifies which term definition should be used ("short" for the `short-definition`, "long" for `long-description`, "all" when both should be included). |
1 change: 1 addition & 0 deletions _redirects
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,7 @@
/docs/getting-started-guides/ubuntu/automated/ /docs/getting-started-guides/ubuntu/ 301
/docs/getting-started-guides/ubuntu/calico/ /docs/getting-started-guides/ubuntu/ 301
/docs/getting-started-guides/vagrant/ /docs/getting-started-guides/alternatives/ 301
/docs/getting-started-guides/vsphere/ https://vmware.github.io/vsphere-storage-for-kubernetes/documentation/ 301
/docs/getting-started-guides/windows/While/ /docs/getting-started-guides/windows/ 301
/docs/getting-started-guides/centos/* /docs/setup/independent/create-cluster-kubeadm/ 301

Expand Down
4 changes: 2 additions & 2 deletions case-studies/blackrock.html
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ <h1> CASE STUDY: <img src="/images/blackrock_logo.png" class="header_logo"><br>
<div class="cols">
<div class="col1">
<h2>Challenge</h2>
The world’s largest asset manager, <a href="https://www.blackrock.com/investing">BlackRock</a> operates a very controlled static deployment scheme, which has allowed for scalability over the years. But in their data science division, there was a need for more dynamic access to resources. "We want to be able to give every investor access to data science, meaning <a href="https://www.python.org">Python</a> notebooks, or even something much more advanced, like a MapReduce engine based on <a href="https://spark.apache.org">Spark</a>," says Michael Francis, a Managing Director in BlackRock’s Product Group, which runs the company’s investment management platform. "Managing complex Python installations on users’ desktops is really hard because everyone ends up with slightly different environments. We have existing environments that do these things, but we needed to make it real, expansive and scaleable. Being able to spin that up on demand, tear it down, make that much more dynamic, became a critical thought process for us. It’s not so much that we had to solve our main core production problem, it’s how do we extend that? How do we evolve?"
The world’s largest asset manager, <a href="https://www.blackrock.com/investing">BlackRock</a> operates a very controlled static deployment scheme, which has allowed for scalability over the years. But in their data science division, there was a need for more dynamic access to resources. "We want to be able to give every investor access to data science, meaning <a href="https://www.python.org">Python</a> notebooks, or even something much more advanced, like a MapReduce engine based on <a href="https://spark.apache.org">Spark</a>," says Michael Francis, a Managing Director in BlackRock’s Product Group, which runs the company’s investment management platform. "Managing complex Python installations on users’ desktops is really hard because everyone ends up with slightly different environments. We have existing environments that do these things, but we needed to make it real, expansive and scalable. Being able to spin that up on demand, tear it down, make that much more dynamic, became a critical thought process for us. It’s not so much that we had to solve our main core production problem, it’s how do we extend that? How do we evolve?"
</div>

<div class="col2">
Expand Down Expand Up @@ -65,7 +65,7 @@ <h2>Impact</h2>

<section class="section3">
<div class="fullcol">
Still, challenges remain. "If you have a shared cluster, you get this storming herd problem where everyone wants to do the same thing at the same time," says Francis. "You could put limits on it, but you’d have to build an infrastructure to define limits for our processes, and the Python notebooks weren’t really designed for that. We have existing environments that do these things, but we needed to make it real, expansive, and scaleable. Being able to spin that up on demand, tear it down, and make that much more dynamic, became a critical thought process for us."<br><br>
Still, challenges remain. "If you have a shared cluster, you get this storming herd problem where everyone wants to do the same thing at the same time," says Francis. "You could put limits on it, but you’d have to build an infrastructure to define limits for our processes, and the Python notebooks weren’t really designed for that. We have existing environments that do these things, but we needed to make it real, expansive, and scalable. Being able to spin that up on demand, tear it down, and make that much more dynamic, became a critical thought process for us."<br><br>
Made up of managers from technology, infrastructure, production operations, development and information security, Francis’s team was able to look at the problem holistically and come up with a solution that made sense for BlackRock. "Our initial straw man was that we were going to build everything using <a href="https://www.ansible.com">Ansible</a> and run it all using some completely different distributed environment," says Francis. "That would have been absolutely the wrong thing to do. Had we gone off on our own as the dev team and developed this solution, it would have been a very different product. And it would have been very expensive. We would not have gone down the route of running under our existing orchestration system. Because we don’t understand it. These guys [in operations and infrastructure] understand it. Having the multidisciplinary team allowed us to get to the right solutions and that actually meant we didn’t build anywhere near the amount we thought we were going to end up building."<br><br>
In search of a solution in which they could manage usage on a user-by-user level, Francis’s team gravitated to Red Hat’s <a href="https://www.openshift.com">OpenShift</a> Kubernetes offering. The company had already experimented with other cloud-native environments, but the team liked that Kubernetes was open source, and "we felt the winds were blowing in the direction of Kubernetes long term," says Francis. "Typically we make technology choices that we believe are going to be here in 5-10 years’ time, in some form. And right now, in this space, Kubernetes feels like the one that’s going to be there." Adds Uri Morris, Vice President of Production Operations: "When you see that the non-Google committers to Kubernetes overtook the Google committers, that’s an indicator of the momentum."<br><br>
Once that decision was made, the major challenge was figuring out how to make Kubernetes work within BlackRock’s existing framework. "It’s about understanding how we can operate, manage and support a platform like this, in addition to tacking it onto our existing technology platform," says Project Manager Michael Maskallis. "All the controls we have in place, the change management process, the software development lifecycle, onboarding processes we go through—how can we do all these things?"<br><br>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,12 +52,12 @@ Kubernetes 系统读取 Deployment 规约,并启动我们所期望的该应用

### 描述 Kubernetes 对象

当创建 KUbernetes 对象时,必须提供对象的规约,用来描述该对象的期望状态,以及关于对象的一些基本信息(例如名称)。
当使用 KUbernetes API 创建对象时(或者直接创建,或者基于`kubectl`),API 请求必须在请求体中包含 JSON 格式的信息。
当创建 Kubernetes 对象时,必须提供对象的规约,用来描述该对象的期望状态,以及关于对象的一些基本信息(例如名称)。
当使用 Kubernetes API 创建对象时(或者直接创建,或者基于`kubectl`),API 请求必须在请求体中包含 JSON 格式的信息。
**大多数情况下,需要在 .yaml 文件中为 `kubectl` 提供这些信息**
`kubectl` 在发起 API 请求时,将这些信息转换成 JSON 格式。

这里有一个 `.yaml` 示例文件,展示了 KUbernetes Deployment 的必需字段和对象规约:
这里有一个 `.yaml` 示例文件,展示了 Kubernetes Deployment 的必需字段和对象规约:

{% include code.html language="yaml" file="nginx-deployment.yaml" ghlink="/docs/concepts/overview/working-with-objects/nginx-deployment.yaml" %}

Expand All @@ -78,7 +78,7 @@ deployment "nginx-deployment" created

### 必需字段

在想要创建的 KUbernetes 对象对应的 `.yaml` 文件中,需要配置如下的字段:
在想要创建的 Kubernetes 对象对应的 `.yaml` 文件中,需要配置如下的字段:

* `apiVersion` - 创建该对象所使用的 Kubernetes API 的版本
* `kind` - 想要创建的对象的类型
Expand Down
12 changes: 6 additions & 6 deletions cn/docs/tasks/inject-data-application/dapi-volume-resources.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ spec:
args:
- while true; do
echo -en '\n';
if [[ -e /etc/cpu_limit ]]; then
echo -en '\n'; cat /etc/cpu_limit; fi;
if [[ -e /etc/podinfo/cpu_limit ]]; then
echo -en '\n'; cat /etc/podinfo/cpu_limit; fi;
if [[ -e /etc/cpu_request ]]; then
echo -en '\n'; cat /etc/cpu_request; fi;
echo -en '\n'; cat /etc/podinfo/cpu_request; fi;
if [[ -e /etc/mem_limit ]]; then
echo -en '\n'; cat /etc/mem_limit; fi;
echo -en '\n'; cat /etc/podinfo/mem_limit; fi;
if [[ -e /etc/mem_request ]]; then
echo -en '\n'; cat /etc/mem_request; fi;
echo -en '\n'; cat /etc/podinfo/mem_request; fi;
sleep 5;
done;
resources:
Expand All @@ -29,7 +29,7 @@ spec:
cpu: "250m"
volumeMounts:
- name: podinfo
mountPath: /etc
mountPath: /etc/podinfo
readOnly: false
volumes:
- name: podinfo
Expand Down
10 changes: 5 additions & 5 deletions cn/docs/tasks/inject-data-application/dapi-volume.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@ spec:
command: ["sh", "-c"]
args:
- while true; do
if [[ -e /etc/labels ]]; then
echo -en '\n\n'; cat /etc/labels; fi;
if [[ -e /etc/annotations ]]; then
echo -en '\n\n'; cat /etc/annotations; fi;
if [[ -e /etc/podinfo/labels ]]; then
echo -en '\n\n'; cat /etc/podinfo/labels; fi;
if [[ -e /etc/podinfo/annotations ]]; then
echo -en '\n\n'; cat /etc/podinfo/annotations; fi;
sleep 5;
done;
volumeMounts:
- name: podinfo
mountPath: /etc
mountPath: /etc/podinfo
readOnly: false
volumes:
- name: podinfo
Expand Down
Loading

0 comments on commit e51a32f

Please sign in to comment.