From eaa52cf2fc138ab0bf27603d6e5ec9891097b7aa Mon Sep 17 00:00:00 2001 From: ztewyk <10110918@zte.com.cn> Date: Thu, 23 Mar 2017 15:00:59 +0800 Subject: [PATCH 1/4] hitting the `ClusterIP` from a pod (#2826) * hitting the `ClusterIP` from a pod when client pod and server pod in the same node,client_address is the client pod ip address when client pod and server pod in different node,client_address is the client pod's node flannel ip address * Update source-ip.md * Update source-ip.md --- docs/tutorials/services/source-ip.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/tutorials/services/source-ip.md b/docs/tutorials/services/source-ip.md index 0df6c11f58..5ddb7e6da1 100644 --- a/docs/tutorials/services/source-ip.md +++ b/docs/tutorials/services/source-ip.md @@ -106,6 +106,7 @@ client_address=10.244.3.8 command=GET ... ``` +If the client pod and server pod are in the same node, the client_address is the client pod's IP address. However, if the client pod and server pod are in different nodes, the client_address is the client pod's node flannel IP address. ## Source IP for Services with Type=NodePort From 8053e081253be1a6f1b76fd8ae6f618f0b34645e Mon Sep 17 00:00:00 2001 From: yupengzte Date: Thu, 23 Mar 2017 09:13:14 +0800 Subject: [PATCH 2/4] Replace the tab with 4 spaces in html files Signed-off-by: yupengzte --- _includes/footer.html | 64 +- .../v1.3/extensions-v1beta1-definitions.html | 6 +- .../v1.4/extensions-v1beta1-definitions.html | 6 +- .../v1.5/extensions-v1beta1-definitions.html | 6 +- _layouts/docwithnav.html | 28 +- case-studies/index.html | 154 ++--- case-studies/pearson.html | 120 ++-- case-studies/wikimedia.html | 150 ++-- community/index.html | 110 +-- .../extensions/v1beta1/definitions.html | 6 +- .../jquery.scrollto/demo/index.html | 488 ++++++------- .../jquery.scrollto/demo/index.old.html | 242 +++---- .../tests/ElemMaxY-compat.html | 30 +- .../tests/ElemMaxY-quirks.html | 30 +- .../jquery.scrollto/tests/WinMaxY-compat.html | 26 +- .../jquery.scrollto/tests/WinMaxY-quirks.html | 24 +- .../tests/WinMaxY-to-iframe-compat.html | 26 +- .../tests/WinMaxY-to-iframe-quirks.html | 28 +- .../tests/WinMaxY-with-iframe-compat.html | 10 +- .../tests/WinMaxY-with-iframe-quirks.html | 8 +- .../jquery.scrollto/tests/index.html | 34 +- .../node-static/test/fixtures/index.html | 4 +- .../test/fixtures/there/index.html | 4 +- .../extensions/v1beta1/definitions.html | 6 +- .../jquery.scrollto/demo/index.html | 488 ++++++------- .../jquery.scrollto/demo/index.old.html | 242 +++---- .../tests/ElemMaxY-compat.html | 30 +- .../tests/ElemMaxY-quirks.html | 30 +- .../jquery.scrollto/tests/WinMaxY-compat.html | 26 +- .../jquery.scrollto/tests/WinMaxY-quirks.html | 24 +- .../tests/WinMaxY-to-iframe-compat.html | 26 +- .../tests/WinMaxY-to-iframe-quirks.html | 28 +- .../tests/WinMaxY-with-iframe-compat.html | 10 +- .../tests/WinMaxY-with-iframe-quirks.html | 8 +- .../jquery.scrollto/tests/index.html | 34 +- .../node-static/test/fixtures/index.html | 4 +- .../test/fixtures/there/index.html | 4 +- .../cluster-interactive.html | 26 +- .../kubernetes-basics/cluster-intro.html | 146 ++-- .../kubernetes-basics/deploy-interactive.html | 30 +- .../kubernetes-basics/deploy-intro.html | 134 ++-- .../explore-interactive.html | 30 +- .../kubernetes-basics/explore-intro.html | 204 +++--- .../kubernetes-basics/expose-interactive.html | 28 +- .../kubernetes-basics/expose-intro.html | 200 +++--- .../kubernetes-basics/scale-interactive.html | 28 +- .../kubernetes-basics/scale-intro.html | 158 ++--- .../kubernetes-basics/update-interactive.html | 18 +- .../kubernetes-basics/update-intro.html | 188 ++--- .../jquery.scrollto/demo/index.html | 488 ++++++------- .../jquery.scrollto/demo/index.old.html | 242 +++---- .../tests/ElemMaxY-compat.html | 30 +- .../tests/ElemMaxY-quirks.html | 30 +- .../jquery.scrollto/tests/WinMaxY-compat.html | 26 +- .../jquery.scrollto/tests/WinMaxY-quirks.html | 24 +- .../tests/WinMaxY-to-iframe-compat.html | 26 +- .../tests/WinMaxY-to-iframe-quirks.html | 28 +- .../tests/WinMaxY-with-iframe-compat.html | 10 +- .../tests/WinMaxY-with-iframe-quirks.html | 8 +- .../jquery.scrollto/tests/index.html | 34 +- .../node-static/test/fixtures/index.html | 4 +- .../test/fixtures/there/index.html | 4 +- index.html | 286 ++++---- jquery-ui.html | 654 +++++++++--------- partners/index.html | 24 +- 65 files changed, 2836 insertions(+), 2836 deletions(-) diff --git a/_includes/footer.html b/_includes/footer.html index 0f9e67544a..7bbe86ffbe 100644 --- a/_includes/footer.html +++ b/_includes/footer.html @@ -1,34 +1,34 @@ diff --git a/_includes/v1.3/extensions-v1beta1-definitions.html b/_includes/v1.3/extensions-v1beta1-definitions.html index 92ce832083..0b9a667757 100755 --- a/_includes/v1.3/extensions-v1beta1-definitions.html +++ b/_includes/v1.3/extensions-v1beta1-definitions.html @@ -4275,10 +4275,10 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

host

Host is the fully qualified domain name of a network host, as defined by RFC 3986. Note the following deviations from the "host" part of the URI as defined in the RFC: 1. IPs are not allowed. Currently an IngressRuleValue can only apply to the
- IP in the Spec of the parent Ingress.
+ IP in the Spec of the parent Ingress.
2. The : delimiter is not respected because ports are not allowed.
- Currently the port of an Ingress is implicitly :80 for http and
- :443 for https.
+ Currently the port of an Ingress is implicitly :80 for http and
+ :443 for https.
Both these may change in the future. Incoming requests are matched against the host before the IngressRuleValue. If the host is unspecified, the Ingress routes all traffic based on the specified IngressRuleValue.

false

string

diff --git a/_includes/v1.4/extensions-v1beta1-definitions.html b/_includes/v1.4/extensions-v1beta1-definitions.html index 18bc35fc59..17ce326c93 100755 --- a/_includes/v1.4/extensions-v1beta1-definitions.html +++ b/_includes/v1.4/extensions-v1beta1-definitions.html @@ -4393,10 +4393,10 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

host

Host is the fully qualified domain name of a network host, as defined by RFC 3986. Note the following deviations from the "host" part of the URI as defined in the RFC: 1. IPs are not allowed. Currently an IngressRuleValue can only apply to the
- IP in the Spec of the parent Ingress.
+ IP in the Spec of the parent Ingress.
2. The : delimiter is not respected because ports are not allowed.
- Currently the port of an Ingress is implicitly :80 for http and
- :443 for https.
+ Currently the port of an Ingress is implicitly :80 for http and
+ :443 for https.
Both these may change in the future. Incoming requests are matched against the host before the IngressRuleValue. If the host is unspecified, the Ingress routes all traffic based on the specified IngressRuleValue.

false

string

diff --git a/_includes/v1.5/extensions-v1beta1-definitions.html b/_includes/v1.5/extensions-v1beta1-definitions.html index f210a6350b..0a0dc837a3 100755 --- a/_includes/v1.5/extensions-v1beta1-definitions.html +++ b/_includes/v1.5/extensions-v1beta1-definitions.html @@ -4613,10 +4613,10 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

host

Host is the fully qualified domain name of a network host, as defined by RFC 3986. Note the following deviations from the "host" part of the URI as defined in the RFC: 1. IPs are not allowed. Currently an IngressRuleValue can only apply to the
- IP in the Spec of the parent Ingress.
+ IP in the Spec of the parent Ingress.
2. The : delimiter is not respected because ports are not allowed.
- Currently the port of an Ingress is implicitly :80 for http and
- :443 for https.
+ Currently the port of an Ingress is implicitly :80 for http and
+ :443 for https.
Both these may change in the future. Incoming requests are matched against the host before the IngressRuleValue. If the host is unspecified, the Ingress routes all traffic based on the specified IngressRuleValue.

false

string

diff --git a/_layouts/docwithnav.html b/_layouts/docwithnav.html index fc5fb3350e..e1baa01d47 100755 --- a/_layouts/docwithnav.html +++ b/_layouts/docwithnav.html @@ -59,20 +59,20 @@

Analytics

{% if page.url != "/404.html" and page.url != "/docs/search/" %} - - Create an Issue - Edit this Page - {% endif %} - + + Create an Issue + Edit this Page + {% endif %} + {% include_cached footer.html %} diff --git a/case-studies/index.html b/case-studies/index.html index cf96a049d5..df3e7c4528 100644 --- a/case-studies/index.html +++ b/case-studies/index.html @@ -6,94 +6,94 @@ cid: caseStudies ---
-

Kubernetes User Case Studies

-
A collection of users running Kubernetes in production.
+

Kubernetes User Case Studies

+
A collection of users running Kubernetes in production.
-
-
-
-
- Pearson -

"We chose Kubernetes because of its flexibility, ease of management and the way it improves our engineers' productivity."

- - Read about Pearson -
-
- Wikimedia -

"With Kubernetes, we're simplifying our environment and making it easier for developers to build the tools that make wikis run better."

- - Read about Wikimedia -
-
- eBay -

Inside eBay's shift to Kubernetes and containers atop OpenStack

- Read about eBay -
-
- box -

Kubernetes at Box: Microservices at Maximum Velocity

- Read about Box -
-
-
-
+
+
+
+
+ Pearson +

"We chose Kubernetes because of its flexibility, ease of management and the way it improves our engineers' productivity."

+ + Read about Pearson +
+
+ Wikimedia +

"With Kubernetes, we're simplifying our environment and making it easier for developers to build the tools that make wikis run better."

+ + Read about Wikimedia +
+
+ eBay +

Inside eBay's shift to Kubernetes and containers atop OpenStack

+ Read about eBay +
+
+ box +

Kubernetes at Box: Microservices at Maximum Velocity

+ Read about Box +
+
+
+
-
- - - - - - -
- -

SAP's OpenStack, running on Kubernetes in production

- -
-
-
+
+ + + + + + +
+ +

SAP's OpenStack, running on Kubernetes in production

+ +
+
+
-
-

Kubernetes Users

-
- New York Times - OpenAI - Goldman Sachs - SAP - Samsung SDS - WePay - SoundCloud - UK Home Office - Concur - Amadeus - Ancestry.com - CCP Games - LivePerson - monzo - Box - Pokemon GO - Yahoo! Japan - Philips - buffer - Comcast - Wikimedia - Pearson - zulily - Ebay - Tell your story -
-
+
+

Kubernetes Users

+
+ New York Times + OpenAI + Goldman Sachs + SAP + Samsung SDS + WePay + SoundCloud + UK Home Office + Concur + Amadeus + Ancestry.com + CCP Games + LivePerson + monzo + Box + Pokemon GO + Yahoo! Japan + Philips + buffer + Comcast + Wikimedia + Pearson + zulily + Ebay + Tell your story +
+
- - - + + +
diff --git a/case-studies/pearson.html b/case-studies/pearson.html index 45428b0bf3..a584457334 100644 --- a/case-studies/pearson.html +++ b/case-studies/pearson.html @@ -6,76 +6,76 @@ cid: caseStudies ---
-

Pearson Case Study

+

Pearson Case Study

-
-
-

Using Kubernetes to reinvent the world's largest educational company

-

- Pearson, the world's education company, serving 75 million learners worldwide, set a goal to more than double that number to 200 million by 2025. A key part of this growth is in digital learning experiences, and that requires an infrastructure platform that is able to scale quickly and deliver products to market faster. So Pearson's Cloud Technology team chose Kubernetes to help build a platform to meet the business requirements.

-
- Pearson -

- "To transform our infrastructure, we had to think beyond simply enabling automated provisioning, we realized we had to build a platform that would allow Pearson developers to build manage and deploy applications in a completely different way. We chose Kubernetes because of its flexibility, ease of management and the way it would improve our engineers' productivity."

-

— Chris Jackson, Director for Cloud Product Engineering, Pearson

-
-
-
+
+
+

Using Kubernetes to reinvent the world's largest educational company

+

+ Pearson, the world's education company, serving 75 million learners worldwide, set a goal to more than double that number to 200 million by 2025. A key part of this growth is in digital learning experiences, and that requires an infrastructure platform that is able to scale quickly and deliver products to market faster. So Pearson's Cloud Technology team chose Kubernetes to help build a platform to meet the business requirements.

+
+ Pearson +

+ "To transform our infrastructure, we had to think beyond simply enabling automated provisioning, we realized we had to build a platform that would allow Pearson developers to build manage and deploy applications in a completely different way. We chose Kubernetes because of its flexibility, ease of management and the way it would improve our engineers' productivity."

+

— Chris Jackson, Director for Cloud Product Engineering, Pearson

+
+
+
-
-
-
-

Challenges:

-
    -
  • Pearson had difficulty in scaling and adapting to the growing online audience. They wanted to build and deliver content primarily over the web.
  • -
-
-
-

Why Kubernetes:

-
    -
  • Kubernetes will allow Pearson's teams to develop their apps in a consistent manner, saving time and minimizing complexity.
  • -
-
-
-

Approach:

-
    -
  • Build a centralized platform for use across the entire enterprise
  • -
  • Use container technology as the core of the platform
  • -
  • Deploy Kubernetes to manage the platform
  • -
-
-
-

Results:

-
    -
  • Pearson is building an enterprise-wide platform for delivering innovative, web-based educational content. They expect engineers' productivity to increase by up to 20 percent.
  • -
-
-
-
+
+
+
+

Challenges:

+
    +
  • Pearson had difficulty in scaling and adapting to the growing online audience. They wanted to build and deliver content primarily over the web.
  • +
+
+
+

Why Kubernetes:

+
    +
  • Kubernetes will allow Pearson's teams to develop their apps in a consistent manner, saving time and minimizing complexity.
  • +
+
+
+

Approach:

+
    +
  • Build a centralized platform for use across the entire enterprise
  • +
  • Use container technology as the core of the platform
  • +
  • Deploy Kubernetes to manage the platform
  • +
+
+
+

Results:

+
    +
  • Pearson is building an enterprise-wide platform for delivering innovative, web-based educational content. They expect engineers' productivity to increase by up to 20 percent.
  • +
+
+
+
-
-
-

Kubernetes powers a comprehensive developer experience

-

Pearson wanted to use as much open source technology as possible for the platform given that it provides both technical and commercial benefits over the duration of the project. Jackson says, "Building an infrastructure platform based on open source technology in Pearson was a no-brainer, the sharing of technical challenges and advanced use cases in a community of people with talent far beyond what we could hire independently allows us to innovate at a level we could not reach on our own. Our engineers enjoy returning code to the community and participating in talks, blogs and meetings, it's a great way for us to allow our team to express themselves and share the pride they have in their work."

-

It also wanted to use a container-focused platform. Pearson has 400 development groups and diverse brands with varying business and technical needs. With containers, each brand could experiment with building new types of content using their preferred technologies, and then deliver it using containers. Pearson chose Kubernetes because it believes that is the best technology for managing containers, has the widest community support and offers the most flexible and powerful tools."

-

Kubernetes is at the core of the platform we've built for developers. After we get our big spike in back-to-school in traffic, much of Pearson's traffic will interact with Kubernetes. It is proving to be as effective as we had hoped," Jackson says.

-
-
+
+
+

Kubernetes powers a comprehensive developer experience

+

Pearson wanted to use as much open source technology as possible for the platform given that it provides both technical and commercial benefits over the duration of the project. Jackson says, "Building an infrastructure platform based on open source technology in Pearson was a no-brainer, the sharing of technical challenges and advanced use cases in a community of people with talent far beyond what we could hire independently allows us to innovate at a level we could not reach on our own. Our engineers enjoy returning code to the community and participating in talks, blogs and meetings, it's a great way for us to allow our team to express themselves and share the pride they have in their work."

+

It also wanted to use a container-focused platform. Pearson has 400 development groups and diverse brands with varying business and technical needs. With containers, each brand could experiment with building new types of content using their preferred technologies, and then deliver it using containers. Pearson chose Kubernetes because it believes that is the best technology for managing containers, has the widest community support and offers the most flexible and powerful tools."

+

Kubernetes is at the core of the platform we've built for developers. After we get our big spike in back-to-school in traffic, much of Pearson's traffic will interact with Kubernetes. It is proving to be as effective as we had hoped," Jackson says.

+
+
-
-
-

Encouraging experimentation, saving engineers time

-

With the new platform, Pearson will increase stability and performance, and to bring products to market more quickly. The company says its engineers will also get a productivity boost because they won't spend time managing infrastructure. Jackson estimates 15 to 20 percent in productivity savings.

-

Beyond that, Pearson says the platform will encourage innovation because of the ease with which new applications can be developed, and because applications will be deployed far more quickly than in the past. It expects that will help the company meet its goal of reaching 200 million learners within the next 10 years.

-

"We're already seeing tremendous benefits with Kubernetes — improved engineering productivity, faster delivery of applications and a simplified infrastructure. But this is just the beginning. Kubernetes will help transform the way that educational content is delivered online," says Jackson.

-
-
+
+
+

Encouraging experimentation, saving engineers time

+

With the new platform, Pearson will increase stability and performance, and to bring products to market more quickly. The company says its engineers will also get a productivity boost because they won't spend time managing infrastructure. Jackson estimates 15 to 20 percent in productivity savings.

+

Beyond that, Pearson says the platform will encourage innovation because of the ease with which new applications can be developed, and because applications will be deployed far more quickly than in the past. It expects that will help the company meet its goal of reaching 200 million learners within the next 10 years.

+

"We're already seeing tremendous benefits with Kubernetes — improved engineering productivity, faster delivery of applications and a simplified infrastructure. But this is just the beginning. Kubernetes will help transform the way that educational content is delivered online," says Jackson.

+
+
diff --git a/case-studies/wikimedia.html b/case-studies/wikimedia.html index 7431c13650..ba913ec664 100644 --- a/case-studies/wikimedia.html +++ b/case-studies/wikimedia.html @@ -6,91 +6,91 @@ cid: caseStudies ---
-

Wikimedia Case Study

+

Wikimedia Case Study

-
-
-

Using Kubernetes to Build Tools to Improve the World's Wikis

-

- The non-profit Wikimedia Foundation operates some of the largest collaboratively edited reference projects in the world, including Wikipedia. To help users maintain and use wikis, it runs Wikimedia Tool Labs, a hosting environment for community developers working on tools and bots to help editors and other volunteers do their work, including reducing vandalism. The community around Wikimedia Tool Labs began forming nearly 10 years ago. -

-
- Wikimedia -

- "Wikimedia Tool Labs is vital for making sure wikis all around the world work as well as they possibly can. Because it's grown organically for almost 10 years, it has become an extremely challenging environment and difficult to maintain. It's like a big ball of mud — you really can't see through it. With Kubernetes, we're simplifying the environment and making it easier for developers to build the tools that make wikis run better." -

-

— Yuvi Panda, operations engineer at Wikimedia Foundation and Wikimedia Tool Labs

-
-
-
+
+
+

Using Kubernetes to Build Tools to Improve the World's Wikis

+

+ The non-profit Wikimedia Foundation operates some of the largest collaboratively edited reference projects in the world, including Wikipedia. To help users maintain and use wikis, it runs Wikimedia Tool Labs, a hosting environment for community developers working on tools and bots to help editors and other volunteers do their work, including reducing vandalism. The community around Wikimedia Tool Labs began forming nearly 10 years ago. +

+
+ Wikimedia +

+ "Wikimedia Tool Labs is vital for making sure wikis all around the world work as well as they possibly can. Because it's grown organically for almost 10 years, it has become an extremely challenging environment and difficult to maintain. It's like a big ball of mud — you really can't see through it. With Kubernetes, we're simplifying the environment and making it easier for developers to build the tools that make wikis run better." +

+

— Yuvi Panda, operations engineer at Wikimedia Foundation and Wikimedia Tool Labs

+
+
+
-
-
-
-

Challenges:

-
    -
  • Simplify a complex, difficult-to-manage infrastructure
  • -
  • Allow developers to continue writing tools and bots using existing techniques
  • -
-
-
-

Why Kubernetes:

-
    -
  • Wikimedia Tool Labs chose Kubernetes because it can mimic existing workflows, while reducing complexity
  • -
-
-
-

Approach:

-
    -
  • Migrate old systems and a complex infrastructure to Kubernetes
  • -
-
-
-

Results:

-
    -
  • 20 percent of web tools that account for more than 40 percent of web traffic now run on Kubernetes
  • -
  • A 25-node cluster that keeps up with each new Kubernetes release
  • -
  • Thousands of lines of old code have been deleted, thanks to Kubernetes
  • -
-
-
-
+
+
+
+

Challenges:

+
    +
  • Simplify a complex, difficult-to-manage infrastructure
  • +
  • Allow developers to continue writing tools and bots using existing techniques
  • +
+
+
+

Why Kubernetes:

+
    +
  • Wikimedia Tool Labs chose Kubernetes because it can mimic existing workflows, while reducing complexity
  • +
+
+
+

Approach:

+
    +
  • Migrate old systems and a complex infrastructure to Kubernetes
  • +
+
+
+

Results:

+
    +
  • 20 percent of web tools that account for more than 40 percent of web traffic now run on Kubernetes
  • +
  • A 25-node cluster that keeps up with each new Kubernetes release
  • +
  • Thousands of lines of old code have been deleted, thanks to Kubernetes
  • +
+
+
+
-
-
-

Using Kubernetes to provide tools for maintaining wikis

-

- Wikimedia Tool Labs is run by a staff of four-and-a-half paid employees and two volunteers. The infrastructure didn't make it easy or intuitive for developers to build bots and other tools to make wikis work more easily. Yuvi says, "It's incredibly chaotic. We have lots of Perl and Bash duct tape on top of it. Everything is super fragile." -

-

- To solve the problem, Wikimedia Tool Labs migrated parts of its infrastructure to Kubernetes, in preparation for eventually moving its entire system. Yuvi said Kubernetes greatly simplifies maintenance. The goal is to allow developers creating bots and other tools to use whatever development methods they want, but make it easier for the Wikimedia Tool Labs to maintain the required infrastructure for hosting and sharing them. -

-

- "With Kubernetes, I've been able to remove a lot of our custom-made code, which makes everything easier to maintain. Our users' code also runs in a more stable way than previously," says Yuvi. -

-
-
+
+
+

Using Kubernetes to provide tools for maintaining wikis

+

+ Wikimedia Tool Labs is run by a staff of four-and-a-half paid employees and two volunteers. The infrastructure didn't make it easy or intuitive for developers to build bots and other tools to make wikis work more easily. Yuvi says, "It's incredibly chaotic. We have lots of Perl and Bash duct tape on top of it. Everything is super fragile." +

+

+ To solve the problem, Wikimedia Tool Labs migrated parts of its infrastructure to Kubernetes, in preparation for eventually moving its entire system. Yuvi said Kubernetes greatly simplifies maintenance. The goal is to allow developers creating bots and other tools to use whatever development methods they want, but make it easier for the Wikimedia Tool Labs to maintain the required infrastructure for hosting and sharing them. +

+

+ "With Kubernetes, I've been able to remove a lot of our custom-made code, which makes everything easier to maintain. Our users' code also runs in a more stable way than previously," says Yuvi. +

+
+
-
-
-

Simplifying infrastructure and keeping wikis running better

-

- Wikimedia Tool Labs has seen great success with the initial Kubernetes deployment. Old code is being simplified and eliminated, contributing developers don't have to change the way they write their tools and bots, and those tools and bots run in a more stable fashion than they have in the past. The paid staff and volunteers are able to better keep up with fixing issues. -

-

- In the future, with a more complete migration to Kubernetes, Wikimedia Tool Labs expects to make it even easier to host and maintain the bots and tools that help run wikis across the world. The tool labs already host approximately 1,300 tools and bots from 800 volunteers, with many more being submitted every day. Twenty percent of the tool labs' web tools that account for more than 60 percent of web traffic now run on Kubernetes. The tool labs has a 25-node cluster that keeps up with each new Kubernetes release. Many existing web tools are migrating to Kubernetes. -

-

- "Our goal is to make sure that people all over the world can share knowledge as easily as possible. Kubernetes helps with that, by making it easier for wikis everywhere to have the tools they need to thrive," says Yuvi. -

-
-
+
+
+

Simplifying infrastructure and keeping wikis running better

+

+ Wikimedia Tool Labs has seen great success with the initial Kubernetes deployment. Old code is being simplified and eliminated, contributing developers don't have to change the way they write their tools and bots, and those tools and bots run in a more stable fashion than they have in the past. The paid staff and volunteers are able to better keep up with fixing issues. +

+

+ In the future, with a more complete migration to Kubernetes, Wikimedia Tool Labs expects to make it even easier to host and maintain the bots and tools that help run wikis across the world. The tool labs already host approximately 1,300 tools and bots from 800 volunteers, with many more being submitted every day. Twenty percent of the tool labs' web tools that account for more than 60 percent of web traffic now run on Kubernetes. The tool labs has a 25-node cluster that keeps up with each new Kubernetes release. Many existing web tools are migrating to Kubernetes. +

+

+ "Our goal is to make sure that people all over the world can share knowledge as easily as possible. Kubernetes helps with that, by making it easier for wikis everywhere to have the tools they need to thrive," says Yuvi. +

+
+
diff --git a/community/index.html b/community/index.html index f967dc23cc..01bdb29362 100644 --- a/community/index.html +++ b/community/index.html @@ -9,63 +9,63 @@ cid: community
-
-
-

Ensuring Kubernetes works well everywhere and for everyone.

-

Connect with the Kubernetes community on our Slack channel or join the - Kubernetes-dev Google group. A weekly - community meeting takes place via video conference to discuss the state of affairs, - get a calendar invite - to participate.

-

You can also join Kubernauts all around the world through our - Kubernetes Meetup Community and the - Kubernetes Cloud Native Meetup Community.

-
-
-

Special Interest Groups (SIGs)

-

Have a special interest in how Kubernetes works with another technology? See our ever growing - lists of SIGs, - from AWS and Openstack to Big Data and Scalability, there's a place for you to contribute and instructions - for forming a new SIG if your special interest isn't covered (yet).

+
+
+

Ensuring Kubernetes works well everywhere and for everyone.

+

Connect with the Kubernetes community on our Slack channel or join the + Kubernetes-dev Google group. A weekly + community meeting takes place via video conference to discuss the state of affairs, + get a calendar invite + to participate.

+

You can also join Kubernauts all around the world through our + Kubernetes Meetup Community and the + Kubernetes Cloud Native Meetup Community.

+
+
+

Special Interest Groups (SIGs)

+

Have a special interest in how Kubernetes works with another technology? See our ever growing + lists of SIGs, + from AWS and Openstack to Big Data and Scalability, there's a place for you to contribute and instructions + for forming a new SIG if your special interest isn't covered (yet).

-

As a member of the Kubernetes community, you are welcome to join any of the SIG meetings - you are interested in. No registration required.

-
- -
-
-
-

Events

-
- -
-
-
+

As a member of the Kubernetes community, you are welcome to join any of the SIG meetings + you are interested in. No registration required.

+
+ +
+
+
+

Events

+
+ +
+
+
-
-

Talk to Us!

-

We would love to hear from you, how you are using Kubernetes,
and what we can do to make it better.

-
-
- @kubernetesio -

Get the latest news and updates.

-
-
- Github Project -

Check out the project and consider contributing.

-
-
- #kubernetes-users -

Our Slack channel is the best way to contact our engineers and share your ideas with them.

-
-
- Stack Overflow -

Our user forum is a great place to go for community support.

-
-
-
+
+

Talk to Us!

+

We would love to hear from you, how you are using Kubernetes,
and what we can do to make it better.

+
+
+ @kubernetesio +

Get the latest news and updates.

+
+
+ Github Project +

Check out the project and consider contributing.

+
+
+ #kubernetes-users +

Our Slack channel is the best way to contact our engineers and share your ideas with them.

+
+
+ Stack Overflow +

Our user forum is a great place to go for community support.

+
+
+
diff --git a/docs/api-reference/extensions/v1beta1/definitions.html b/docs/api-reference/extensions/v1beta1/definitions.html index 47dc1d4f76..ba2d7d90c4 100755 --- a/docs/api-reference/extensions/v1beta1/definitions.html +++ b/docs/api-reference/extensions/v1beta1/definitions.html @@ -4617,10 +4617,10 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

host

Host is the fully qualified domain name of a network host, as defined by RFC 3986. Note the following deviations from the "host" part of the URI as defined in the RFC: 1. IPs are not allowed. Currently an IngressRuleValue can only apply to the
- IP in the Spec of the parent Ingress.
+ IP in the Spec of the parent Ingress.
2. The : delimiter is not respected because ports are not allowed.
- Currently the port of an Ingress is implicitly :80 for http and
- :443 for https.
+ Currently the port of an Ingress is implicitly :80 for http and
+ :443 for https.
Both these may change in the future. Incoming requests are matched against the host before the IngressRuleValue. If the host is unspecified, the Ingress routes all traffic based on the specified IngressRuleValue.

false

string

diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/demo/index.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/demo/index.html index fe9fd633e1..3f3347882e 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/demo/index.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/demo/index.html @@ -1,252 +1,252 @@ - - jQuery.scrollTo - - - - - - - + + + $('#relative-selector').click(function() { + $target.scrollTo('li:eq(7)', 800); + }); + $('#jquery-object').click(function() { + $target.scrollTo($('#pane-target li:eq(14)') , 800); + }); + $('#dom-element').click(function() { + $target.scrollTo(document.getElementById('twenty'), 800); + }); + $('#absolute-number').click(function() { + $target.scrollTo(150, 800); + }); + $('#absolute-number-hash').click(function() { + $target.scrollTo({ top:800, left:700}, 800); + }); + $('#absolute-px').click(function() { + $target.scrollTo('520px', 800); + }); + $('#absolute-px-hash').click(function() { + $target.scrollTo({top:'110px', left:'290px'}, 800); + }); + $('#relative-px').click(function() { + $target.scrollTo('+=100', 500); + }); + $('#relative-px-hash').click(function() { + $target.scrollTo({top:'-=100px', left:'+=100'}, 500); + }); + $('#percentage-px').click(function() { + $target.scrollTo('50%', 800); + }); + $('#percentage-px-hash').click(function() { + $target.scrollTo({top:'50%', left:'20%'}, 800); + }); + + // Settings examples bindings, they will all scroll to the same place, with different settings + var $settings = $('#pane-settings'); + $('#settings-examples a').click(function() { + // before each animation, reset to (0,0), skip this. + $settings.stop(true).scrollTo(0); + }); + + $('#settings-no').click(function() { + $settings.scrollTo('li:eq(15)', 1000); + }); + $('#settings-axis').click(function() {// only scroll horizontally + $settings.scrollTo('li:eq(15)', 1000, { axis:'x' }); + }); + $('#settings-duration').click(function() {// it's the same as specifying it in the 2nd argument + $settings.scrollTo('li:eq(15)', { duration: 3000 }); + }); + $('#settings-easing').click(function() { + $settings.scrollTo('li:eq(15)', 2500, { easing:'elasout' }); + }); + $('#settings-margin').click(function() {//scroll to the "outer" position of the element + $settings.scrollTo('li:eq(15)', 1000, { margin:true }); + }); + $('#settings-offset').click(function() {//same as { top:-50, left:-50 } + $settings.scrollTo('li:eq(15)', 1000, { offset:-50 }); + }); + $('#settings-offset-hash').click(function() { + $settings.scrollTo('li:eq(15)', 1000, { offset:{ top:-5, left:-30 } }); + }); + $('#settings-offset-function').click(function() { + $settings.scrollTo('li:eq(15)', 1000, {offset: function() { return {top:-30, left:-5}; }}); + }); + $('#settings-over').click(function() {//same as { top:-50, left:-50 } + $settings.scrollTo('li:eq(15)', 1000, { over:0.5 }); + }); + $('#settings-over-hash').click(function() { + $settings.scrollTo('li:eq(15)', 1000, { over:{ top:0.2, left:-0.5 } }); + }); + $('#settings-interrupt').click(function() { + $settings.scrollTo('li:eq(15)', 10000, { interrupt:true }); + }); + $('#settings-queue').click(function() {//in this case, having 'axis' as 'xy' or 'yx' matters. + $settings.scrollTo('li:eq(15)', 2000, { queue:true }); + }); + $('#settings-onAfter').click(function() { + $settings.scrollTo('li:eq(15)', 2000, { + onAfter:function() { + $('#settings-message').text('Got there!'); + } + }); + }); + $('#settings-onAfterFirst').click(function() {//onAfterFirst exists only when queuing + $settings.scrollTo('li:eq(15)', 1600, { + queue:true, + onAfterFirst:function() { + $('#settings-message').text('Got there horizontally!'); + }, + onAfter:function() { + $('#settings-message').text('Got there vertically!'); + } + }); + }); + $('#settings-step').click(function() { + $settings.scrollTo('li:eq(15)', 2000, {step:function(now) { + $('#settings-message').text(now.toFixed(2)); + }}); + }); + $('#settings-progress').click(function() { + $settings.scrollTo('li:eq(15)', 2000, {progress:function(_, now) { + $('#settings-message').text(Math.round(now*100) + '%'); + }}); + }); + $('#settings-fail').click(function() { + $settings.scrollTo('li:eq(15)', 10000, {interrupt:true, fail:function() { + $('#settings-message').text('Scroll interrupted!'); + }}); + }); + }); + -

jQuery.scrollTo by Ariel Flesler

- -
-

Table of contents (try these)

- -
- - - - +

jQuery.scrollTo by Ariel Flesler

+ +
+

Table of contents (try these)

+ +
+ + + + diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/demo/index.old.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/demo/index.old.html index 280451d408..f051bed45a 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/demo/index.old.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/demo/index.old.html @@ -1,128 +1,128 @@ - - jQuery.ScrollTo - - - - - - - + + jQuery.ScrollTo + + + + + + + -

jQuery.ScrollTo by Ariel Flesler

- -

- - - - - - -
-
-
-
-
+

jQuery.ScrollTo by Ariel Flesler

+ +

+ + + + + + +
+
+
+
+
diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/ElemMaxY-compat.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/ElemMaxY-compat.html index b0f761b621..e5d2aaae1a 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/ElemMaxY-compat.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/ElemMaxY-compat.html @@ -1,21 +1,21 @@ - - jQuery.scrollTo - Test Element MaxY - Compat Mode - - - + + jQuery.scrollTo - Test Element MaxY - Compat Mode + + + -

jQuery.scrollTo - Test Element MaxY - Compat Mode

- -
-
-   -
-
- +

jQuery.scrollTo - Test Element MaxY - Compat Mode

+ +
+
+   +
+
+ diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/ElemMaxY-quirks.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/ElemMaxY-quirks.html index 1bffc748c3..ef5491a382 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/ElemMaxY-quirks.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/ElemMaxY-quirks.html @@ -1,20 +1,20 @@ - - jQuery.scrollTo - Test Element MaxY - Quirks Mode - - - + + jQuery.scrollTo - Test Element MaxY - Quirks Mode + + + -

jQuery.scrollTo - Test Element MaxY - Quirks Mode

- -
-
-   -
-
- +

jQuery.scrollTo - Test Element MaxY - Quirks Mode

+ +
+
+   +
+
+ diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-compat.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-compat.html index ad745feb91..0db5c569e3 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-compat.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-compat.html @@ -1,19 +1,19 @@ - - jQuery.scrollTo - Test Window MaxY - Compat Mode - - - + + jQuery.scrollTo - Test Window MaxY - Compat Mode + + + -

jQuery.scrollTo - Test Window MaxY - Compat Mode

- -
-   -
- +

jQuery.scrollTo - Test Window MaxY - Compat Mode

+ +
+   +
+ diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-quirks.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-quirks.html index 7bceace68d..3806f84f94 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-quirks.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-quirks.html @@ -1,18 +1,18 @@ - - jQuery.scrollTo - Test Window MaxY - Quirks Mode - - - + + jQuery.scrollTo - Test Window MaxY - Quirks Mode + + + -

jQuery.scrollTo - Test Window MaxY - Quirks Mode

+

jQuery.scrollTo - Test Window MaxY - Quirks Mode

-
-   -
- +
+   +
+ diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-compat.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-compat.html index b4a2ee1dfa..f27a8327ad 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-compat.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-compat.html @@ -1,20 +1,20 @@ - - jQuery.scrollTo - Test Window MaxY to Iframe - Compat Mode - - - + + jQuery.scrollTo - Test Window MaxY to Iframe - Compat Mode + + + -

jQuery.scrollTo - Test Window MaxY to Iframe - Compat Mode

+

jQuery.scrollTo - Test Window MaxY to Iframe - Compat Mode

- - - + + + diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html index edd638a9a4..be41e00da7 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html @@ -1,19 +1,19 @@ - - jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode - - - + + jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode + + + -

jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode

- - - - +

jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode

+ + + + diff --git a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html index aedf1e99c7..e40172cd1b 100644 --- a/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html +++ b/docs/api-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html @@ -1,11 +1,11 @@ - - jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode + + jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode -

jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode

- - - - + + + diff --git a/docs/resources-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html b/docs/resources-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html index edd638a9a4..be41e00da7 100644 --- a/docs/resources-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html +++ b/docs/resources-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html @@ -1,19 +1,19 @@ - - jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode - - - + + jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode + + + -

jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode

- - - - +

jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode

+ + + + diff --git a/docs/resources-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html b/docs/resources-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html index aedf1e99c7..e40172cd1b 100644 --- a/docs/resources-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html +++ b/docs/resources-reference/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html @@ -1,11 +1,11 @@ - - jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode + + jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode -

jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode

- - - - + + + diff --git a/docs/user-guide/kubectl/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html b/docs/user-guide/kubectl/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html index edd638a9a4..be41e00da7 100644 --- a/docs/user-guide/kubectl/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html +++ b/docs/user-guide/kubectl/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-to-iframe-quirks.html @@ -1,19 +1,19 @@ - - jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode - - - + + jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode + + + -

jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode

- - - - +

jQuery.scrollTo - Test Window MaxY to Iframe - Quirks Mode

+ + + + diff --git a/docs/user-guide/kubectl/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html b/docs/user-guide/kubectl/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html index aedf1e99c7..e40172cd1b 100644 --- a/docs/user-guide/kubectl/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html +++ b/docs/user-guide/kubectl/v1.5/node_modules/jquery.scrollto/tests/WinMaxY-with-iframe-compat.html @@ -1,11 +1,11 @@ - - jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode + + jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode -

jQuery.scrollTo - Test Window MaxY with Iframe - Compat Mode

- - - + + diff --git a/jquery-ui.html b/jquery-ui.html index 2473b49692..93083590a8 100755 --- a/jquery-ui.html +++ b/jquery-ui.html @@ -1,59 +1,59 @@ - - jQuery UI Example Page - - + + jQuery UI Example Page + +

Welcome to jQuery UI!

-

This page demonstrates the widgets and theme you selected in Download Builder. Please make sure you are using them with a compatible jQuery version.

+

This page demonstrates the widgets and theme you selected in Download Builder. Please make sure you are using them with a compatible jQuery version.

YOUR COMPONENTS:

@@ -62,12 +62,12 @@

Accordion

-

First

-
Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.
-

Second

-
Phasellus mattis tincidunt nibh.
-

Third

-
Nam dui erat, auctor a, dignissim quis.
+

First

+
Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.
+

Second

+
Phasellus mattis tincidunt nibh.
+

Third

+
Nam dui erat, auctor a, dignissim quis.
@@ -75,7 +75,7 @@

Autocomplete

- +
@@ -84,11 +84,11 @@

Button

-
- - - -
+
+ + + +
@@ -96,14 +96,14 @@

Tabs

- -
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
-
Phasellus mattis tincidunt nibh. Cras orci urna, blandit id, pretium vel, aliquet ornare, felis. Maecenas scelerisque sem non nisl. Fusce sed lorem in enim dictum bibendum.
-
Nam dui erat, auctor a, dignissim quis, sollicitudin eu, felis. Pellentesque nisi urna, interdum eget, sagittis et, consequat vestibulum, lacus. Mauris porttitor ullamcorper augue.
+ +
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
+
Phasellus mattis tincidunt nibh. Cras orci urna, blandit id, pretium vel, aliquet ornare, felis. Maecenas scelerisque sem non nisl. Fusce sed lorem in enim dictum bibendum.
+
Nam dui erat, auctor a, dignissim quis, sollicitudin eu, felis. Pellentesque nisi urna, interdum eget, sagittis et, consequat vestibulum, lacus. Mauris porttitor ullamcorper augue.
@@ -114,200 +114,200 @@

Overlay and Shadow Classes (not currently used in UI widgets)

-

Lorem ipsum dolor sit amet, Nulla nec tortor. Donec id elit quis purus consectetur consequat.

Nam congue semper tellus. Sed erat dolor, dapibus sit amet, venenatis ornare, ultrices ut, nisi. Aliquam ante. Suspendisse scelerisque dui nec velit. Duis augue augue, gravida euismod, vulputate ac, facilisis id, sem. Morbi in orci.

Nulla purus lacus, pulvinar vel, malesuada ac, mattis nec, quam. Nam molestie scelerisque quam. Nullam feugiat cursus lacus.orem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero risus, commodo vitae, pharetra mollis, posuere eu, pede. Nulla nec tortor. Donec id elit quis purus consectetur consequat.

Nam congue semper tellus. Sed erat dolor, dapibus sit amet, venenatis ornare, ultrices ut, nisi. Aliquam ante. Suspendisse scelerisque dui nec velit. Duis augue augue, gravida euismod, vulputate ac, facilisis id, sem. Morbi in orci. Nulla purus lacus, pulvinar vel, malesuada ac, mattis nec, quam. Nam molestie scelerisque quam.

Nullam feugiat cursus lacus.orem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero risus, commodo vitae, pharetra mollis, posuere eu, pede. Nulla nec tortor. Donec id elit quis purus consectetur consequat. Nam congue semper tellus. Sed erat dolor, dapibus sit amet, venenatis ornare, ultrices ut, nisi. Aliquam ante.

Suspendisse scelerisque dui nec velit. Duis augue augue, gravida euismod, vulputate ac, facilisis id, sem. Morbi in orci. Nulla purus lacus, pulvinar vel, malesuada ac, mattis nec, quam. Nam molestie scelerisque quam. Nullam feugiat cursus lacus.orem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero risus, commodo vitae, pharetra mollis, posuere eu, pede. Nulla nec tortor. Donec id elit quis purus consectetur consequat. Nam congue semper tellus. Sed erat dolor, dapibus sit amet, venenatis ornare, ultrices ut, nisi.

+

Lorem ipsum dolor sit amet, Nulla nec tortor. Donec id elit quis purus consectetur consequat.

Nam congue semper tellus. Sed erat dolor, dapibus sit amet, venenatis ornare, ultrices ut, nisi. Aliquam ante. Suspendisse scelerisque dui nec velit. Duis augue augue, gravida euismod, vulputate ac, facilisis id, sem. Morbi in orci.

Nulla purus lacus, pulvinar vel, malesuada ac, mattis nec, quam. Nam molestie scelerisque quam. Nullam feugiat cursus lacus.orem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero risus, commodo vitae, pharetra mollis, posuere eu, pede. Nulla nec tortor. Donec id elit quis purus consectetur consequat.

Nam congue semper tellus. Sed erat dolor, dapibus sit amet, venenatis ornare, ultrices ut, nisi. Aliquam ante. Suspendisse scelerisque dui nec velit. Duis augue augue, gravida euismod, vulputate ac, facilisis id, sem. Morbi in orci. Nulla purus lacus, pulvinar vel, malesuada ac, mattis nec, quam. Nam molestie scelerisque quam.

Nullam feugiat cursus lacus.orem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero risus, commodo vitae, pharetra mollis, posuere eu, pede. Nulla nec tortor. Donec id elit quis purus consectetur consequat. Nam congue semper tellus. Sed erat dolor, dapibus sit amet, venenatis ornare, ultrices ut, nisi. Aliquam ante.

Suspendisse scelerisque dui nec velit. Duis augue augue, gravida euismod, vulputate ac, facilisis id, sem. Morbi in orci. Nulla purus lacus, pulvinar vel, malesuada ac, mattis nec, quam. Nam molestie scelerisque quam. Nullam feugiat cursus lacus.orem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero risus, commodo vitae, pharetra mollis, posuere eu, pede. Nulla nec tortor. Donec id elit quis purus consectetur consequat. Nam congue semper tellus. Sed erat dolor, dapibus sit amet, venenatis ornare, ultrices ut, nisi.

- -
-
-
-

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

-
-
+ +
+
+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

+
+
-

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

+

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Framework Icons (content color preview)

@@ -332,11 +332,11 @@

Selectmenu

@@ -350,19 +350,19 @@

Menu

@@ -370,7 +370,7 @@

Tooltip

- Tooltips can be attached to any element. When you hover + Tooltips can be attached to any element. When you hover the element with your mouse, the title attribute is displayed in a little box next to the element, just like a native tooltip.

@@ -378,17 +378,17 @@ the element with your mouse, the title attribute is displayed in a little box ne

Highlight / Error

-
-

- Hey! Sample ui-state-highlight style.

-
+
+

+ Hey! Sample ui-state-highlight style.

+

-
-

- Alert: Sample ui-state-error style.

-
+
+

+ Alert: Sample ui-state-error style.

+
@@ -400,31 +400,31 @@ $( "#accordion" ).accordion(); var availableTags = [ - "ActionScript", - "AppleScript", - "Asp", - "BASIC", - "C", - "C++", - "Clojure", - "COBOL", - "ColdFusion", - "Erlang", - "Fortran", - "Groovy", - "Haskell", - "Java", - "JavaScript", - "Lisp", - "Perl", - "PHP", - "Python", - "Ruby", - "Scala", - "Scheme" + "ActionScript", + "AppleScript", + "Asp", + "BASIC", + "C", + "C++", + "Clojure", + "COBOL", + "ColdFusion", + "Erlang", + "Fortran", + "Groovy", + "Haskell", + "Java", + "JavaScript", + "Lisp", + "Perl", + "PHP", + "Python", + "Ruby", + "Scala", + "Scheme" ]; $( "#autocomplete" ).autocomplete({ - source: availableTags + source: availableTags }); @@ -439,47 +439,47 @@ $( "#tabs" ).tabs(); $( "#dialog" ).dialog({ - autoOpen: false, - width: 400, - buttons: [ - { - text: "Ok", - click: function() { - $( this ).dialog( "close" ); - } - }, - { - text: "Cancel", - click: function() { - $( this ).dialog( "close" ); - } - } - ] + autoOpen: false, + width: 400, + buttons: [ + { + text: "Ok", + click: function() { + $( this ).dialog( "close" ); + } + }, + { + text: "Cancel", + click: function() { + $( this ).dialog( "close" ); + } + } + ] }); // Link to open the dialog $( "#dialog-link" ).click(function( event ) { - $( "#dialog" ).dialog( "open" ); - event.preventDefault(); + $( "#dialog" ).dialog( "open" ); + event.preventDefault(); }); $( "#datepicker" ).datepicker({ - inline: true + inline: true }); $( "#slider" ).slider({ - range: true, - values: [ 17, 67 ] + range: true, + values: [ 17, 67 ] }); $( "#progressbar" ).progressbar({ - value: 20 + value: 20 }); @@ -501,12 +501,12 @@ $( "#selectmenu" ).selectmenu(); // Hover states on the static widgets $( "#dialog-link, #icons li" ).hover( - function() { - $( this ).addClass( "ui-state-hover" ); - }, - function() { - $( this ).removeClass( "ui-state-hover" ); - } + function() { + $( this ).addClass( "ui-state-hover" ); + }, + function() { + $( this ).removeClass( "ui-state-hover" ); + } ); diff --git a/partners/index.html b/partners/index.html index 13ee6e2396..c4b58d73da 100644 --- a/partners/index.html +++ b/partners/index.html @@ -6,25 +6,25 @@ cid: partners ---
-

Kubernetes Partners

-
Growing the Kubernetes ecosystem.
- +

Kubernetes Partners

+
Growing the Kubernetes ecosystem.
+
-
-
We are working with a broad group of partners who contribute to the Kubernetes core codebase, making it stronger and richer. These partners create a vibrant Kubernetes ecosystem supporting a spectrum of complementing platforms, from open source solutions to market-leading technologies. Partners can get their services and offerings added to this page by completing and submitting the partner request form.
-

Technology Partners

-
-

Services Partners

-
-
+
+
We are working with a broad group of partners who contribute to the Kubernetes core codebase, making it stronger and richer. These partners create a vibrant Kubernetes ecosystem supporting a spectrum of complementing platforms, from open source solutions to market-leading technologies. Partners can get their services and offerings added to this page by completing and submitting the partner request form.
+

Technology Partners

+
+

Services Partners

+
+
From 505387b4630a7fdfe99df410510b1063ac57b985 Mon Sep 17 00:00:00 2001 From: Xiaoyu Zhang Date: Thu, 23 Mar 2017 11:01:18 +0800 Subject: [PATCH 3/4] fix link error The original link does not exist any more. Maybe this url is proper. --- .../debug-application-cluster/determine-reason-pod-failure.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/tasks/debug-application-cluster/determine-reason-pod-failure.md b/docs/tasks/debug-application-cluster/determine-reason-pod-failure.md index 3a0e79898a..93a9973db4 100644 --- a/docs/tasks/debug-application-cluster/determine-reason-pod-failure.md +++ b/docs/tasks/debug-application-cluster/determine-reason-pod-failure.md @@ -101,7 +101,7 @@ Set `terminationMessagePath` as shown here: * See the `terminationMessagePath` field in [Container](/docs/api-reference/v1/definitions#_v1_container). -* Learn about [retrieving logs](/docs/user-guide/logging/). +* Learn about [retrieving logs](/docs/concepts/cluster-administration/logging/). * Learn about [Go templates](https://golang.org/pkg/text/template/). {% endcapture %} From 9ce54855d5523225572019f364e460048b89ac6f Mon Sep 17 00:00:00 2001 From: Andy Yu Date: Thu, 23 Mar 2017 15:10:00 +0800 Subject: [PATCH 4/4] Replace the tab with 4 spaces in md files (#2797) * Replace the tab with 4 spaces in md files Signed-off-by: yupengzte * Fix typos of accessing-the-api.md Signed-off-by: yupengzte * Fix typos of manage-compute-resources-container.md Signed-off-by: yupengzte * Fix typos of run-to-completion-finite-workloads.md Signed-off-by: yupengzte * Fix typos of connect-applications-service.md Signed-off-by: yupengzte * Fix typos of init-containers.md Signed-off-by: yupengzte * Fix typos of calico.md Signed-off-by: yupengzte * Fix typos of ingress.md Signed-off-by: yupengzte * Fix typos of index.md Signed-off-by: yupengzte * Fix typos of index.md Signed-off-by: yupengzte * Fix typos of apparmor.md Signed-off-by: yupengzte * Fix typos of run-stateful-application.md Signed-off-by: yupengzte * Fix typos of index.md Signed-off-by: yupengzte * Fix typos of index.md Signed-off-by: yupengzte * Fix typos of replicasets.md Signed-off-by: yupengzte --- docs/admin/accessing-the-api.md | 12 +- docs/admin/multiple-zones.md | 8 +- docs/admin/namespaces/index.md | 12 +- .../v1.5/node_modules/jquery/README.md | 10 +- .../federation-service-discovery.md | 2 +- .../manage-compute-resources-container.md | 26 +-- .../containers/container-lifecycle-hooks.md | 22 +-- docs/concepts/containers/images.md | 2 +- .../run-to-completion-finite-workloads.md | 24 +-- .../connect-applications-service.md | 22 +-- .../workloads/pods/init-containers.md | 32 ++-- .../contribute/stage-documentation-changes.md | 6 +- .../centos/centos_manual_config.md | 10 +- docs/getting-started-guides/cloudstack.md | 8 +- .../fedora/fedora_manual_config.md | 10 +- docs/getting-started-guides/kubeadm.md | 4 +- docs/getting-started-guides/ubuntu/calico.md | 2 +- .../ubuntu/operational-considerations.md | 10 +- docs/getting-started-guides/vsphere.md | 2 +- docs/reference.md | 2 +- .../v1.5/node_modules/jquery/README.md | 10 +- docs/tasks/administer-federation/ingress.md | 2 +- .../apply-resource-quota-limit.md | 10 +- .../index.md | 44 ++--- .../index.md | 26 +-- docs/tutorials/clusters/apparmor.md | 44 ++--- .../connecting-frontend-backend.md | 26 +-- .../run-stateful-application.md | 66 ++++---- .../stateful-application/zookeeper.md | 4 +- .../user-guide/introspection-and-debugging.md | 154 +++++++++--------- docs/user-guide/kubectl-overview.md | 56 +++---- docs/user-guide/kubectl/index.md | 74 ++++----- .../v1.5/node_modules/jquery/README.md | 10 +- docs/user-guide/petset.md | 8 +- docs/user-guide/replicasets.md | 24 +-- .../replication-controller/index.md | 28 ++-- docs/user-guide/secrets/index.md | 14 +- editdocs.md | 14 +- 38 files changed, 418 insertions(+), 422 deletions(-) diff --git a/docs/admin/accessing-the-api.md b/docs/admin/accessing-the-api.md index 92de1772ab..46317a9c4d 100644 --- a/docs/admin/accessing-the-api.md +++ b/docs/admin/accessing-the-api.md @@ -63,7 +63,7 @@ users in its object store. Once the request is authenticated as coming from a specific user, it moves to a generic authorization step. This is shown as step **2** in the -diagram. +diagram. The input to the Authorization step are attributes of the REST request, including: - the username determined by the Authentication step. @@ -80,7 +80,7 @@ then the request can proceed. If all deny the request, then the request is deni code 403). The [Authorization Modules](/docs/admin/authorization) page describes what authorization modules -are available and how to configure them. +are available and how to configure them. For version 1.2, clusters created by `kube-up.sh` are configured so that no authorization is required for any request. @@ -108,7 +108,7 @@ They act on objects being created, deleted, updated or connected (proxy), but no Multiple admission controllers can be configured. Each is called in order. -This is shown as step **3** in the diagram. +This is shown as step **3** in the diagram. Unlike Authentication and Authorization Modules, if any admission controller module rejects, then the request is immediately rejected. @@ -122,7 +122,7 @@ Once a request passes all admission controllers, it is validated using the valid for the corresponding API object, and then written to the object store (shown as step **4**). -## API Server Ports and IPs +## API Server Ports and IPs The previous discussion applies to requests sent to the secure port of the API server (the typical case). The API server can actually serve on 2 ports: @@ -132,7 +132,7 @@ By default the Kubernetes API server serves HTTP on 2 ports: 1. `Localhost Port`: - is intended for testing and bootstrap, and for other components of the master node - (scheduler, controller-manager) to talk to the API + (scheduler, controller-manager) to talk to the API - no TLS - default is port 8080, change with `--insecure-port` flag. - defaults IP is localhost, change with `--insecure-bind-address` flag. @@ -141,7 +141,7 @@ By default the Kubernetes API server serves HTTP on 2 ports: - protected by need to have host access 2. `Secure Port`: - + - use whenever possible - uses TLS. Set cert with `--tls-cert-file` and key with `--tls-private-key-file` flag. - default is port 6443, change with `--secure-port` flag. diff --git a/docs/admin/multiple-zones.md b/docs/admin/multiple-zones.md index b6421e71c2..3ed062629c 100644 --- a/docs/admin/multiple-zones.md +++ b/docs/admin/multiple-zones.md @@ -229,7 +229,7 @@ cross-zone attachments are not generally permitted by cloud providers: ```shell > kubectl describe pod mypod | grep Node -Node: kubernetes-minion-9vlv/10.240.0.5 +Node: kubernetes-minion-9vlv/10.240.0.5 > kubectl get node kubernetes-minion-9vlv --show-labels NAME STATUS AGE LABELS kubernetes-minion-9vlv Ready 22m beta.kubernetes.io/instance-type=n1-standard-2,failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-a,kubernetes.io/hostname=kubernetes-minion-9vlv @@ -268,9 +268,9 @@ The pods should be spread across all 3 zones: ```shell > kubectl describe pod -l app=guestbook | grep Node -Node: kubernetes-minion-9vlv/10.240.0.5 -Node: kubernetes-minion-281d/10.240.0.8 -Node: kubernetes-minion-olsh/10.240.0.11 +Node: kubernetes-minion-9vlv/10.240.0.5 +Node: kubernetes-minion-281d/10.240.0.8 +Node: kubernetes-minion-olsh/10.240.0.11 > kubectl get node kubernetes-minion-9vlv kubernetes-minion-281d kubernetes-minion-olsh --show-labels NAME STATUS AGE LABELS diff --git a/docs/admin/namespaces/index.md b/docs/admin/namespaces/index.md index 8da2107960..a7b3621887 100644 --- a/docs/admin/namespaces/index.md +++ b/docs/admin/namespaces/index.md @@ -64,16 +64,16 @@ Or you can get detailed information with: ```shell $ kubectl describe namespaces -Name: default -Labels: -Status: Active +Name: default +Labels: +Status: Active No resource quota. Resource Limits - Type Resource Min Max Default - ---- -------- --- --- --- - Container cpu - - 100m + Type Resource Min Max Default + ---- -------- --- --- --- + Container cpu - - 100m ``` Note that these details show both resource quota (if present) as well as resource limit ranges. diff --git a/docs/api-reference/v1.5/node_modules/jquery/README.md b/docs/api-reference/v1.5/node_modules/jquery/README.md index ba3174a778..bab0777435 100644 --- a/docs/api-reference/v1.5/node_modules/jquery/README.md +++ b/docs/api-reference/v1.5/node_modules/jquery/README.md @@ -55,11 +55,11 @@ For jQuery to work in Node, a window with a document is required. Since no such ```js require("jsdom").env("", function(err, window) { - if (err) { - console.error(err); - return; - } + if (err) { + console.error(err); + return; + } - var $ = require("jquery")(window); + var $ = require("jquery")(window); }); ``` diff --git a/docs/concepts/cluster-administration/federation-service-discovery.md b/docs/concepts/cluster-administration/federation-service-discovery.md index b163ad18e8..12347f412f 100644 --- a/docs/concepts/cluster-administration/federation-service-discovery.md +++ b/docs/concepts/cluster-administration/federation-service-discovery.md @@ -149,7 +149,7 @@ in 13 underlying clusters: for CLUSTER in asia-east1-c asia-east1-a asia-east1-b \ europe-west1-d europe-west1-c europe-west1-b \ us-central1-f us-central1-a us-central1-b us-central1-c \ - us-east1-d us-east1-c us-east1-b + us-east1-d us-east1-c us-east1-b do kubectl --context=$CLUSTER run nginx --image=nginx:1.11.1-alpine --port=80 done diff --git a/docs/concepts/configuration/manage-compute-resources-container.md b/docs/concepts/configuration/manage-compute-resources-container.md index a7da824638..eee09a3102 100644 --- a/docs/concepts/configuration/manage-compute-resources-container.md +++ b/docs/concepts/configuration/manage-compute-resources-container.md @@ -202,20 +202,20 @@ You can check node capacities and amounts allocated with the ```shell $ kubectl.sh describe nodes e2e-test-minion-group-4lw4 -Name: e2e-test-minion-group-4lw4 +Name: e2e-test-minion-group-4lw4 [ ... lines removed for clarity ...] Capacity: - alpha.kubernetes.io/nvidia-gpu: 0 - cpu: 2 - memory: 7679792Ki - pods: 110 + alpha.kubernetes.io/nvidia-gpu: 0 + cpu: 2 + memory: 7679792Ki + pods: 110 Allocatable: - alpha.kubernetes.io/nvidia-gpu: 0 - cpu: 1800m - memory: 7474992Ki - pods: 110 + alpha.kubernetes.io/nvidia-gpu: 0 + cpu: 1800m + memory: 7474992Ki + pods: 110 [ ... lines removed for clarity ...] -Non-terminated Pods: (5 in total) +Non-terminated Pods: (5 in total) Namespace Name CPU Requests CPU Limits Memory Requests Memory Limits --------- ---- ------------ ---------- --------------- ------------- kube-system fluentd-gcp-v1.38-28bv1 100m (5%) 0 (0%) 200Mi (2%) 200Mi (2%) @@ -225,9 +225,9 @@ Non-terminated Pods: (5 in total) kube-system node-problem-detector-v0.1-fj7m3 20m (1%) 200m (10%) 20Mi (0%) 100Mi (1%) Allocated resources: (Total limits may be over 100 percent, i.e., overcommitted.) - CPU Requests CPU Limits Memory Requests Memory Limits - ------------ ---------- --------------- ------------- - 680m (34%) 400m (20%) 920Mi (12%) 1070Mi (14%) + CPU Requests CPU Limits Memory Requests Memory Limits + ------------ ---------- --------------- ------------- + 680m (34%) 400m (20%) 920Mi (12%) 1070Mi (14%) ``` In the preceding output, you can see that if a Pod requests more than 1120m diff --git a/docs/concepts/containers/container-lifecycle-hooks.md b/docs/concepts/containers/container-lifecycle-hooks.md index dd00180bb7..3d2edac09f 100644 --- a/docs/concepts/containers/container-lifecycle-hooks.md +++ b/docs/concepts/containers/container-lifecycle-hooks.md @@ -91,15 +91,15 @@ Currently, the logs for a hook handler are not exposed in the pod events. If you ``` Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 1m 1m 1 {default-scheduler } Normal Scheduled Successfully assigned test-1730497541-cq1d2 to gke-test-cluster-default-pool-a07e5d30-siqd - 1m 1m 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Pulling pulling image "test:1.0" - 1m 1m 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Created Created container with docker id 5c6a256a2567; Security:[seccomp=unconfined] - 1m 1m 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Pulled Successfully pulled image "test:1.0" - 1m 1m 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Started Started container with docker id 5c6a256a2567 - 38s 38s 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Killing Killing container with docker id 5c6a256a2567: PostStart handler: Error executing in Docker Container: 1 - 37s 37s 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Killing Killing container with docker id 8df9fdfd7054: PostStart handler: Error executing in Docker Container: 1 - 38s 37s 2 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} Warning FailedSync Error syncing pod, skipping: failed to "StartContainer" for "main" with RunContainerError: "PostStart handler: Error executing in Docker Container: 1" - 1m 22s 2 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Warning FailedPostStartHook + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 1m 1m 1 {default-scheduler } Normal Scheduled Successfully assigned test-1730497541-cq1d2 to gke-test-cluster-default-pool-a07e5d30-siqd + 1m 1m 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Pulling pulling image "test:1.0" + 1m 1m 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Created Created container with docker id 5c6a256a2567; Security:[seccomp=unconfined] + 1m 1m 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Pulled Successfully pulled image "test:1.0" + 1m 1m 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Started Started container with docker id 5c6a256a2567 + 38s 38s 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Killing Killing container with docker id 5c6a256a2567: PostStart handler: Error executing in Docker Container: 1 + 37s 37s 1 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Normal Killing Killing container with docker id 8df9fdfd7054: PostStart handler: Error executing in Docker Container: 1 + 38s 37s 2 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} Warning FailedSync Error syncing pod, skipping: failed to "StartContainer" for "main" with RunContainerError: "PostStart handler: Error executing in Docker Container: 1" + 1m 22s 2 {kubelet gke-test-cluster-default-pool-a07e5d30-siqd} spec.containers{main} Warning FailedPostStartHook ``` \ No newline at end of file diff --git a/docs/concepts/containers/images.md b/docs/concepts/containers/images.md index 80d349c3ea..d9442d5b36 100644 --- a/docs/concepts/containers/images.md +++ b/docs/concepts/containers/images.md @@ -177,7 +177,7 @@ If it failed, then you will see: ```shell $ kubectl describe pods/private-image-test-1 | grep "Failed" - Fri, 26 Jun 2015 15:36:13 -0700 Fri, 26 Jun 2015 15:39:13 -0700 19 {kubelet node-i2hq} spec.containers{uses-private-image} failed Failed to pull image "user/privaterepo:v1": Error: image user/privaterepo:v1 not found + Fri, 26 Jun 2015 15:36:13 -0700 Fri, 26 Jun 2015 15:39:13 -0700 19 {kubelet node-i2hq} spec.containers{uses-private-image} failed Failed to pull image "user/privaterepo:v1": Error: image user/privaterepo:v1 not found ``` diff --git a/docs/concepts/jobs/run-to-completion-finite-workloads.md b/docs/concepts/jobs/run-to-completion-finite-workloads.md index 4ffe4aefbf..35ba3cf210 100644 --- a/docs/concepts/jobs/run-to-completion-finite-workloads.md +++ b/docs/concepts/jobs/run-to-completion-finite-workloads.md @@ -45,20 +45,20 @@ Check on the status of the job using this command: ```shell $ kubectl describe jobs/pi -Name: pi -Namespace: default -Image(s): perl -Selector: controller-uid=b1db589a-2c8d-11e6-b324-0209dc45a495 -Parallelism: 1 -Completions: 1 -Start Time: Tue, 07 Jun 2016 10:56:16 +0200 -Labels: controller-uid=b1db589a-2c8d-11e6-b324-0209dc45a495,job-name=pi -Pods Statuses: 0 Running / 1 Succeeded / 0 Failed +Name: pi +Namespace: default +Image(s): perl +Selector: controller-uid=b1db589a-2c8d-11e6-b324-0209dc45a495 +Parallelism: 1 +Completions: 1 +Start Time: Tue, 07 Jun 2016 10:56:16 +0200 +Labels: controller-uid=b1db589a-2c8d-11e6-b324-0209dc45a495,job-name=pi +Pods Statuses: 0 Running / 1 Succeeded / 0 Failed No volumes. Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 1m 1m 1 {job-controller } Normal SuccessfulCreate Created pod: pi-dtn4q + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 1m 1m 1 {job-controller } Normal SuccessfulCreate Created pod: pi-dtn4q ``` To view completed pods of a job, use `kubectl get pods --show-all`. The `--show-all` will show completed pods too. diff --git a/docs/concepts/services-networking/connect-applications-service.md b/docs/concepts/services-networking/connect-applications-service.md index dcc4fbf05b..ec7fae4b75 100644 --- a/docs/concepts/services-networking/connect-applications-service.md +++ b/docs/concepts/services-networking/connect-applications-service.md @@ -56,7 +56,7 @@ A Kubernetes Service is an abstraction which defines a logical set of Pods runni You can create a Service for your 2 nginx replicas with `kubectl expose`: ```shell -$ kubectl expose deployment/my-nginx +$ kubectl expose deployment/my-nginx service "my-nginx" exposed ``` @@ -77,15 +77,15 @@ As mentioned previously, a Service is backed by a group of pods. These pods are ```shell $ kubectl describe svc my-nginx -Name: my-nginx -Namespace: default -Labels: run=my-nginx -Selector: run=my-nginx -Type: ClusterIP -IP: 10.0.162.149 -Port: 80/TCP -Endpoints: 10.244.2.5:80,10.244.3.4:80 -Session Affinity: None +Name: my-nginx +Namespace: default +Labels: run=my-nginx +Selector: run=my-nginx +Type: ClusterIP +IP: 10.0.162.149 +Port: 80/TCP +Endpoints: 10.244.2.5:80,10.244.3.4:80 +Session Affinity: None No events. $ kubectl get ep my-nginx @@ -213,7 +213,7 @@ Let's test this from a pod (the same secret is being reused for simplicity, the ```shell $ kubectl create -f ./curlpod.yaml -$ kubectl get pods -l app=curlpod +$ kubectl get pods -l app=curlpod NAME READY STATUS RESTARTS AGE curl-deployment-1515033274-1410r 1/1 Running 0 1m $ kubectl exec curl-deployment-1515033274-1410r -- curl https://my-nginx --cacert /etc/nginx/ssl/nginx.crt diff --git a/docs/concepts/workloads/pods/init-containers.md b/docs/concepts/workloads/pods/init-containers.md index 1a43dea943..b7e308c60c 100644 --- a/docs/concepts/workloads/pods/init-containers.md +++ b/docs/concepts/workloads/pods/init-containers.md @@ -141,36 +141,36 @@ NAME READY STATUS RESTARTS AGE myapp-pod 0/1 Init:0/2 0 6m $ kubectl describe -f myapp.yaml i11:32 $ kubectl describe -f examples/init-container.yaml -Name: myapp-pod -Namespace: default +Name: myapp-pod +Namespace: default [...] -Labels: app=myapp -Status: Pending +Labels: app=myapp +Status: Pending [...] Init Containers: init-myservice: [...] - State: Running + State: Running [...] init-mydb: [...] - State: Running + State: Running [...] Containers: myapp-container: [...] - State: Waiting - Reason: PodInitializing - Ready: False + State: Waiting + Reason: PodInitializing + Ready: False [...] Events: - FirstSeen LastSeen Count From SubObjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 16s 16s 1 {default-scheduler } Normal Scheduled Successfully assigned myapp-pod to 172.17.4.201 - 16s 16s 1 {kubelet 172.17.4.201} spec.initContainers{init-myservice} Normal Pulling pulling image "busybox" - 13s 13s 1 {kubelet 172.17.4.201} spec.initContainers{init-myservice} Normal Pulled Successfully pulled image "busybox" - 13s 13s 1 {kubelet 172.17.4.201} spec.initContainers{init-myservice} Normal Created Created container with docker id 5ced34a04634; Security:[seccomp=unconfined] - 13s 13s 1 {kubelet 172.17.4.201} spec.initContainers{init-myservice} Normal Started Started container with docker id 5ced34a04634 + FirstSeen LastSeen Count From SubObjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 16s 16s 1 {default-scheduler } Normal Scheduled Successfully assigned myapp-pod to 172.17.4.201 + 16s 16s 1 {kubelet 172.17.4.201} spec.initContainers{init-myservice} Normal Pulling pulling image "busybox" + 13s 13s 1 {kubelet 172.17.4.201} spec.initContainers{init-myservice} Normal Pulled Successfully pulled image "busybox" + 13s 13s 1 {kubelet 172.17.4.201} spec.initContainers{init-myservice} Normal Created Created container with docker id 5ced34a04634; Security:[seccomp=unconfined] + 13s 13s 1 {kubelet 172.17.4.201} spec.initContainers{init-myservice} Normal Started Started container with docker id 5ced34a04634 $ kubectl logs myapp-pod -c init-myservice # Inspect the first init container $ kubectl logs myapp-pod -c init-mydd # Inspect the second init container ``` diff --git a/docs/contribute/stage-documentation-changes.md b/docs/contribute/stage-documentation-changes.md index 48d28aad15..d24807ab17 100644 --- a/docs/contribute/stage-documentation-changes.md +++ b/docs/contribute/stage-documentation-changes.md @@ -92,9 +92,9 @@ web server: NOTE: If you do not want Jekyll to interfere with your other globally installed gems, you can use `bundler`: - gem install bundler - bundle install - bundler exec jekyll serve + gem install bundler + bundle install + bundler exec jekyll serve Regardless of whether you use `bundler` or not, your copy of the site will then be viewable at: [http://localhost:4000](http://localhost:4000) diff --git a/docs/getting-started-guides/centos/centos_manual_config.md b/docs/getting-started-guides/centos/centos_manual_config.md index b64af60475..fe3adc3bb7 100644 --- a/docs/getting-started-guides/centos/centos_manual_config.md +++ b/docs/getting-started-guides/centos/centos_manual_config.md @@ -52,8 +52,8 @@ yum -y install --enablerepo=virt7-docker-common-release kubernetes etcd flannel * Add master and node to /etc/hosts on all machines (not needed if hostnames already in DNS) ```shell -echo "192.168.121.9 centos-master -192.168.121.65 centos-minion-1 +echo "192.168.121.9 centos-master +192.168.121.65 centos-minion-1 192.168.121.66 centos-minion-2 192.168.121.67 centos-minion-3" >> /etc/hosts ``` @@ -147,9 +147,9 @@ FLANNEL_ETCD_PREFIX="/kube-centos/network" ```shell for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler flanneld; do - systemctl restart $SERVICES - systemctl enable $SERVICES - systemctl status $SERVICES + systemctl restart $SERVICES + systemctl enable $SERVICES + systemctl status $SERVICES done ``` diff --git a/docs/getting-started-guides/cloudstack.md b/docs/getting-started-guides/cloudstack.md index 19c292d1f3..2354ba981b 100644 --- a/docs/getting-started-guides/cloudstack.md +++ b/docs/getting-started-guides/cloudstack.md @@ -77,10 +77,10 @@ SSH to it using the key that was created and using the _core_ user and you can l $ ssh -i ~/.ssh/id_rsa_k8s core@ $ fleetctl list-machines - MACHINE IP METADATA - a017c422... role=node - ad13bf84... role=master - e9af8293... role=node + MACHINE IP METADATA + a017c422... role=node + ad13bf84... role=master + e9af8293... role=node ## Support Level diff --git a/docs/getting-started-guides/fedora/fedora_manual_config.md b/docs/getting-started-guides/fedora/fedora_manual_config.md index 114ded9b76..ae23d3097c 100644 --- a/docs/getting-started-guides/fedora/fedora_manual_config.md +++ b/docs/getting-started-guides/fedora/fedora_manual_config.md @@ -48,8 +48,8 @@ dnf -y install etcd * Add master and node to /etc/hosts on all machines (not needed if hostnames already in DNS). Make sure that communication works between fed-master and fed-node by using a utility such as ping. ```shell -echo "192.168.121.9 fed-master -192.168.121.65 fed-node" >> /etc/hosts +echo "192.168.121.9 fed-master +192.168.121.65 fed-node" >> /etc/hosts ``` * Edit /etc/kubernetes/config (which should be the same on all hosts) to set @@ -95,9 +95,9 @@ ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379" ```shell for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler; do - systemctl restart $SERVICES - systemctl enable $SERVICES - systemctl status $SERVICES + systemctl restart $SERVICES + systemctl enable $SERVICES + systemctl status $SERVICES done ``` diff --git a/docs/getting-started-guides/kubeadm.md b/docs/getting-started-guides/kubeadm.md index 20f89817b4..b1abb4c1c1 100644 --- a/docs/getting-started-guides/kubeadm.md +++ b/docs/getting-started-guides/kubeadm.md @@ -227,13 +227,13 @@ The ```kubectl describe``` command gives you more details about the logs ``` # kubectl describe -n kube-system po kube-dns-2924299975-1l2t7 - 2m 2m 1 {kubelet nac} spec.containers{flannel} Warning Failed Failed to start container with docker id 927e7ccdc32b with error: Error response from daemon: {"message":"chown /etc/resolv.conf: operation not permitted"} + 2m 2m 1 {kubelet nac} spec.containers{flannel} Warning Failed Failed to start container with docker id 927e7ccdc32b with error: Error response from daemon: {"message":"chown /etc/resolv.conf: operation not permitted"} ``` Or ``` - 6m 1m 191 {kubelet nac} Warning FailedSync Error syncing pod, skipping: failed to "SetupNetwork" for "kube-dns-2924299975-1l2t7_kube-system" with SetupNetworkError: "Failed to setup network for pod \"kube-dns-2924299975-1l2t7_kube-system(dee8ef21-fbcb-11e6-ba19-38d547e0006a)\" using network plugins \"cni\": open /run/flannel/subnet.env: no such file or directory; Skipping pod" + 6m 1m 191 {kubelet nac} Warning FailedSync Error syncing pod, skipping: failed to "SetupNetwork" for "kube-dns-2924299975-1l2t7_kube-system" with SetupNetworkError: "Failed to setup network for pod \"kube-dns-2924299975-1l2t7_kube-system(dee8ef21-fbcb-11e6-ba19-38d547e0006a)\" using network plugins \"cni\": open /run/flannel/subnet.env: no such file or directory; Skipping pod" ``` You can then search Google for the error messages, which may help you find a solution. diff --git a/docs/getting-started-guides/ubuntu/calico.md b/docs/getting-started-guides/ubuntu/calico.md index ccd66093a4..f3adc88ca7 100644 --- a/docs/getting-started-guides/ubuntu/calico.md +++ b/docs/getting-started-guides/ubuntu/calico.md @@ -15,7 +15,7 @@ This guide will set up a simple Kubernetes cluster with a single Kubernetes mast - This guide uses `systemd` for process management. Ubuntu 15.04 supports systemd natively as do a number of other Linux distributions. - All machines should have Docker >= 1.7.0 installed. - - To install Docker on Ubuntu, follow [these instructions](https://docs.docker.com/installation/ubuntulinux/) +- To install Docker on Ubuntu, follow [these instructions](https://docs.docker.com/installation/ubuntulinux/) - All machines should have connectivity to each other and the internet. - This guide assumes a DHCP server on your network to assign server IPs. - This guide uses `192.168.0.0/16` as the subnet from which pod IP addresses are assigned. If this overlaps with your host subnet, you will need to configure Calico to use a different [IP pool](https://github.com/projectcalico/calico-containers/blob/master/docs/calicoctl/pool.md#calicoctl-pool-commands). diff --git a/docs/getting-started-guides/ubuntu/operational-considerations.md b/docs/getting-started-guides/ubuntu/operational-considerations.md index e6c6a02097..422f6ceaed 100644 --- a/docs/getting-started-guides/ubuntu/operational-considerations.md +++ b/docs/getting-started-guides/ubuntu/operational-considerations.md @@ -70,7 +70,7 @@ At this stage, you can query the controller model as well: ``` juju status Model Controller Cloud/Region Version -controller k8s lxd/localhost 2.0.2 +controller k8s lxd/localhost 2.0.2 App Version Status Scale Charm Store Rev OS Notes @@ -142,16 +142,16 @@ If the deployment is larger the following commands will run on all units success ``` juju show-status kubernetes-master --format json | \ - jq --raw-output '.applications."kubernetes-master".units | keys[]' | \ - xargs -I UNIT juju ssh UNIT "sudo sed -i 's/KUBE_API_ARGS=\"/KUBE_API_ARGS=\"--allow-privileged\ /' /etc/default/kube-apiserver && sudo systemctl restart kube-apiserver.service" + jq --raw-output '.applications."kubernetes-master".units | keys[]' | \ + xargs -I UNIT juju ssh UNIT "sudo sed -i 's/KUBE_API_ARGS=\"/KUBE_API_ARGS=\"--allow-privileged\ /' /etc/default/kube-apiserver && sudo systemctl restart kube-apiserver.service" ``` 2. Update all workers ``` juju show-status kubernetes-worker --format json | \ - jq --raw-output '.applications."kubernetes-worker".units | keys[]' | \ - xargs -I UNIT juju ssh UNIT "sudo sed -i 's/KUBELET_ARGS=\"/KUBELET_ARGS=\"--allow-privileged\ /' /etc/default/kubelet && sudo systemctl restart kubelet.service" + jq --raw-output '.applications."kubernetes-worker".units | keys[]' | \ + xargs -I UNIT juju ssh UNIT "sudo sed -i 's/KUBELET_ARGS=\"/KUBELET_ARGS=\"--allow-privileged\ /' /etc/default/kubelet && sudo systemctl restart kubelet.service" ``` diff --git a/docs/getting-started-guides/vsphere.md b/docs/getting-started-guides/vsphere.md index 9c442d858e..be4b8d87ba 100644 --- a/docs/getting-started-guides/vsphere.md +++ b/docs/getting-started-guides/vsphere.md @@ -71,7 +71,7 @@ Sample Config: working-dir = vm-uuid = [Disk] - scsicontrollertype = pvscsi + scsicontrollertype = pvscsi ``` * Set the cloud provider via ```--cloud-provider=vsphere``` flag for each instance of kubelet, apiserver and controller manager. diff --git a/docs/reference.md b/docs/reference.md index f9f109e7a3..9475899887 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -16,7 +16,7 @@ In the reference section, you can find reference documentation for Kubernetes AP ## CLI References * [kubectl](/docs/user-guide/kubectl-overview/) - Runs commands against Kubernetes clusters. - * [JSONPath](/docs/user-guide/jsonpath/) - Syntax guide for using [JSONPath expressions](http://goessner.net/articles/JsonPath/) with kubectl. + * [JSONPath](/docs/user-guide/jsonpath/) - Syntax guide for using [JSONPath expressions](http://goessner.net/articles/JsonPath/) with kubectl. * [kube-apiserver](/docs/admin/kube-apiserver/) - REST API that validates and configures data for API objects such as pods, services, replication controllers. * [kube-proxy](/docs/admin/kube-proxy/) - Can do simple TCP/UDP stream forwarding or round-robin TCP/UDP forwarding across a set of backends. * [kube-scheduler](/docs/admin/kube-scheduler/) - A policy-rich, topology-aware, workload-specific function that significantly impacts availability, performance, and capacity. diff --git a/docs/resources-reference/v1.5/node_modules/jquery/README.md b/docs/resources-reference/v1.5/node_modules/jquery/README.md index ba3174a778..bab0777435 100644 --- a/docs/resources-reference/v1.5/node_modules/jquery/README.md +++ b/docs/resources-reference/v1.5/node_modules/jquery/README.md @@ -55,11 +55,11 @@ For jQuery to work in Node, a window with a document is required. Since no such ```js require("jsdom").env("", function(err, window) { - if (err) { - console.error(err); - return; - } + if (err) { + console.error(err); + return; + } - var $ = require("jquery")(window); + var $ = require("jquery")(window); }); ``` diff --git a/docs/tasks/administer-federation/ingress.md b/docs/tasks/administer-federation/ingress.md index 410f49d541..f66d68f420 100644 --- a/docs/tasks/administer-federation/ingress.md +++ b/docs/tasks/administer-federation/ingress.md @@ -345,7 +345,7 @@ Check that: delete any ingresses created before the cluster joined the federation (and had it's GLBC reconfigured), and recreate them if necessary. - + #### This troubleshooting guide did not help me solve my problem Please use one of our [support channels](http://kubernetes.io/docs/troubleshooting/) to seek assistance. diff --git a/docs/tasks/configure-pod-container/apply-resource-quota-limit.md b/docs/tasks/configure-pod-container/apply-resource-quota-limit.md index 1120e7550d..f73838351f 100644 --- a/docs/tasks/configure-pod-container/apply-resource-quota-limit.md +++ b/docs/tasks/configure-pod-container/apply-resource-quota-limit.md @@ -69,8 +69,8 @@ Let's describe the quota to see what is currently being consumed in this namespa $ kubectl describe quota object-counts --namespace=quota-example Name: object-counts Namespace: quota-example -Resource Used Hard --------- ---- ---- +Resource Used Hard +-------- ---- ---- persistentvolumeclaims 0 2 services.loadbalancers 0 2 services.nodeports 0 0 @@ -162,8 +162,8 @@ Replicas: 0 current / 1 desired Pods Status: 0 Running / 0 Waiting / 0 Succeeded / 0 Failed No volumes. Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- 4m 7s 11 {replicaset-controller } Warning FailedCreate Error creating: pods "nginx-3137573019-" is forbidden: Failed quota: compute-resources: must specify limits.cpu,limits.memory,requests.cpu,requests.memory ``` @@ -257,7 +257,7 @@ Name: best-effort Namespace: quota-scopes Scopes: BestEffort * Matches all pods that have best effort quality of service. -Resource Used Hard +Resource Used Hard -------- ---- ---- pods 0 10 diff --git a/docs/tasks/job/coarse-parallel-processing-work-queue/index.md b/docs/tasks/job/coarse-parallel-processing-work-queue/index.md index 12bda5e737..1f1d11fb33 100644 --- a/docs/tasks/job/coarse-parallel-processing-work-queue/index.md +++ b/docs/tasks/job/coarse-parallel-processing-work-queue/index.md @@ -77,10 +77,10 @@ Next, we will check that we can discover the rabbitmq service: # Note the rabitmq-service has a DNS name, provided by Kubernetes: root@temp-loe07:/# nslookup rabbitmq-service -Server: 10.0.0.10 -Address: 10.0.0.10#53 +Server: 10.0.0.10 +Address: 10.0.0.10#53 -Name: rabbitmq-service.default.svc.cluster.local +Name: rabbitmq-service.default.svc.cluster.local Address: 10.0.147.152 # Your address will vary. @@ -222,27 +222,27 @@ kubectl create -f ./job.yaml Now wait a bit, then check on the job. ```shell -$ kubectl describe jobs/job-wq-1 -Name: job-wq-1 -Namespace: default -Image(s): gcr.io/causal-jigsaw-637/job-wq-1 -Selector: app in (job-wq-1) -Parallelism: 2 -Completions: 8 -Labels: app=job-wq-1 -Pods Statuses: 0 Running / 8 Succeeded / 0 Failed +$ kubectl describe jobs/job-wq-1 +Name: job-wq-1 +Namespace: default +Image(s): gcr.io/causal-jigsaw-637/job-wq-1 +Selector: app in (job-wq-1) +Parallelism: 2 +Completions: 8 +Labels: app=job-wq-1 +Pods Statuses: 0 Running / 8 Succeeded / 0 Failed No volumes. Events: - FirstSeen LastSeen Count From SubobjectPath Reason Message - ───────── ──────── ───── ──── ───────────── ────── ─────── - 27s 27s 1 {job } SuccessfulCreate Created pod: job-wq-1-hcobb - 27s 27s 1 {job } SuccessfulCreate Created pod: job-wq-1-weytj - 27s 27s 1 {job } SuccessfulCreate Created pod: job-wq-1-qaam5 - 27s 27s 1 {job } SuccessfulCreate Created pod: job-wq-1-b67sr - 26s 26s 1 {job } SuccessfulCreate Created pod: job-wq-1-xe5hj - 15s 15s 1 {job } SuccessfulCreate Created pod: job-wq-1-w2zqe - 14s 14s 1 {job } SuccessfulCreate Created pod: job-wq-1-d6ppa - 14s 14s 1 {job } SuccessfulCreate Created pod: job-wq-1-p17e0 + FirstSeen LastSeen Count From SubobjectPath Reason Message + ───────── ──────── ───── ──── ───────────── ────── ─────── + 27s 27s 1 {job } SuccessfulCreate Created pod: job-wq-1-hcobb + 27s 27s 1 {job } SuccessfulCreate Created pod: job-wq-1-weytj + 27s 27s 1 {job } SuccessfulCreate Created pod: job-wq-1-qaam5 + 27s 27s 1 {job } SuccessfulCreate Created pod: job-wq-1-b67sr + 26s 26s 1 {job } SuccessfulCreate Created pod: job-wq-1-xe5hj + 15s 15s 1 {job } SuccessfulCreate Created pod: job-wq-1-w2zqe + 14s 14s 1 {job } SuccessfulCreate Created pod: job-wq-1-d6ppa + 14s 14s 1 {job } SuccessfulCreate Created pod: job-wq-1-p17e0 ``` All our pods succeeded. Yay. diff --git a/docs/tasks/job/fine-parallel-processing-work-queue/index.md b/docs/tasks/job/fine-parallel-processing-work-queue/index.md index e01a1c8a8b..38cc3d19aa 100644 --- a/docs/tasks/job/fine-parallel-processing-work-queue/index.md +++ b/docs/tasks/job/fine-parallel-processing-work-queue/index.md @@ -175,21 +175,21 @@ kubectl create -f ./job.yaml Now wait a bit, then check on the job. ```shell -$ kubectl describe jobs/job-wq-2 -Name: job-wq-2 -Namespace: default -Image(s): gcr.io/exampleproject/job-wq-2 -Selector: app in (job-wq-2) -Parallelism: 2 -Completions: Unset -Start Time: Mon, 11 Jan 2016 17:07:59 -0800 -Labels: app=job-wq-2 -Pods Statuses: 1 Running / 0 Succeeded / 0 Failed +$ kubectl describe jobs/job-wq-2 +Name: job-wq-2 +Namespace: default +Image(s): gcr.io/exampleproject/job-wq-2 +Selector: app in (job-wq-2) +Parallelism: 2 +Completions: Unset +Start Time: Mon, 11 Jan 2016 17:07:59 -0800 +Labels: app=job-wq-2 +Pods Statuses: 1 Running / 0 Succeeded / 0 Failed No volumes. Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 33s 33s 1 {job-controller } Normal SuccessfulCreate Created pod: job-wq-2-lglf8 + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 33s 33s 1 {job-controller } Normal SuccessfulCreate Created pod: job-wq-2-lglf8 $ kubectl logs pods/job-wq-2-7r7b2 diff --git a/docs/tutorials/clusters/apparmor.md b/docs/tutorials/clusters/apparmor.md index 881c2e72a6..acd8c04591 100644 --- a/docs/tutorials/clusters/apparmor.md +++ b/docs/tutorials/clusters/apparmor.md @@ -222,39 +222,39 @@ To wrap up, let's look at what happens if we try to specify a profile that hasn' command: [ "sh", "-c", "echo 'Hello AppArmor!' && sleep 1h" ] EOF pod "hello-apparmor-2" created - + $ kubectl describe pod hello-apparmor-2 - Name: hello-apparmor-2 - Namespace: default - Node: gke-test-default-pool-239f5d02-x1kf/ - Start Time: Tue, 30 Aug 2016 17:58:56 -0700 - Labels: - Status: Failed - Reason: AppArmor - Message: Pod Cannot enforce AppArmor: profile "k8s-apparmor-example-allow-write" is not loaded - IP: - Controllers: + Name: hello-apparmor-2 + Namespace: default + Node: gke-test-default-pool-239f5d02-x1kf/ + Start Time: Tue, 30 Aug 2016 17:58:56 -0700 + Labels: + Status: Failed + Reason: AppArmor + Message: Pod Cannot enforce AppArmor: profile "k8s-apparmor-example-allow-write" is not loaded + IP: + Controllers: Containers: hello: - Image: busybox - Port: + Image: busybox + Port: Command: sh -c echo 'Hello AppArmor!' && sleep 1h Requests: - cpu: 100m - Environment Variables: + cpu: 100m + Environment Variables: Volumes: default-token-dnz7v: - Type: Secret (a volume populated by a Secret) - SecretName: default-token-dnz7v - QoS Tier: Burstable + Type: Secret (a volume populated by a Secret) + SecretName: default-token-dnz7v + QoS Tier: Burstable Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 23s 23s 1 {default-scheduler } Normal Scheduled Successfully assigned hello-apparmor-2 to e2e-test-stclair-minion-group-t1f5 - 23s 23s 1 {kubelet e2e-test-stclair-minion-group-t1f5} Warning AppArmor Cannot enforce AppArmor: profile "k8s-apparmor-example-allow-write" is not loaded + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 23s 23s 1 {default-scheduler } Normal Scheduled Successfully assigned hello-apparmor-2 to e2e-test-stclair-minion-group-t1f5 + 23s 23s 1 {kubelet e2e-test-stclair-minion-group-t1f5} Warning AppArmor Cannot enforce AppArmor: profile "k8s-apparmor-example-allow-write" is not loaded Note the pod status is Failed, with a helpful error message: `Pod Cannot enforce AppArmor: profile "k8s-apparmor-example-allow-write" is not loaded`. An event was also recorded with the same message. diff --git a/docs/tutorials/connecting-apps/connecting-frontend-backend.md b/docs/tutorials/connecting-apps/connecting-frontend-backend.md index 8f7f184b98..b179afe744 100644 --- a/docs/tutorials/connecting-apps/connecting-frontend-backend.md +++ b/docs/tutorials/connecting-apps/connecting-frontend-backend.md @@ -58,19 +58,19 @@ kubectl describe deployment hello The output is similar to this: ``` -Name: hello -Namespace: default -CreationTimestamp: Mon, 24 Oct 2016 14:21:02 -0700 -Labels: app=hello - tier=backend - track=stable -Selector: app=hello,tier=backend,track=stable -Replicas: 7 updated | 7 total | 7 available | 0 unavailable -StrategyType: RollingUpdate -MinReadySeconds: 0 -RollingUpdateStrategy: 1 max unavailable, 1 max surge -OldReplicaSets: -NewReplicaSet: hello-3621623197 (7/7 replicas created) +Name: hello +Namespace: default +CreationTimestamp: Mon, 24 Oct 2016 14:21:02 -0700 +Labels: app=hello + tier=backend + track=stable +Selector: app=hello,tier=backend,track=stable +Replicas: 7 updated | 7 total | 7 available | 0 unavailable +StrategyType: RollingUpdate +MinReadySeconds: 0 +RollingUpdateStrategy: 1 max unavailable, 1 max surge +OldReplicaSets: +NewReplicaSet: hello-3621623197 (7/7 replicas created) Events: ... ``` diff --git a/docs/tutorials/stateful-application/run-stateful-application.md b/docs/tutorials/stateful-application/run-stateful-application.md index 7a0856abb6..37ba8ae7a7 100644 --- a/docs/tutorials/stateful-application/run-stateful-application.md +++ b/docs/tutorials/stateful-application/run-stateful-application.md @@ -91,20 +91,20 @@ for a secure solution. kubectl describe deployment mysql - Name: mysql - Namespace: default - CreationTimestamp: Tue, 01 Nov 2016 11:18:45 -0700 - Labels: app=mysql - Selector: app=mysql - Replicas: 1 updated | 1 total | 0 available | 1 unavailable - StrategyType: Recreate - MinReadySeconds: 0 - OldReplicaSets: - NewReplicaSet: mysql-63082529 (1/1 replicas created) + Name: mysql + Namespace: default + CreationTimestamp: Tue, 01 Nov 2016 11:18:45 -0700 + Labels: app=mysql + Selector: app=mysql + Replicas: 1 updated | 1 total | 0 available | 1 unavailable + StrategyType: Recreate + MinReadySeconds: 0 + OldReplicaSets: + NewReplicaSet: mysql-63082529 (1/1 replicas created) Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 33s 33s 1 {deployment-controller } Normal ScalingReplicaSet Scaled up replica set mysql-63082529 to 1 + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 33s 33s 1 {deployment-controller } Normal ScalingReplicaSet Scaled up replica set mysql-63082529 to 1 1. List the pods created by the Deployment: @@ -117,33 +117,33 @@ for a secure solution. kubectl describe pv mysql-pv - Name: mysql-pv - Labels: - Status: Bound - Claim: default/mysql-pv-claim - Reclaim Policy: Retain - Access Modes: RWO - Capacity: 20Gi - Message: + Name: mysql-pv + Labels: + Status: Bound + Claim: default/mysql-pv-claim + Reclaim Policy: Retain + Access Modes: RWO + Capacity: 20Gi + Message: Source: - Type: GCEPersistentDisk (a Persistent Disk resource in Google Compute Engine) - PDName: mysql-disk - FSType: ext4 - Partition: 0 - ReadOnly: false + Type: GCEPersistentDisk (a Persistent Disk resource in Google Compute Engine) + PDName: mysql-disk + FSType: ext4 + Partition: 0 + ReadOnly: false No events. 1. Inspect the PersistentVolumeClaim: kubectl describe pvc mysql-pv-claim - Name: mysql-pv-claim - Namespace: default - Status: Bound - Volume: mysql-pv - Labels: - Capacity: 20Gi - Access Modes: RWO + Name: mysql-pv-claim + Namespace: default + Status: Bound + Volume: mysql-pv + Labels: + Capacity: 20Gi + Access Modes: RWO No events. ## Accessing the MySQL instance diff --git a/docs/tutorials/stateful-application/zookeeper.md b/docs/tutorials/stateful-application/zookeeper.md index 9ee4b77713..14c4d6698b 100644 --- a/docs/tutorials/stateful-application/zookeeper.md +++ b/docs/tutorials/stateful-application/zookeeper.md @@ -877,9 +877,9 @@ word to test the server's health. ZK_CLIENT_PORT=${ZK_CLIENT_PORT:-2181} OK=$(echo ruok | nc 127.0.0.1 $ZK_CLIENT_PORT) if [ "$OK" == "imok" ]; then - exit 0 + exit 0 else - exit 1 + exit 1 fi ``` diff --git a/docs/user-guide/introspection-and-debugging.md b/docs/user-guide/introspection-and-debugging.md index ff0bb99539..26f09e41c7 100644 --- a/docs/user-guide/introspection-and-debugging.md +++ b/docs/user-guide/introspection-and-debugging.md @@ -57,49 +57,49 @@ We can retrieve a lot more information about each of these pods using `kubectl d ```shell $ kubectl describe pod nginx-deployment-1006230814-6winp -Name: nginx-deployment-1006230814-6winp -Namespace: default -Node: kubernetes-node-wul5/10.240.0.9 -Start Time: Thu, 24 Mar 2016 01:39:49 +0000 -Labels: app=nginx,pod-template-hash=1006230814 -Status: Running -IP: 10.244.0.6 -Controllers: ReplicaSet/nginx-deployment-1006230814 +Name: nginx-deployment-1006230814-6winp +Namespace: default +Node: kubernetes-node-wul5/10.240.0.9 +Start Time: Thu, 24 Mar 2016 01:39:49 +0000 +Labels: app=nginx,pod-template-hash=1006230814 +Status: Running +IP: 10.244.0.6 +Controllers: ReplicaSet/nginx-deployment-1006230814 Containers: nginx: - Container ID: docker://90315cc9f513c724e9957a4788d3e625a078de84750f244a40f97ae355eb1149 - Image: nginx - Image ID: docker://6f62f48c4e55d700cf3eb1b5e33fa051802986b77b874cc351cce539e5163707 - Port: 80/TCP + Container ID: docker://90315cc9f513c724e9957a4788d3e625a078de84750f244a40f97ae355eb1149 + Image: nginx + Image ID: docker://6f62f48c4e55d700cf3eb1b5e33fa051802986b77b874cc351cce539e5163707 + Port: 80/TCP QoS Tier: - cpu: Guaranteed - memory: Guaranteed + cpu: Guaranteed + memory: Guaranteed Limits: - cpu: 500m - memory: 128Mi + cpu: 500m + memory: 128Mi Requests: - memory: 128Mi - cpu: 500m - State: Running - Started: Thu, 24 Mar 2016 01:39:51 +0000 - Ready: True - Restart Count: 0 + memory: 128Mi + cpu: 500m + State: Running + Started: Thu, 24 Mar 2016 01:39:51 +0000 + Ready: True + Restart Count: 0 Environment Variables: Conditions: - Type Status - Ready True + Type Status + Ready True Volumes: default-token-4bcbi: - Type: Secret (a volume populated by a Secret) - SecretName: default-token-4bcbi + Type: Secret (a volume populated by a Secret) + SecretName: default-token-4bcbi Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 54s 54s 1 {default-scheduler } Normal Scheduled Successfully assigned nginx-deployment-1006230814-6winp to kubernetes-node-wul5 - 54s 54s 1 {kubelet kubernetes-node-wul5} spec.containers{nginx} Normal Pulling pulling image "nginx" - 53s 53s 1 {kubelet kubernetes-node-wul5} spec.containers{nginx} Normal Pulled Successfully pulled image "nginx" - 53s 53s 1 {kubelet kubernetes-node-wul5} spec.containers{nginx} Normal Created Created container with docker id 90315cc9f513 - 53s 53s 1 {kubelet kubernetes-node-wul5} spec.containers{nginx} Normal Started Started container with docker id 90315cc9f513 + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 54s 54s 1 {default-scheduler } Normal Scheduled Successfully assigned nginx-deployment-1006230814-6winp to kubernetes-node-wul5 + 54s 54s 1 {kubelet kubernetes-node-wul5} spec.containers{nginx} Normal Pulling pulling image "nginx" + 53s 53s 1 {kubelet kubernetes-node-wul5} spec.containers{nginx} Normal Pulled Successfully pulled image "nginx" + 53s 53s 1 {kubelet kubernetes-node-wul5} spec.containers{nginx} Normal Created Created container with docker id 90315cc9f513 + 53s 53s 1 {kubelet kubernetes-node-wul5} spec.containers{nginx} Normal Started Started container with docker id 90315cc9f513 ``` Here you can see configuration information about the container(s) and Pod (labels, resource requirements, etc.), as well as status information about the container(s) and Pod (state, readiness, restart count, events, etc.) @@ -132,35 +132,35 @@ To find out why the nginx-deployment-1370807587-fz9sd pod is not running, we can ```shell $ kubectl describe pod nginx-deployment-1370807587-fz9sd - Name: nginx-deployment-1370807587-fz9sd - Namespace: default - Node: / - Labels: app=nginx,pod-template-hash=1370807587 - Status: Pending - IP: - Controllers: ReplicaSet/nginx-deployment-1370807587 + Name: nginx-deployment-1370807587-fz9sd + Namespace: default + Node: / + Labels: app=nginx,pod-template-hash=1370807587 + Status: Pending + IP: + Controllers: ReplicaSet/nginx-deployment-1370807587 Containers: nginx: - Image: nginx - Port: 80/TCP + Image: nginx + Port: 80/TCP QoS Tier: - memory: Guaranteed - cpu: Guaranteed + memory: Guaranteed + cpu: Guaranteed Limits: - cpu: 1 - memory: 128Mi + cpu: 1 + memory: 128Mi Requests: - cpu: 1 - memory: 128Mi + cpu: 1 + memory: 128Mi Environment Variables: Volumes: default-token-4bcbi: - Type: Secret (a volume populated by a Secret) - SecretName: default-token-4bcbi + Type: Secret (a volume populated by a Secret) + SecretName: default-token-4bcbi Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 1m 48s 7 {default-scheduler } Warning FailedScheduling pod (nginx-deployment-1370807587-fz9sd) failed to fit in any node + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 1m 48s 7 {default-scheduler } Warning FailedScheduling pod (nginx-deployment-1370807587-fz9sd) failed to fit in any node fit failure on node (kubernetes-node-6ta5): Node didn't have enough resource: CPU, requested: 1000, used: 1420, capacity: 2000 fit failure on node (kubernetes-node-wul5): Node didn't have enough resource: CPU, requested: 1000, used: 1100, capacity: 2000 ``` @@ -270,34 +270,34 @@ kubernetes-node-st6x Ready 1h kubernetes-node-unaj Ready 1h $ kubectl describe node kubernetes-node-861h -Name: kubernetes-node-861h -Labels: kubernetes.io/hostname=kubernetes-node-861h -CreationTimestamp: Fri, 10 Jul 2015 14:32:29 -0700 +Name: kubernetes-node-861h +Labels: kubernetes.io/hostname=kubernetes-node-861h +CreationTimestamp: Fri, 10 Jul 2015 14:32:29 -0700 Conditions: - Type Status LastHeartbeatTime LastTransitionTime Reason Message - Ready Unknown Fri, 10 Jul 2015 14:34:32 -0700 Fri, 10 Jul 2015 14:35:15 -0700 Kubelet stopped posting node status. -Addresses: 10.240.115.55,104.197.0.26 + Type Status LastHeartbeatTime LastTransitionTime Reason Message + Ready Unknown Fri, 10 Jul 2015 14:34:32 -0700 Fri, 10 Jul 2015 14:35:15 -0700 Kubelet stopped posting node status. +Addresses: 10.240.115.55,104.197.0.26 Capacity: - cpu: 1 - memory: 3800808Ki - pods: 100 + cpu: 1 + memory: 3800808Ki + pods: 100 Version: - Kernel Version: 3.16.0-0.bpo.4-amd64 - OS Image: Debian GNU/Linux 7 (wheezy) - Container Runtime Version: docker://Unknown - Kubelet Version: v0.21.1-185-gffc5a86098dc01 - Kube-Proxy Version: v0.21.1-185-gffc5a86098dc01 -PodCIDR: 10.244.0.0/24 -ExternalID: 15233045891481496305 -Pods: (0 in total) - Namespace Name + Kernel Version: 3.16.0-0.bpo.4-amd64 + OS Image: Debian GNU/Linux 7 (wheezy) + Container Runtime Version: docker://Unknown + Kubelet Version: v0.21.1-185-gffc5a86098dc01 + Kube-Proxy Version: v0.21.1-185-gffc5a86098dc01 +PodCIDR: 10.244.0.0/24 +ExternalID: 15233045891481496305 +Pods: (0 in total) + Namespace Name Events: - FirstSeen LastSeen Count From SubobjectPath Reason Message - Fri, 10 Jul 2015 14:32:28 -0700 Fri, 10 Jul 2015 14:32:28 -0700 1 {kubelet kubernetes-node-861h} NodeNotReady Node kubernetes-node-861h status is now: NodeNotReady - Fri, 10 Jul 2015 14:32:30 -0700 Fri, 10 Jul 2015 14:32:30 -0700 1 {kubelet kubernetes-node-861h} NodeNotReady Node kubernetes-node-861h status is now: NodeNotReady - Fri, 10 Jul 2015 14:33:00 -0700 Fri, 10 Jul 2015 14:33:00 -0700 1 {kubelet kubernetes-node-861h} starting Starting kubelet. - Fri, 10 Jul 2015 14:33:02 -0700 Fri, 10 Jul 2015 14:33:02 -0700 1 {kubelet kubernetes-node-861h} NodeReady Node kubernetes-node-861h status is now: NodeReady - Fri, 10 Jul 2015 14:35:15 -0700 Fri, 10 Jul 2015 14:35:15 -0700 1 {controllermanager } NodeNotReady Node kubernetes-node-861h status is now: NodeNotReady + FirstSeen LastSeen Count From SubobjectPath Reason Message + Fri, 10 Jul 2015 14:32:28 -0700 Fri, 10 Jul 2015 14:32:28 -0700 1 {kubelet kubernetes-node-861h} NodeNotReady Node kubernetes-node-861h status is now: NodeNotReady + Fri, 10 Jul 2015 14:32:30 -0700 Fri, 10 Jul 2015 14:32:30 -0700 1 {kubelet kubernetes-node-861h} NodeNotReady Node kubernetes-node-861h status is now: NodeNotReady + Fri, 10 Jul 2015 14:33:00 -0700 Fri, 10 Jul 2015 14:33:00 -0700 1 {kubelet kubernetes-node-861h} starting Starting kubelet. + Fri, 10 Jul 2015 14:33:02 -0700 Fri, 10 Jul 2015 14:33:02 -0700 1 {kubelet kubernetes-node-861h} NodeReady Node kubernetes-node-861h status is now: NodeReady + Fri, 10 Jul 2015 14:35:15 -0700 Fri, 10 Jul 2015 14:35:15 -0700 1 {controllermanager } NodeNotReady Node kubernetes-node-861h status is now: NodeNotReady $ kubectl get node kubernetes-node-861h -o yaml diff --git a/docs/user-guide/kubectl-overview.md b/docs/user-guide/kubectl-overview.md index 2f3e8deac8..c78ed009eb 100644 --- a/docs/user-guide/kubectl-overview.md +++ b/docs/user-guide/kubectl-overview.md @@ -44,34 +44,34 @@ If you need help, just run `kubectl help` from the terminal window. The following table includes short descriptions and the general syntax for all of the `kubectl` operations: -Operation | Syntax | Description +Operation | Syntax | Description -------------------- | -------------------- | -------------------- -`annotate` | `kubectl annotate (-f FILENAME | TYPE NAME | TYPE/NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--overwrite] [--all] [--resource-version=version] [flags]` | Add or update the annotations of one or more resources. -`api-versions` | `kubectl api-versions [flags]` | List the API versions that are available. -`apply` | `kubectl apply -f FILENAME [flags]`| Apply a configuration change to a resource from a file or stdin. -`attach` | `kubectl attach POD -c CONTAINER [-i] [-t] [flags]` | Attach to a running container either to view the output stream or interact with the container (stdin). -`autoscale` | `kubectl autoscale (-f FILENAME | TYPE NAME | TYPE/NAME) [--min=MINPODS] --max=MAXPODS [--cpu-percent=CPU] [flags]` | Automatically scale the set of pods that are managed by a replication controller. -`cluster-info` | `kubectl cluster-info [flags]` | Display endpoint information about the master and services in the cluster. -`config` | `kubectl config SUBCOMMAND [flags]` | Modifies kubeconfig files. See the individual subcommands for details. -`create` | `kubectl create -f FILENAME [flags]` | Create one or more resources from a file or stdin. -`delete` | `kubectl delete (-f FILENAME | TYPE [NAME | /NAME | -l label | --all]) [flags]` | Delete resources either from a file, stdin, or specifying label selectors, names, resource selectors, or resources. -`describe` | `kubectl describe (-f FILENAME | TYPE [NAME_PREFIX | /NAME | -l label]) [flags]` | Display the detailed state of one or more resources. -`edit` | `kubectl edit (-f FILENAME | TYPE NAME | TYPE/NAME) [flags]` | Edit and update the definition of one or more resources on the server by using the default editor. -`exec` | `kubectl exec POD [-c CONTAINER] [-i] [-t] [flags] [-- COMMAND [args...]]` | Execute a command against a container in a pod, -`explain` | `kubectl explain [--include-extended-apis=true] [--recursive=false] [flags]` | Get documentation of various resources. For instance pods, nodes, services, etc. -`expose` | `kubectl expose (-f FILENAME | TYPE NAME | TYPE/NAME) [--port=port] [--protocol=TCP|UDP] [--target-port=number-or-name] [--name=name] [----external-ip=external-ip-of-service] [--type=type] [flags]` | Expose a replication controller, service, or pod as a new Kubernetes service. -`get` | `kubectl get (-f FILENAME | TYPE [NAME | /NAME | -l label]) [--watch] [--sort-by=FIELD] [[-o | --output]=OUTPUT_FORMAT] [flags]` | List one or more resources. -`label` | `kubectl label (-f FILENAME | TYPE NAME | TYPE/NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--overwrite] [--all] [--resource-version=version] [flags]` | Add or update the labels of one or more resources. -`logs` | `kubectl logs POD [-c CONTAINER] [--follow] [flags]` | Print the logs for a container in a pod. -`patch` | `kubectl patch (-f FILENAME | TYPE NAME | TYPE/NAME) --patch PATCH [flags]` | Update one or more fields of a resource by using the strategic merge patch process. -`port-forward` | `kubectl port-forward POD [LOCAL_PORT:]REMOTE_PORT [...[LOCAL_PORT_N:]REMOTE_PORT_N] [flags]` | Forward one or more local ports to a pod. -`proxy` | `kubectl proxy [--port=PORT] [--www=static-dir] [--www-prefix=prefix] [--api-prefix=prefix] [flags]` | Run a proxy to the Kubernetes API server. -`replace` | `kubectl replace -f FILENAME` | Replace a resource from a file or stdin. -`rolling-update` | `kubectl rolling-update OLD_CONTROLLER_NAME ([NEW_CONTROLLER_NAME] --image=NEW_CONTAINER_IMAGE | -f NEW_CONTROLLER_SPEC) [flags]` | Perform a rolling update by gradually replacing the specified replication controller and its pods. -`run` | `kubectl run NAME --image=image [--env="key=value"] [--port=port] [--replicas=replicas] [--dry-run=bool] [--overrides=inline-json] [flags]` | Run a specified image on the cluster. -`scale` | `kubectl scale (-f FILENAME | TYPE NAME | TYPE/NAME) --replicas=COUNT [--resource-version=version] [--current-replicas=count] [flags]` | Update the size of the specified replication controller. -`stop` | `kubectl stop` | Deprecated: Instead, see `kubectl delete`. -`version` | `kubectl version [--client] [flags]` | Display the Kubernetes version running on the client and server. +`annotate` | `kubectl annotate (-f FILENAME | TYPE NAME | TYPE/NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--overwrite] [--all] [--resource-version=version] [flags]` | Add or update the annotations of one or more resources. +`api-versions` | `kubectl api-versions [flags]` | List the API versions that are available. +`apply` | `kubectl apply -f FILENAME [flags]`| Apply a configuration change to a resource from a file or stdin. +`attach` | `kubectl attach POD -c CONTAINER [-i] [-t] [flags]` | Attach to a running container either to view the output stream or interact with the container (stdin). +`autoscale` | `kubectl autoscale (-f FILENAME | TYPE NAME | TYPE/NAME) [--min=MINPODS] --max=MAXPODS [--cpu-percent=CPU] [flags]` | Automatically scale the set of pods that are managed by a replication controller. +`cluster-info` | `kubectl cluster-info [flags]` | Display endpoint information about the master and services in the cluster. +`config` | `kubectl config SUBCOMMAND [flags]` | Modifies kubeconfig files. See the individual subcommands for details. +`create` | `kubectl create -f FILENAME [flags]` | Create one or more resources from a file or stdin. +`delete` | `kubectl delete (-f FILENAME | TYPE [NAME | /NAME | -l label | --all]) [flags]` | Delete resources either from a file, stdin, or specifying label selectors, names, resource selectors, or resources. +`describe` | `kubectl describe (-f FILENAME | TYPE [NAME_PREFIX | /NAME | -l label]) [flags]` | Display the detailed state of one or more resources. +`edit` | `kubectl edit (-f FILENAME | TYPE NAME | TYPE/NAME) [flags]` | Edit and update the definition of one or more resources on the server by using the default editor. +`exec` | `kubectl exec POD [-c CONTAINER] [-i] [-t] [flags] [-- COMMAND [args...]]` | Execute a command against a container in a pod, +`explain` | `kubectl explain [--include-extended-apis=true] [--recursive=false] [flags]` | Get documentation of various resources. For instance pods, nodes, services, etc. +`expose` | `kubectl expose (-f FILENAME | TYPE NAME | TYPE/NAME) [--port=port] [--protocol=TCP|UDP] [--target-port=number-or-name] [--name=name] [----external-ip=external-ip-of-service] [--type=type] [flags]` | Expose a replication controller, service, or pod as a new Kubernetes service. +`get` | `kubectl get (-f FILENAME | TYPE [NAME | /NAME | -l label]) [--watch] [--sort-by=FIELD] [[-o | --output]=OUTPUT_FORMAT] [flags]` | List one or more resources. +`label` | `kubectl label (-f FILENAME | TYPE NAME | TYPE/NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--overwrite] [--all] [--resource-version=version] [flags]` | Add or update the labels of one or more resources. +`logs` | `kubectl logs POD [-c CONTAINER] [--follow] [flags]` | Print the logs for a container in a pod. +`patch` | `kubectl patch (-f FILENAME | TYPE NAME | TYPE/NAME) --patch PATCH [flags]` | Update one or more fields of a resource by using the strategic merge patch process. +`port-forward` | `kubectl port-forward POD [LOCAL_PORT:]REMOTE_PORT [...[LOCAL_PORT_N:]REMOTE_PORT_N] [flags]` | Forward one or more local ports to a pod. +`proxy` | `kubectl proxy [--port=PORT] [--www=static-dir] [--www-prefix=prefix] [--api-prefix=prefix] [flags]` | Run a proxy to the Kubernetes API server. +`replace` | `kubectl replace -f FILENAME` | Replace a resource from a file or stdin. +`rolling-update` | `kubectl rolling-update OLD_CONTROLLER_NAME ([NEW_CONTROLLER_NAME] --image=NEW_CONTAINER_IMAGE | -f NEW_CONTROLLER_SPEC) [flags]` | Perform a rolling update by gradually replacing the specified replication controller and its pods. +`run` | `kubectl run NAME --image=image [--env="key=value"] [--port=port] [--replicas=replicas] [--dry-run=bool] [--overrides=inline-json] [flags]` | Run a specified image on the cluster. +`scale` | `kubectl scale (-f FILENAME | TYPE NAME | TYPE/NAME) --replicas=COUNT [--resource-version=version] [--current-replicas=count] [flags]` | Update the size of the specified replication controller. +`stop` | `kubectl stop` | Deprecated: Instead, see `kubectl delete`. +`version` | `kubectl version [--client] [flags]` | Display the Kubernetes version running on the client and server. Remember: For more about command operations, see the [kubectl](/docs/user-guide/kubectl) reference documentation. @@ -79,7 +79,7 @@ Remember: For more about command operations, see the [kubectl](/docs/user-guide/ The following table includes a list of all the supported resource types and their abbreviated aliases: -Resource type | Abbreviated alias +Resource type | Abbreviated alias -------------------- | -------------------- `clusters` | `clusterrolebindings` | diff --git a/docs/user-guide/kubectl/index.md b/docs/user-guide/kubectl/index.md index 58a0655bc1..498a892ee3 100644 --- a/docs/user-guide/kubectl/index.md +++ b/docs/user-guide/kubectl/index.md @@ -47,43 +47,43 @@ kubectl ### SEE ALSO -* [kubectl annotate](kubectl_annotate.md) - Update the annotations on a resource -* [kubectl api-versions](kubectl_api-versions.md) - Print the supported API versions on the server, in the form of "group/version" -* [kubectl apply](kubectl_apply.md) - Apply a configuration to a resource by filename or stdin -* [kubectl attach](kubectl_attach.md) - Attach to a running container -* [kubectl autoscale](kubectl_autoscale.md) - Auto-scale a Deployment, ReplicaSet, or ReplicationController -* [kubectl certificate](kubectl_certificate.md) - Modify certificate resources. -* [kubectl cluster-info](kubectl_cluster-info.md) - Display cluster info -* [kubectl completion](kubectl_completion.md) - Output shell completion code for the given shell (bash or zsh) -* [kubectl config](kubectl_config.md) - Modify kubeconfig files -* [kubectl convert](kubectl_convert.md) - Convert config files between different API versions -* [kubectl cordon](kubectl_cordon.md) - Mark node as unschedulable -* [kubectl cp](kubectl_cp.md) - Copy files and directories to and from containers. -* [kubectl create](kubectl_create.md) - Create a resource by filename or stdin -* [kubectl delete](kubectl_delete.md) - Delete resources by filenames, stdin, resources and names, or by resources and label selector -* [kubectl describe](kubectl_describe.md) - Show details of a specific resource or group of resources -* [kubectl drain](kubectl_drain.md) - Drain node in preparation for maintenance -* [kubectl edit](kubectl_edit.md) - Edit a resource on the server -* [kubectl exec](kubectl_exec.md) - Execute a command in a container -* [kubectl explain](kubectl_explain.md) - Documentation of resources -* [kubectl expose](kubectl_expose.md) - Take a replication controller, service, deployment or pod and expose it as a new Kubernetes Service -* [kubectl get](kubectl_get.md) - Display one or many resources -* [kubectl label](kubectl_label.md) - Update the labels on a resource -* [kubectl logs](kubectl_logs.md) - Print the logs for a container in a pod -* [kubectl options](kubectl_options.md) - -* [kubectl patch](kubectl_patch.md) - Update field(s) of a resource using strategic merge patch -* [kubectl port-forward](kubectl_port-forward.md) - Forward one or more local ports to a pod -* [kubectl proxy](kubectl_proxy.md) - Run a proxy to the Kubernetes API server -* [kubectl replace](kubectl_replace.md) - Replace a resource by filename or stdin -* [kubectl rolling-update](kubectl_rolling-update.md) - Perform a rolling update of the given ReplicationController -* [kubectl rollout](kubectl_rollout.md) - Manage a deployment rollout -* [kubectl run](kubectl_run.md) - Run a particular image on the cluster -* [kubectl scale](kubectl_scale.md) - Set a new size for a Deployment, ReplicaSet, Replication Controller, or Job -* [kubectl set](kubectl_set.md) - Set specific features on objects -* [kubectl taint](kubectl_taint.md) - Update the taints on one or more nodes -* [kubectl top](kubectl_top.md) - Display Resource (CPU/Memory/Storage) usage -* [kubectl uncordon](kubectl_uncordon.md) - Mark node as schedulable -* [kubectl version](kubectl_version.md) - Print the client and server version information +* [kubectl annotate](kubectl_annotate.md) - Update the annotations on a resource +* [kubectl api-versions](kubectl_api-versions.md) - Print the supported API versions on the server, in the form of "group/version" +* [kubectl apply](kubectl_apply.md) - Apply a configuration to a resource by filename or stdin +* [kubectl attach](kubectl_attach.md) - Attach to a running container +* [kubectl autoscale](kubectl_autoscale.md) - Auto-scale a Deployment, ReplicaSet, or ReplicationController +* [kubectl certificate](kubectl_certificate.md) - Modify certificate resources. +* [kubectl cluster-info](kubectl_cluster-info.md) - Display cluster info +* [kubectl completion](kubectl_completion.md) - Output shell completion code for the given shell (bash or zsh) +* [kubectl config](kubectl_config.md) - Modify kubeconfig files +* [kubectl convert](kubectl_convert.md) - Convert config files between different API versions +* [kubectl cordon](kubectl_cordon.md) - Mark node as unschedulable +* [kubectl cp](kubectl_cp.md) - Copy files and directories to and from containers. +* [kubectl create](kubectl_create.md) - Create a resource by filename or stdin +* [kubectl delete](kubectl_delete.md) - Delete resources by filenames, stdin, resources and names, or by resources and label selector +* [kubectl describe](kubectl_describe.md) - Show details of a specific resource or group of resources +* [kubectl drain](kubectl_drain.md) - Drain node in preparation for maintenance +* [kubectl edit](kubectl_edit.md) - Edit a resource on the server +* [kubectl exec](kubectl_exec.md) - Execute a command in a container +* [kubectl explain](kubectl_explain.md) - Documentation of resources +* [kubectl expose](kubectl_expose.md) - Take a replication controller, service, deployment or pod and expose it as a new Kubernetes Service +* [kubectl get](kubectl_get.md) - Display one or many resources +* [kubectl label](kubectl_label.md) - Update the labels on a resource +* [kubectl logs](kubectl_logs.md) - Print the logs for a container in a pod +* [kubectl options](kubectl_options.md) - +* [kubectl patch](kubectl_patch.md) - Update field(s) of a resource using strategic merge patch +* [kubectl port-forward](kubectl_port-forward.md) - Forward one or more local ports to a pod +* [kubectl proxy](kubectl_proxy.md) - Run a proxy to the Kubernetes API server +* [kubectl replace](kubectl_replace.md) - Replace a resource by filename or stdin +* [kubectl rolling-update](kubectl_rolling-update.md) - Perform a rolling update of the given ReplicationController +* [kubectl rollout](kubectl_rollout.md) - Manage a deployment rollout +* [kubectl run](kubectl_run.md) - Run a particular image on the cluster +* [kubectl scale](kubectl_scale.md) - Set a new size for a Deployment, ReplicaSet, Replication Controller, or Job +* [kubectl set](kubectl_set.md) - Set specific features on objects +* [kubectl taint](kubectl_taint.md) - Update the taints on one or more nodes +* [kubectl top](kubectl_top.md) - Display Resource (CPU/Memory/Storage) usage +* [kubectl uncordon](kubectl_uncordon.md) - Mark node as schedulable +* [kubectl version](kubectl_version.md) - Print the client and server version information ###### Auto generated by spf13/cobra on 13-Dec-2016 diff --git a/docs/user-guide/kubectl/v1.5/node_modules/jquery/README.md b/docs/user-guide/kubectl/v1.5/node_modules/jquery/README.md index ba3174a778..bab0777435 100644 --- a/docs/user-guide/kubectl/v1.5/node_modules/jquery/README.md +++ b/docs/user-guide/kubectl/v1.5/node_modules/jquery/README.md @@ -55,11 +55,11 @@ For jQuery to work in Node, a window with a document is required. Since no such ```js require("jsdom").env("", function(err, window) { - if (err) { - console.error(err); - return; - } + if (err) { + console.error(err); + return; + } - var $ = require("jquery")(window); + var $ = require("jquery")(window); }); ``` diff --git a/docs/user-guide/petset.md b/docs/user-guide/petset.md index 1a3dcf6b66..2a4f2d4b12 100644 --- a/docs/user-guide/petset.md +++ b/docs/user-guide/petset.md @@ -246,11 +246,11 @@ web-0 # apt-get update && apt-get install -y dnsutils ... web-0 # nslookup -type=srv nginx.default -Server: 10.0.0.10 -Address: 10.0.0.10#53 +Server: 10.0.0.10 +Address: 10.0.0.10#53 -nginx.default.svc.cluster.local service = 10 50 0 web-1.ub.default.svc.cluster.local. -nginx.default.svc.cluster.local service = 10 50 0 web-0.ub.default.svc.cluster.local. +nginx.default.svc.cluster.local service = 10 50 0 web-1.ub.default.svc.cluster.local. +nginx.default.svc.cluster.local service = 10 50 0 web-0.ub.default.svc.cluster.local. ``` ## Updating a PetSet diff --git a/docs/user-guide/replicasets.md b/docs/user-guide/replicasets.md index 2b6a767be2..3c40a47b3e 100644 --- a/docs/user-guide/replicasets.md +++ b/docs/user-guide/replicasets.md @@ -55,20 +55,20 @@ create the defined ReplicaSet and the pods that it manages. $ kubectl create -f frontend.yaml replicaset "frontend" created $ kubectl describe rs/frontend -Name: frontend -Namespace: default -Image(s): gcr.io/google_samples/gb-frontend:v3 -Selector: tier=frontend,tier in (frontend) -Labels: app=guestbook,tier=frontend -Replicas: 3 current / 3 desired -Pods Status: 3 Running / 0 Waiting / 0 Succeeded / 0 Failed +Name: frontend +Namespace: default +Image(s): gcr.io/google_samples/gb-frontend:v3 +Selector: tier=frontend,tier in (frontend) +Labels: app=guestbook,tier=frontend +Replicas: 3 current / 3 desired +Pods Status: 3 Running / 0 Waiting / 0 Succeeded / 0 Failed No volumes. Events: - FirstSeen LastSeen Count From SubobjectPath Type Reason Message - --------- -------- ----- ---- ------------- -------- ------ ------- - 1m 1m 1 {replicaset-controller } Normal SuccessfulCreate Created pod: frontend-qhloh - 1m 1m 1 {replicaset-controller } Normal SuccessfulCreate Created pod: frontend-dnjpy - 1m 1m 1 {replicaset-controller } Normal SuccessfulCreate Created pod: frontend-9si5l + FirstSeen LastSeen Count From SubobjectPath Type Reason Message + --------- -------- ----- ---- ------------- -------- ------ ------- + 1m 1m 1 {replicaset-controller } Normal SuccessfulCreate Created pod: frontend-qhloh + 1m 1m 1 {replicaset-controller } Normal SuccessfulCreate Created pod: frontend-dnjpy + 1m 1m 1 {replicaset-controller } Normal SuccessfulCreate Created pod: frontend-9si5l $ kubectl get pods NAME READY STATUS RESTARTS AGE frontend-9si5l 1/1 Running 0 1m diff --git a/docs/user-guide/replication-controller/index.md b/docs/user-guide/replication-controller/index.md index 632e73f4c7..5037b49d27 100644 --- a/docs/user-guide/replication-controller/index.md +++ b/docs/user-guide/replication-controller/index.md @@ -46,29 +46,25 @@ Check on the status of the ReplicationController using this command: ```shell $ kubectl describe replicationcontrollers/nginx -Name: nginx -Namespace: default -Image(s): nginx -Selector: app=nginx -Labels: app=nginx -Replicas: 3 current / 3 desired -Pods Status: 0 Running / 3 Waiting / 0 Succeeded / 0 Failed +Name: nginx +Namespace: default +Image(s): nginx +Selector: app=nginx +Labels: app=nginx +Replicas: 3 current / 3 desired +Pods Status: 0 Running / 3 Waiting / 0 Succeeded / 0 Failed Events: - FirstSeen LastSeen Count From -SubobjectPath Reason Message - Thu, 24 Sep 2015 10:38:20 -0700 Thu, 24 Sep 2015 10:38:20 -0700 1 -{replication-controller } SuccessfulCreate Created pod: nginx-qrm3m - Thu, 24 Sep 2015 10:38:20 -0700 Thu, 24 Sep 2015 10:38:20 -0700 1 -{replication-controller } SuccessfulCreate Created pod: nginx-3ntk0 - Thu, 24 Sep 2015 10:38:20 -0700 Thu, 24 Sep 2015 10:38:20 -0700 1 -{replication-controller } SuccessfulCreate Created pod: nginx-4ok8v + FirstSeen LastSeen Count From SubobjectPath Reason Message + Thu, 24 Sep 2015 10:38:20 -0700 Thu, 24 Sep 2015 10:38:20 -0700 1 {replication-controller } SuccessfulCreate Created pod: nginx-qrm3m + Thu, 24 Sep 2015 10:38:20 -0700 Thu, 24 Sep 2015 10:38:20 -0700 1 {replication-controller } SuccessfulCreate Created pod: nginx-3ntk0 + Thu, 24 Sep 2015 10:38:20 -0700 Thu, 24 Sep 2015 10:38:20 -0700 1 {replication-controller } SuccessfulCreate Created pod: nginx-4ok8v ``` Here, 3 pods have been made, but none are running yet, perhaps because the image is being pulled. A little later, the same command may show: ```shell -Pods Status: 3 Running / 0 Waiting / 0 Succeeded / 0 Failed +Pods Status: 3 Running / 0 Waiting / 0 Succeeded / 0 Failed ``` To list all the pods that belong to the rc in a machine readable form, you can use a command like this: diff --git a/docs/user-guide/secrets/index.md b/docs/user-guide/secrets/index.md index 5ff2ef6a75..d5b19afd58 100644 --- a/docs/user-guide/secrets/index.md +++ b/docs/user-guide/secrets/index.md @@ -71,17 +71,17 @@ NAME TYPE DATA AGE db-user-pass Opaque 2 51s $ kubectl describe secrets/db-user-pass -Name: db-user-pass -Namespace: default -Labels: -Annotations: +Name: db-user-pass +Namespace: default +Labels: +Annotations: -Type: Opaque +Type: Opaque Data ==== -password.txt: 13 bytes -username.txt: 6 bytes +password.txt: 13 bytes +username.txt: 6 bytes ``` Note that neither `get` nor `describe` shows the contents of the file by default. diff --git a/editdocs.md b/editdocs.md index 0a5ff53c88..331c526bd4 100644 --- a/editdocs.md +++ b/editdocs.md @@ -9,15 +9,15 @@ title: Contributing to the Kubernetes Documentation var forwarding=window.location.hash.replace("#",""); $( document ).ready(function() { if(forwarding) { - $("#generalInstructions").hide(); - $("#continueEdit").show(); - $("#continueEditButton").text("Edit " + forwarding); - $("#continueEditButton").attr("href", "https://github.com/kubernetes/kubernetes.github.io/edit/master/" + forwarding) - $("#viewOnGithubButton").text("View " + forwarding + " on GitHub"); - $("#viewOnGithubButton").attr("href", "https://github.com/kubernetes/kubernetes.github.io/tree/master/" + forwarding) + $("#generalInstructions").hide(); + $("#continueEdit").show(); + $("#continueEditButton").text("Edit " + forwarding); + $("#continueEditButton").attr("href", "https://github.com/kubernetes/kubernetes.github.io/edit/master/" + forwarding) + $("#viewOnGithubButton").text("View " + forwarding + " on GitHub"); + $("#viewOnGithubButton").attr("href", "https://github.com/kubernetes/kubernetes.github.io/tree/master/" + forwarding) } else { $("#generalInstructions").show(); - $("#continueEdit").hide(); + $("#continueEdit").hide(); } });