* Greatly expanded custom resoure concept guide
Added section on how to decide if you need a custom resource or not.
Added section on how to decide if you want CRD or AA.
* Converted HTML tables to Markdown
* Add links, clean up first table
* configmap vs UDR
* ease of use comparison
* Advanced features
* More cleanup
* Addressed review comments.
* Move lists out of table cells
Attempt at making the left sidebar for /docs/reference more useful, I've got
some more sidebar improvements I'm saving for other PRs for this area.
Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
The link in the sample command "kubectl apply" pointed to a YAML file that was rendered wrongly. I replaced the problem link to a link to the same file on git, which avoids the rendering issue.
https://github.com/kubernetes/website/issues/6377
I added the clusterrolebinding command to the "Adding a cluster to a federation" section, plus I cleaned up the section to remove redundant text, and turned the instructions into a numbered list.
The configuration values section only mentions liveness probes which is confusing for the reader. Additionally liveness and readiness probes behave differently if they time out. Readiness probe will not restart the Pod but the documentation looks like it would.
For new readers without a detailed understanding of how deletion occurs, specifying foreground deletion first gives the needed context to understand what background deletion is eschewing.
* Update PodAffinity/PodAntiAffinity Use-Case
Updated PodAffinity use-case to reflect use of PodAntiAffinity. Under the previous Redis deployment manifest, each replica is not guaranteed its own node.
* add podAntiAffinity to web-server spec use-case
* Additional changes to PodAffinity/PodAntiAffinity Use-Case
Renames
Concepts → Extending the Kubernetes API
to
Concepts → Extending Kubernetes
Adds in subsections
Adds concept guides for other (non-API) extensions.
Subsequent commits will add an overview for all the ways to extend kubernetes,
hence the subsections in this commit.
Google Cloud has a new feature called "Open in Cloud Shell" which supports invoking a URL that auto-starts a cloud shell session (via in-browser ssh to an auto-provisioned VM) with an auto-cloned repo specified in the URL.
* Update maximum cluster size guidance
This document was published when v1.3 was the prevailing k8s version. This change provides newer guidance with respect to using large clusters.
* Update federation.md
Add documentation of all OpenStack provider options including an
indication as to which items are required versus optional and which
configuration blocks they must appear in.
Also adds a section detailing which services are required/expected by
the OpenStack provider implementation.
https://github.com/kubernetes/website/issues/5980
* Update install-kubectl.md
Zsh is not only oh-my-zsh, so I added universal configuration for zsh that also can be used in prezto.
* fix merge error after rebase
* add info about VMware NSX-T CNI plugin
Hello,
I'm VMware Networking and Security Architect and would like to include short information about our CNI plugin implementation similar to what other vendors did
Best regards
Emil Gagala
* Update networking.md
* Update networking.md
* Update networking.md
* static-pod example bad format in the final page
* static-pod example bad format in the final page
* static-pod example bad format in the final page
* static-pod example bad format in the final page
* static-pod example bad format in the final page
* Fixes issue #5620
Signed-off-by: Brad Topol <btopol@us.ibm.com>
* Restructured so that review process is for both current and upcoming
releases. Added content describing the use of tech reviewers.
* Removed incorrect Kubernetes reviewer link.
* Fixed tech reviewer URL to now use website
- chinese isn't understood for keys in YAML frontmatter in jekyll, so
replaced it with the english equivalent that doesn't throw the
following error on rendering:
Error reading file src/kubernetes.github.io/cn/docs/concepts/cluster-administration/device-plugins.md: (<unknown>): could not find expected ':' while scanning a simple key at line 4 column 1
This is kind of jarring / missing an article. I'm guessing it should either be ' to a rack of bare metal servers.' or '...to racks of bare metal servers.'.
This document is very good, but it does not mention anywhere how a node would obtain its own Pod CIDR when setting up static pod routing on something like bare metal.
I also think the kube-proxy section on this page should include *--cluster-cidr* in the "arguments to consider" area. I say should because I'm not confident that I'm right. If I omitted --cluster-cidr from the kube-proxy and controller manager, and found that my pod routing didn't work, adding the switch would be one of the first things I'd try.
The doc asks users to use `ps` command inside the nginx container, when
ps is not installed inside the container. So this commit adds that
command to install ps.
* change some chinese expression
* change some chinese expression
* Update cpu-memory-limit.md
* change some chinese expression
change some chinese expression
* Adding all files for BlaBlaCar case study
* Update blablacar.html
* 3 updated listings for partner page
* Revert "Update blablacar.html"
This reverts commit 73c21d64c56d3f2038530d66da8428f67d26ad76.
* Revert "Adding all files for BlaBlaCar case study"
This reverts commit d53523f21411ba28fe59e9d30e1169777e4c84f3.
* Adding all files for BlaBlaCar case study
* Adding KubeCon banners to community page and homepage
* Revert "Adding all files for BlaBlaCar case study"
This reverts commit d53523f21411ba28fe59e9d30e1169777e4c84f3.
Removing case study commit from branch
* Update index.html
The current Fine Job Queue page refers to a one-pod-per-job setup in the intro content (as in the Coarse Job Queue Page) but then proceeds to talk about a multiple jobs per pod setup. I've edited the intro content to reflect that.
* Removed unessary caracters when outputing the CA key hash using openssl
Removed unessary caracters when outputing the CA key hash using openssl.
* Changed CA key gathering cmd
Changed CA key gathering cmd to make it comatible with different versions of openssl
Update flannel script to use latest version.
1. It is fully compatible with previous versions (see [Release Notes](https://github.com/coreos/flannel/releases))
2. `kube-flannel-rbac.yml` was merged to `kube-flannel.yml`
* initial version of how to develop and debug locally with telepresence
* minor fixups
* add overview, prereq, steps blocks
* add whatsnext capture
* remove further reading header
* incorporate feedback from @radhikapc
* incorporate more feedback
1. There is no flag called `--trust-ca-file` in etcd and i presume it is `--trusted-ca-file`
2. Using the same key and cert peer.key and peer.cert for both peer communication and client communication, confuses user. So differentiated it.
* explain how to enable heapster on minikube
The docs which ask user to see if heapster is running,
this commit adds explanation of how you can enable heapster
on minikube Kubernetes cluster.
* Update assign-cpu-resource.md
* Update assign-memory-resource.md
For the 1.8.0 release, we found that kubeadm was enabling certificate
rotation, but didn't properly add the RBAC bindings to allow the new
CSRs to get auto-approved. As a stop-gap, we documented how to manually
approve these CSRs as part of the upgrade, but this change is to trade
those instructions for actually creating an RBAC binding to allow the
auto-approval to happen.
This has the added benefit that when certificates start to expire and
need to be rotated, the approval will be automatic, unlike the previous
one-off solution.
* Update docs/admin/kubeadm.md (mostly 1.8 related).
This is Fabrizio's work, which I'm committing along with my edits (in a commit on top of this).
* A few of my own edits to clarify and clean up some Markdown.
- The kubelet upgrade instructions should be done on every host, not
just worker nodes.
- We should just upgrade all packages, instead of calling out kubelet
specifically. This will also upgrade kubectl, kubeadm, and
kubernetes-cni, if installed.
- Draining nodes should also ignore daemonsets, and master errors can be
ignored.
- Make sure that the new kubeadm download is chmoded correctly.
- Add a step to run `kubeadm version` to verify after downloading.
- Manually approve new kubelet CSRs if rotation is enabled (known issue).
* Fix typo in pod preset conflict example
Move container port definition to the correct line.
* Highlight openstack-heat provider deprecation
The openstack-heat provider for kube-up is being deprecated and will be
removed in a future release.
* Link to using kubeadm page
* fix the command output
fix the command output
* fix typo in api/resources reference: "Worloads"
* Add documentation for certificate rotation.
* 'master' of https://github.com/kubernetes/kubernetes.github.io: (87 commits)
fix envFrom in configmap
Add link to example for CRDs (#5641)
Fixed links to architecture.md and principles.md
Polish AppArmor tutorial
Remove dangling files related to apparmor
fix the typo of serviceaccount (#5533)
Correct setup link (#5634)
relink the persistent volume of petset (#5582)
Updates to case study landing page (#5629)
translate doc resource-quotas into chinese
minor encoding fix for CN page
fix typo
concepts-overview-components+abac-fix
concepts-overview-components-fix
Update links to avoid redirects. (#5627)
Update links to avoid redirects. (#5625)
Fix 404s. (#5624)
Fix 404s. (#5623)
Edits cpu-constraint-namespace.md
Fix index redirects (#5502)
...
# Conflicts:
# _redirects
# docs/concepts/storage/volumes.md
# docs/concepts/workloads/controllers/daemonset.md
# docs/concepts/workloads/controllers/petset.md
# docs/concepts/workloads/controllers/statefulset.md
# docs/tasks/run-application/run-single-instance-stateful-application.md
# docs/tutorials/stateful-application/zookeeper.md
* Add local ephemeral storage alpha feature in managing compute resource
Since 1.8, we add the local ephemeral storage alpha feature as one
resource type to manage. Add this feature into the doc.
* Update manage-compute-resources-container.md
* Update manage-compute-resources-container.md
* Update manage-compute-resources-container.md
* Update manage-compute-resources-container.md
* Update manage-compute-resources-container.md
* Update manage-compute-resources-container.md
* Revamped concepts doc for ReplicaSet
* Minor changes to call out specific versions for selector defaulting and
immutability
* Addressed doc review comments
* 'master' of https://github.com/kubernetes/kubernetes.github.io:
ZTE-SH-CN-debug-pod-replication-controller-2017-09-14-14
ZTE-SH-CN-define-command-argument-container (#5381)
Update index.md
Update Kompose docs
Improve host aliases page (#5443)
Add link to AlwaysPullImages admission controller
Revert "create homepage for user journeys"
create homepage for user journeys
fix the command output
ZTE-SH-CN-run-application-run-single-instance-stateful-application-pr-2017-… (#5363)
Add a note to static pod manifest scanning
revert WordPress and MySQL PV doc changes to use apps/v1beta2 APIs (#5461)
Fix pod probes yaml file
Redirect v1 docs. (#5460)
Fix error link (#5459)
Fix typo in deployment documentation
# Conflicts:
# docs/tutorials/stateful-application/basic-stateful-set.md
- Made a couple of minor wording changes (not strictly 1.8 related).
- Did some reformatting (not strictly 1.8 related).
- Updated references to the default token TTL (was infinite, now 24 hours).
- Documented the new `--discovery-token-ca-cert-hash` and `--discovery-token-unsafe-skip-ca-verification` flags for `kubeadm join`.
- Added references to the new `--discovery-token-ca-cert-hash` flag in all the default examples.
- Added a new _Security model_ section that describes the security tradeoffs of the various discovery modes.
- Documented the new `--groups` flag for `kubeadm token create`.
- Added a note of caution under _Automating kubeadm_ that references the _Security model_ section.
- Updated the component version table to drop 1.6 and add 1.8.
- Update `_data/reference.yml` to try to get the sidebar fixed up and more consistent with `kubefed`.
* Noted limitation of alpha static cpumanager.
* Updated CPU manager docs to match implementation.
- Removed references to CPU pressure node condition and evictions.
- Added note about new --cpu-manager-reconcile-period flag.
- Added note about node allocatable requirements for static policy.
- Noted limitation of alpha static cpumanager.
* Move cpu-manager task link to rsc mgmt section.
* 'master' of https://github.com/kubernetes/kubernetes.github.io: (23 commits)
concepts/configuration/manage-compute-resources-container.md: fix a conversion (#4952)
Update authentication.md (#5281)
Update static-pod.md for consistency
Space needed before list in kramdown.
Update downward-api-volume-expose-pod-information.md
fix the command output
fix the command output
fix the command output
fix the command output
fix the command output
Fix CRD page typo
fix 404 page
Update binary_release.md
Update disruptions.md
fix the command output
fix typo
fix the command output
Fix curl does not work in zsh
use the term 'node' for consistency
fix typo
...
* 'master' of https://github.com/kubernetes/kubernetes.github.io:
Update photon-controller.md (#5279)
add back Zach and Steve to PR assignment
fix the command output
Update troubleshooting.md
Update guaranteed-scheduling-critical-addon-pods.md
Include filename fix (#5139)
k8s-tutorials-stateful-application (#5112)
Update gce.md (#5163)
Update stage-documentation-changes.md (#5213)
fix the command output
Fix token-authentication-file internal link
* 'master' of https://github.com/kubernetes/kubernetes.github.io: (32 commits)
Fixed broken link to Pods concept documentation (#5223)
Update some docs in /cn/docs (#4842)
Update deployment.md
fix the command output
Translate into chinese about NetworkPolicy
rootsongjc-pr-20170815
fix typo
fix the command output
Translate into chinese about GPU
index-pr-2017-08-15
Example links use kubernetes/examples
Make caret for version drop-down more visible
fix typo:ConfigMap
fix the command output
Fixed incorrect links for YAML files
Clean up the index page.
Remove broken link.
Update pod names to match what's in the spec.
Update daemonset.md
Update configure-aggregation-layer.md
...
* 'master' of https://github.com/kubernetes/kubernetes.github.io:
fix noindex for vnext-staging (#4640)
Add network overlay details to cloud routes flag
Revert "Update volumes.md"
add examples for interpod configurations (#4557)
Update "readonly" in abac
> NOTE: Please check the “Allow edits from maintainers” box (see image below) to
> [allow reviewers to fix problems](https://help.github.com/articles/allowing-changes-to-a-pull-request-branch-created-from-a-fork/) on your patch and speed up the review process.
>
> Please delete this note before submitting the pull request.
>
> NOTE: After opening the PR, please *un-check and re-check* the "Allow edits from maintainers" box. This is a temporary workaround to address a known issue with GitHub.

@@ -9,7 +9,7 @@ These are just guidelines, not rules. Use your best judgment, and feel free to p
### Code of Conduct
Kubernetes follows the [Cloud Native Computing Foundation (CNCF) Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to Sarah Novotny[sarahnovotny@google.com](mailto:sarahnovotny@google.com) and/or Dan Kohn[dan@linuxfoundation.org](mailto:dan@linuxfoundation.org).
Kubernetes follows the [Cloud Native Computing Foundation (CNCF) Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to Sarah Novotny[sarahnovotny@google.com](mailto:sarahnovotny@google.com) and/or Dan Kohn[dan@linuxfoundation.org](mailto:dan@linuxfoundation.org).
### Documentation and Site Decisions
@@ -17,7 +17,7 @@ The [Kubernetes SIG Docs Discussion Group](https://groups.google.com/forum/#!for
### Style Guides and Templates
Before submitting a pull request to create new content, please review the [Kubernetes.io style guide](http://kubernetes.io/docs/home/contribute/style-guide/) and follow the [instructions for using page templates](http://kubernetes.io/docs/home/contribute/page-templates/).
Before submitting a pull request to create new content, please review the [Kubernetes.io style guide](http://kubernetes.io/docs/home/contribute/style-guide/) and follow the [instructions for using page templates](http://kubernetes.io/docs/home/contribute/page-templates/).
## Contributing to Documentation
@@ -26,10 +26,10 @@ Before submitting a pull request to create new content, please review the [Kuber
Kubernetes.io uses github issues to track documentation issues and requests. If you see a documentation issue, submit an issue using the following steps:
1. Check the [kubernetes.io issues list](https://github.com/kubernetes/kubernetes.github.io/issues) as you might find out the issue is a duplicate.
2. Use the [included template for every new issue](https://github.com/kubernetes/kubernetes.github.io/issues/new). When you create a bug report, include as many details as possible and include suggested fixes to the issue.
1. Check the [kubernetes.io issues list](https://github.com/kubernetes/website/issues) as you might find out the issue is a duplicate.
2. Use the [included template for every new issue](https://github.com/kubernetes/website/issues/new). When you create a bug report, include as many details as possible and include suggested fixes to the issue.
Note that code issues should be filed against the main kubernetes repository, while documentation issues should go in the kubernetes.io repository.
Note that code issues should be filed against the main kubernetes repository, while documentation issues should go in the kubernetes.io repository.
@@ -4,6 +4,8 @@ Welcome! We are very pleased you want to contribute to the Kubernetes documentat
You can click the **Fork** button in the upper-right area of the screen to create a copy of this repository in your GitHub account called a *fork*. Make any changes you want in your fork, and when you are ready to send those changes to us, go to your fork and create a new pull request to let us know about it.
Once your pull request is created, a Kubernetes reviewer will take responsibility for providing clear, actionable feedback. As the owner of the pull request, **it is your responsibility to modify your pull request to address the feedback that has been provided to you by the Kubernetes reviewer.** Also note that you may end up having more than one Kubernetes reviewer provide you feedback or you may end up getting feedback from a Kubernetes reviewer that is different than the one originally assigned to provide you feedback. Furthermore, in some cases, one of your reviewers might ask for a technical review from a [Kubernetes tech reviewer](https://github.com/kubernetes/website/wiki/Tech-reviewers) when needed. Reviewers will do their best to provide feedback in a timely fashion but response time can vary based on circumstances.
For more information about contributing to the Kubernetes documentation, see:
* [Contributing to the Kubernetes Documentation](http://kubernetes.io/editdocs/)
Required. One or two lines that provide a minimum definition. Do not repeat the term. Write about the plural of the term. Prefer fragments. Model after tooltips. End with a period.
long-description:|
Optional. Longer additional text to appear after (in conjunction with) short description. Provide where the short description is not sufficient as the intro paragraph to a topic. Write complete but concise sentences.
short-description:>
Required.
Markdown allowed (e.g. for cross-linking).
One or two lines that provide a minimum definition.
Do not repeat the term.
Prefer fragments.
End with a period.
long-description:>
Optional.
Markdown allowed.
Longer additional text to appear after (in conjunction with) short description.
Provide where the short description is not sufficient as the intro paragraph to a topic.
Write complete but concise sentences.
**See /_includes/templates/glossary/README.md for the official style guide.**
A key-value pair that is used to attach arbitrary non-identifying metadata to objects.
long-description:>
The metadata in an annotation can be small or large, structured or unstructured, and can include characters not permitted by labels. Clients such as tools and libraries can retrieve this metadata.
A person who can review and approve Kubernetes code contributions.
long-description:>
While code review is focused on code quality and correctness, approval is focused on the holistic acceptance of a contribution.
Holistic acceptance includes backwards/forwards compatibility, adhering to API and flag conventions, subtle performance and correctness issues, interactions with other parts of the system, and others.
Approver status is scoped to a part of the codebase.
Terms under which a {% glossary_tooltip text="contributor" term_id="contributor" %} grants a license to an open source project for their contributions.
long-description:>
CLAs help resolve legal disputes involving contributed material and intellectual property (IP).
A person who develops and contributes code to the Kubernetes open source codebase.
long-description:>
They are also an active {% glossary_tooltip text="community member" term_id="member" %} who participates in one or more {% glossary_tooltip text="Special Interest Groups (SIGs)" term_id="sig" %}.
An API object used to store non-confidential data in key-value pairs. Can be consumed as environment variables, command-line arguments, or config files in a {% glossary_tooltip text="volume" term_id="volume" %}.
long-description:>
Allows you to decouple environment-specific configuration from your {% glossary_tooltip text="container images" term_id="container" %}, so that your applications are easily portable.
When storing confidential data use a [Secret](https://kubernetes.io/docs/concepts/configuration/secret/).
A lightweight and portable executable image that contains software and all of its dependencies.
long-description:>
Containers decouple applications from underlying host infrastructure to make deployment easier in different cloud or OS environments, and for easier scaling.
Someone who donates code, documentation, or their time to help the Kubernetes project or community.
long-description:>
Contributions include pull requests (PRs), issues, feedback, {% glossary_tooltip text="special interest groups (SIG)" term_id="sig" %} participation, or organizing community events.
May refer to: code in the Kubernetes ecosystem that depends upon the core Kubernetes codebase or a forked repo.
long-description:|
* In the **Kubernetes Community**: Conversations often use *downstream* to mean the ecosystem, code, or third-party tools that rely on the core Kubernetes codebase. For example, a new feature in Kubernetes may be adopted by applications *downstream* to improve their functionality.
* In **GitHub** or **git**: The convention is to refer to a forked repo as *downstream*, whereas the source repo is considered *upstream*.
A package of pre-configured Kubernetes resources that can be managed with the Helm tool.
long-description:|
Charts provide a reproducible way of creating and sharing Kubernetes applications.
A single chart can be used to deploy something simple, like a memcached Pod, or something complex, like a full web app stack with HTTP servers, databases, caches, and so on.
Stored instance of a container that holds a set of software needed to run an application.
long-description:>
A way of packaging software that allows it to be stored in a container registry, pulled to a local system, and run as an application. Meta data is included in the image that can indicate what executable to run, who built it, and other information.
An open platform (not Kubernetes-specific) that provides a uniform way to integrate microservices, manage traffic flow, enforce policies, and aggregate telemetry data.
long-description:>
Adding Istio does not require changing application code.
It is a layer of infrastructure between a service and the network, which when combined with service deployments, is commonly referred to as a service mesh.
Istio's control plane abstracts away the underlying cluster management platform, which may be Kubernetes, Mesosphere, etc.
Creates one or more {% glossary_tooltip term_id="pod" %} objects and ensures that a specified number of them successfully terminate. As Pods successfully complete, the Job tracks the successful completions.
A CLI tool that helps you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes clusters. *NOTE: Officially supports AWS only, with GCE and VMware vSphere in alpha*.
long-description:|
`kops` provisions your cluster with:
* Fully automated installation
* DNS-based cluster identification
* Self-healing: everything runs in Auto-Scaling Groups
* Limited OS support (Debian preferred, Ubuntu 16.04 supported, early support for CentOS & RHEL)
* High availability (HA) support
* The ability to directly provision, or generate terraform manifests
You can also build your own cluster using {% glossary_tooltip term_id="kubeadm" %} as a building block. `kops` builds on the kubeadm work.
An agent that runs on each node in the cluster. It makes sure that containers are running in a pod.
long-description:>
The kubelet takes a set of PodSpecs that are provided through various mechanisms and ensures that the containers described in those PodSpecs are running and healthy. The kubelet doesn’t manage containers which were not created by Kubernetes.
A highly experienced {% glossary_tooltip text="contributor" term_id="contributor" %}, active in multiple areas of Kubernetes, who has cross-area ownership and write access to a project's GitHub repository.
long-description:>
Maintainers work holistically across the project to maintain its health and success and have made substantial contributions, both through code development and broader organizational efforts.
A software offering maintained by a third-party provider.
long-description:>
Some examples of Managed Services are AWS EC2, Azure SQL Database, and GCP Pub/Sub, but they can be any software offering that can be used by an application.
[Service Catalog](/docs/concepts/service-catalog/) provides a way to list, provision, and bind with Managed Services offered by {% glossary_tooltip text="Service Brokers" term_id="service-broker" %}.
A continuously active {% glossary_tooltip text="contributor" term_id="contributor" %} in the K8s community.
long-description:>
Members can have issues and PRs assigned to them and participate in {% glossary_tooltip text="special interest groups (SIGs)" term_id="sig" %} through GitHub teams.
Pre-submit tests are automatically run for members' PRs.
A member is expected to remain an active contributor to the community.
An abstraction used by Kubernetes to support virtual clusters on the same physical {% glossary_tooltip term_id="cluster" %}.
long-description:>
Namespaces are used to organize objects in a cluster and provide a way to divide cluster resources. Names of resources need to be unique within a namespace, but not across namespaces.
A specification of how groups of Pods are allowed to communicate with each other and with other network endpoints.
long-description:>
Network Policies help you declaratively configure which Pods are allowed to connect to each other, which namespaces are allowed to communicate, and more specifically which port numbers to enforce each policy on. `NetworkPolicy` resources use labels to select Pods and define rules which specify what traffic is allowed to the selected Pods. Network Policies are implemented by a supported network plugin provided by a network provider. Be aware that creating a network resource without a controller to implement it will have no effect.
A worker machine may be a VM or physical machine, depending on the cluster. It has the {% glossary_tooltip text="Services" term_id="service" %} necessary to run {% glossary_tooltip text="Pods" term_id="pod" %} and is managed by the master components. The {% glossary_tooltip text="Services" term_id="service" %} on a node include Docker, kubelet and kube-proxy.
A person who customizes the Kubernetes platform to fit the needs of their project.
long-description:>
A platform developer may, for example, use [Custom Resources](/docs/concepts/api-extension/custom-resources/) or [Extend the Kubernetes API with the aggregation layer](/docs/concepts/api-extension/apiserver-aggregation/) to add functionality to their instance of Kubernetes, specifically for their application. Some Platform Developers are also {% glossary_tooltip text="contributors" term_id="contributor" %} and develop extensions which are contributed to the Kubernetes community. Others develop closed-source commercial or site-specific extensions.
Enables fine-grained authorization of {% glossary_tooltip term_id="pod" %} creation and updates.
long-description:>
A cluster-level resource that controls security sensitive aspects of the Pod specification.
The `PodSecurityPolicy` objects define a set of conditions that a Pod must run with in order to be accepted into the system, as well as defaults for the related fields.
Pod Security Policy control is implemented as an optional admission controller.
The smallest and simplest Kubernetes object. A Pod represents a set of running {% glossary_tooltip text="containers" term_id="container" %} on your cluster.
long-description:>
A Pod is typically set up to run a single primary container.
It can also run optional sidecar containers that add supplementary features like logging.
Pods are commonly managed by a {% glossary_tooltip term_id="deployment" %}.
ReplicaSet is the next-generation Replication Controller.
long-description:>
ReplicaSet, like ReplicationController, ensures that a specified number of pods replicas are running at one time.
ReplicaSet supports the new set-based selector requirements as described in the labels user guide, whereas a Replication Controller only supports equality-based selector requirements.
Kubernetes service that ensures a specific number of instances of a pod are always running.
long-description:>
Will automatically add or remove running instances of a pod, based on a set value for that pod. Allows the pod to return to the defined number of instances if pods are deleted or if too many are started by mistake.
Provides constraints that limit aggregate resource consumption per {% glossary_tooltip term_id="namespace" %}.
long-description:>
Limits the quantity of objects that can be created in a namespace by type, as well as the total amount of compute resources that may be consumed by resources in that project.
Stores sensitive information, such as passwords, OAuth tokens, and ssh keys.
long-description:>
Allows for more control over how sensitive information is used and reduces the risk of accidental exposure, including [encryption](https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/#ensure-all-secrets-are-encrypted) at rest.
A {% glossary_tooltip text="Pod" term_id="pod" %} references the secret as a file in a volume mount or by the kubelet pulling images for a pod.
Secrets are great for confidential data and [ConfigMaps](https://kubernetes.io/docs/tasks/configure-pod-container/configmap/) for non-confidential data.
The securityContext field defines privilege and access control settings for a Pod or Container, including the runtime UID and GID.
long-description:>
The securityContext field in a {% glossary_tooltip term_id="pod" %} (applying to all containers) or container is used to set the user (runAsUser) and group (fsGroup), capabilities, privilege settings, and security policies (SELinux/AppArmor/Seccomp) that container processes use.
Provides an identity for processes that run in a Pod {% glossary_tooltip text="Pods" term_id="pod" %}.
long-description:>
When processes inside Pods access the cluster, they are authenticated by the API server as a particular service account, for example,`default`. When you create a Pod, if you do not specify a service account, it is automatically assigned the default service account in the same namespace {% glossary_tooltip text="Namespace" term_id="namespace" %}.
An endpoint for a set of {% glossary_tooltip text="Managed Services" term_id="managed-service" %} offered and maintained by a third-party.
long-description:>
{% glossary_tooltip text="Service Brokers" term_id="service-broker" %} implement the [Open Service Broker API spec](https://github.com/openservicebrokerapi/servicebroker/blob/v2.13/spec.md) and provide a standard interface for applications to use their Managed Services.
[Service Catalog](/docs/concepts/service-catalog/) provides a way to list, provision, and bind with Managed Services offered by Service Brokers.
An extension API that enables applications running in Kubernetes clusters to easily use external managed software offerings, such as a datastore service offered by a cloud provider.
long-description:>
Service Catalog provides a way to list, provision, and bind with external {% glossary_tooltip text="Managed Services" term_id="managed-service" %} from {% glossary_tooltip text="Service Brokers" term_id="service-broker" %} without needing detailed knowledge about how those services are created or managed.
An API object that describes how to access applications, such as a set of {% glossary_tooltip text="Pods" term_id="pod" %}, and can describe ports and load-balancers.
long-description:>
The access point can be internal or external to the cluster.
{% glossary_tooltip text="Community members" term_id="member" %} who collectively manage an ongoing piece or aspect of the larger Kubernetes open source project.
long-description:|
Members within a SIG have a shared interest in advancing a specific area, such as architecture, API machinery, or documentation.
SIGs must follow the [SIG Governance](https://github.com/kubernetes/community/blob/master/sig-governance.md) guidelines but can have their own contribution policy and channels of communication.
For more information, see the [kubernetes/community](https://github.com/kubernetes/community) repo and the current list of [SIGs and Working Groups](https://github.com/kubernetes/community/blob/master/sig-list.md).
Manage the deployment and scaling of a set of Pods, *and provide guarantees about ordering*. They do so by maintaining a *unique*, sticky identity for each of their Pods.
- core-object
- workload
- storage
short-description:>
Manages the deployment and scaling of a set of {% glossary_tooltip text="Pods" term_id="pod" %}, *and provides guarantees about the ordering and uniqueness* of these Pods.
long-description:|
Like Deployments, StatefulSets manage Pods that are based on an identical container spec. However, although their specs are the same, the Pods in a StatefulSet are not interchangeable. Each Pod has a persistent identifier that it maintains across any rescheduling.
Like a {% glossary_tooltip term_id="deployment" %}, a StatefulSet manages Pods that are based on an identical container spec. Unlike a Deployment, a StatefulSet maintains a sticky identity for each of their Pods. These pods are created from the same spec, but are not interchangeable: each has a persistent identifier that it maintains across any rescheduling.
StatefulSets also operate according to the Controller pattern. You define your desired state in a StatefulSet *object*, and the StatefulSet *controller* makes any necessary updates to the get there from the current state.
A StatefulSet operates under the same pattern as any other Controller. You define your desired state in a StatefulSet *object*, and the StatefulSet *controller* makes any necessary updates to get there from the current state.
May refer to: core Kubernetes or the source repo from which a repo was forked.
long-description:|
* In the **Kubernetes Community**: Conversations often use *upstream* to mean the core Kubernetes codebase, which the general ecosystem, other code, or third-party tools relies upon. For example, [community members](#term-member) may suggest that a feature is moved upstream so that it is in the core codebase instead of in a plugin or third-party tool.
* In **GitHub** or **git**: The convention is to refer to a source repo as *upstream*, whereas the forked repo is considered *downstream*.
Facilitates the discussion and/or implementation of a short-lived, narrow, or decoupled project for a committee, {% glossary_tooltip text="SIG" term_id="sig" %}, or cross-SIG effort.
long-description:|
Working groups are a way of organizing people to accomplish a discrete task, and are relatively easy to create and deprecate when inactive.
For more information, see the [kubernetes/community](https://github.com/kubernetes/community) repo and the current list of [SIGs and working groups](https://github.com/kubernetes/community/blob/master/sig-list.md).
blurb:'Tectonic is the enterprise-ready Kubernetes product, by CoreOS. It adds key features to allow you to manage, update, and control clusters in production.'
},
{
type:2,
name:'StackPointCloud',
logo:'stackpoint',
link:'https://stackpoint.io',
blurb:'StackPointCloud builds Stackpoint.io, the universal control plane for Kubernetes Anywhere -- compose and build your own infrastructure as easily as a DigitalOcean droplet at any public cloud provider.'
blurb:'Container native monitoring with deep support for Kubernetes.'
blurb:'Sysdig is the container intelligence company. Sysdig has created the only unified platform to deliver monitoring, security, and troubleshooting in a microservices-friendly architecture.'
},
{
type:0,
@@ -44,32 +30,11 @@
},
{
type:0,
name:'Weave Works',
name:'Weaveworks',
logo:'weave_works',
link:' https://weave.works/kubernetes',
blurb:'Weaveworks enables Developers and Dev/Ops teams to easily connect, deploy, secure, manage, and troubleshoot microservices in Kubernetes.'
blurb:'The Canonical Distribution of Kubernetes enables you to operate Kubernetes clusters on demand on any major public cloud and private infrastructure.'
},
{
type:0,
name:'Distelli',
@@ -153,54 +104,61 @@
logo:'diamanti',
link:'https://www.diamanti.com/products/',
blurb:'Diamanti deploys containers with guaranteed performance using Kubernetes in the first hyperconverged appliance purpose built for containerized applications.'
},
{
type:0,
name:'Apprenda',
logo:'apprenda',
link:'https://apprenda.com/kubernetes-support/',
blurb:'Apprenda creates and supports modern, enterprise-ready application platforms for both cloud native and traditional application workloads.'
},
},
{
type:0,
name:'Aporeto',
logo:'aporeto',
link:'https://aporeto.com/trireme',
blurb:'Aporeto makes cloud-native applications secure by default without impacting developer velocity and works at any scale, on any cloud.'
},
},
{
type:2,
name:'Giant Swarm',
logo:'giant_swarm',
link:'https://giantswarm.io',
blurb:'Giant Swarm provides fully-managed Kubernetes Clusters in your location of choice, so you can focus on your product.'
blurb:'Mirantis builds and manages private clouds with open source software such as OpenStack, deployed as containers orchestrated by Kubernetes.'
},
{
type:0,
name:'Kubernetic',
logo:'kubernetic',
link:'https://kubernetic.com/',
blurb:'Kubernetic is a Kubernetes Desktop client that simplifies and democratizes cluster management for DevOps.'
},
{
type:1,
name:'Apprenda',
logo:'apprenda',
link:'https://apprenda.com/kubernetes-support/',
blurb:'Apprenda offers flexible and wide range of support plans for pure play Kubernetes on your choice of infrastructure, cloud provider and operating system.'
blurb:'ReactiveOps has written automation on best practices for infrastructure as code on GCP & AWS using Kubernetes, helping you build and maintain a world-class infrastructure at a fraction of the price of an internal hire.'
blurb:'Tigera builds high performance, policy driven, cloud native networking solutions for Kubernetes.'
},
{
type:1,
name:'Skippbox',
logo:'skippbox',
link:'http://www.skippbox.com/services/',
blurb:'Skippbox brings its Kubernetes expertise to help companies embrace Kubernetes on their way to digital transformation. Skippbox offers both professional services and expert training.'
blurb:'The CA Continuous Delivery Director Kubernetes plugin orchestrates deployment of containerized applications within an end-to-end release pipeline.'
},
{
type:0,
@@ -359,7 +317,7 @@
},
{
type:1,
name:'codecrux web technologies pvt ltd',
name:'Codecrux web technologies pvt ltd',
logo:'codecrux',
link:'http://codecrux.com/kubernetes/',
blurb:'At CodeCrux we help your organization get the most out of Containers and Kubernetes, regardless of where you are in your journey'
blurb:'SUSE delivers Kubernetes as part of SUSE CaaS Platform and SUSE OpenStack Cloud, for enterprises that want truly open, open source solutions for cloud-native applications.'
blurb:'IBM Container Service is a managed k8s environment with built-in cluster security and isolation while leveraging services including Watson, IoT, Weather, etc.'
},
{
type:1,
name:'Kenzan',
@@ -519,12 +456,33 @@
blurb:'Kenzan is a software engineering and full-service consulting firm that provides customized, end-to-end solutions that drive change through digital transformation.'
},
{
type:0,
type:3,
name:'Kublr',
logo:'kublr',
link:'http://kublr.com',
blurb:'Simplify your Kubernetes experience with a fully production-ready, enterprise-grade cluster management platform.'
blurb:'Kublr - Accelerate and control the deployment, scaling, monitoring and management of your containerized applications.'
blurb:'We help enterprise organizations adopt DevOps, containers and cloud computing. Contino is a global consultancy that enables regulated organizations to accelerate innovation through the adoption of modern approaches to software delivery.'
},
{
type:2,
name:'Heptio',
logo:'heptio',
link:'http://heptio.com',
blurb:'Heptio helps businesses of all sizes get closer to the vibrant Kubernetes community.'
},
{
type:2,
name:'Booz Allen Hamilton',
@@ -595,16 +546,598 @@
link:'https://www.boozallen.com/',
blurb:'Booz Allen partners with public and private sector clients to solve their most difficult challenges through a combination of consulting, analytics, mission operations, technology, systems delivery, cybersecurity, engineering, and innovation expertise.'
blurb:'Provider of Digital Solutions for federal and commercial clients, to include DevSecOps, cloud platforms, transformation strategy, cognitive solutions, and UX.'
},
{
type:0,
name:'Applatix',
logo:'applatix',
link:'https://applatix.com/applatix-product/',
blurb:'Applatix helps build and run containerized apps on public cloud using Docker and Kubernetes.'
blurb:'With GitLab and Kubernetes, you can deploy a complete CI/CD pipeline with multiple environments, automatic deployments, and automatic monitoring.'
},
{
type:0,
name:'Gravitational, Inc.',
logo:'gravitational',
link:'https://gravitational.com/telekube/',
blurb:'Telekube combines Kubernetes with Teleport, our modern SSH server, so operators can remotely manage a multitude of K8s application deployments.'
blurb:'Build the Applications You Need to Drive Your Business - DEVELOP AND DEPLOY APPLICATIONS FASTER AND MORE RELIABLY.'
},
{
type:1,
name:'Infosys Technologies',
logo:'infosys',
link:'https://www.infosys.com',
blurb:'Monolithic to microservices on openshift is a offering that we are building as part of open source practice.'
},
{
type:0,
name:'JFrog',
logo:'jfrog',
link:'https://www.jfrog.com/use-cases/12584/',
blurb:'You can use Artifactory to store and manage all of your application’s container images and deploy to Kubernetes and setup a build, test, deploy pipeline using Jenkins and Artifactory. Once an image is ready to be rolled out, Artifactory can trigger a rolling-update deployment into a Kubernetes cluster without downtime – automatically!'
},
{
type:0,
name:'Navops by Univa',
logo:'navops',
link:'https://www.navops.io',
blurb:'Navops is a suite of products that enables enterprises to take full advantage of Kubernetes and provides the ability to quickly and efficiently run containers at scale.'
blurb:'SoftServe allows its clients to adopt modern application design patterns and benefit from fully integrated, highly available, cost effective Kubernetes clusters at any scale.'
blurb:'Solinea is a digital transformation consultancy that enables businesses to build innovative solutions by adopting cloud native computing.'
},
{
type:1,
name:'Sphere Software, LLC',
logo:'spheresoftware',
link:'https://sphereinc.com/kubernetes/',
blurb:'The Sphere Software team of experts allows customers to architect and implement scalable applications using Kubernetes in Google Cloud, AWS, and Azure.'
blurb:'Dynamic provisioning and persistent storage support.'
},
{
type:0,
name:'OpenEBS',
logo:'OpenEBS',
link:'https://openebs.io/',
blurb:'OpenEBS is containerized storage for containers integrated tightly into Kubernetes and based on distributed block storage and containerization of storage control. OpenEBS derives intent from K8s and other YAML or JSON such as per container QoS SLAs, tiering and replica policies, and more. OpenEBS is EBS API compliant.'
blurb:'Red Hat - OpenShift Online and OpenShift Container Platform'
},
{
type:3,
name:'Rancher',
logo:'rancher',
link:'http://rancher.com/kubernetes/',
blurb:'Rancher Inc. - Rancher Kubernetes'
},
{
type:3,
name:'Canonical',
logo:'canonical',
link:'https://www.ubuntu.com/kubernetes',
blurb:'The Canonical Distribution of Kubernetes enables you to operate Kubernetes clusters on demand on any major public cloud and private infrastructure.'
},
{
type:2,
name:'Canonical',
logo:'canonical',
link:'https://www.ubuntu.com/kubernetes',
blurb:'Canonical Ltd. - Canonical Distribution of Kubernetes'
blurb:'The IBM Bluemix Container Service combines Docker and Kubernetes to deliver powerful tools, an intuitive user experiences, and built-in security and isolation to enable rapid delivery of applications all while leveraging Cloud Services including cognitive capabilities from Watson.'
blurb:'Heptio helps businesses of all sizes get closer to the vibrant Kubernetes community.'
},
{
type:3,
name:'StackPointCloud',
logo:'stackpoint',
link:'https://stackpoint.io',
blurb:'StackPointCloud - StackPointCloud'
},
{
type:2,
name:'StackPointCloud',
logo:'stackpoint',
link:'https://stackpoint.io',
blurb:'StackPointCloud offers a wide range of support plans for managed Kubernetes clusters built through its universal control plane for Kubernetes Anywhere.'
},
{
type:3,
name:'Caicloud',
logo:'caicloud',
link:'https://caicloud.io/products/compass',
blurb:'Caicloud - Compass'
},
{
type:2,
name:'Caicloud',
logo:'caicloud',
link:'https://caicloud.io/',
blurb:'Founded by ex-Googlers,and early Kubernetes contributors, Caicloud leverages Kubernetes to provide container products which have successfully served Fortune 500 enterprises, and further utilizes Kubernetes as a vehicle to deliver ultra-speed deep learning experience.'
blurb:'FusionStage is an enterprise-grade Platform as a Service product, the core of which is based on mainstream open source container technology including Kubernetes and Docker.'
blurb:'Tectonic is the enterprise-ready Kubernetes product, by CoreOS. It adds key features to allow you to manage, update, and control clusters in production.'
blurb:'EasyStack - EasyStack Kubernetes Service (EKS)'
},
{
type:3,
name:'CoreOS',
logo:'coreos',
link:'https://coreos.com/tectonic/',
blurb:'CoreOS - Tectonic'
},
{
type:0,
name:'GoPaddle',
logo:'gopaddle',
link:'https://gopaddle.io',
blurb:'goPaddle is a DevOps platform for Kubernetes developers. It simplifies the Kubernetes Service creation and maintenance through source to image conversion, build & version management, team management, access controls and audit logs, single click provision of Kubernetes Clusters across multiple clouds from a single console.'
blurb:'VEXXHOST offers a high-performance container management service powered by Kubernetes and OpenStack Magnum.'
},
{
type:1,
name:'Component Soft',
logo:'componentsoft',
link:'https://www.componentsoft.eu/?p=3925',
blurb:'Component Soft offers training, consultation and support around open cloud technologies like Kubernetes, Docker, Openstack and Ceph.'
},
{
type:0,
name:'Datera',
logo:'datera',
link:'http://www.datera.io/kubernetes/',
blurb:'Datera delivers high performance, self-managing elastic block storage with self-service provisioning for deploying Kubernetes at scale.'
},
{
type:0,
name:'Containership',
logo:'containership',
link:'https://containership.io/',
blurb:'Containership is a cloud agnostic managed kubernetes offering that supports automatic provisioning on over 14 cloud providers.'
},
{
type:0,
name:'Pure Storage',
logo:'pure_storage',
link:'https://hub.docker.com/r/purestorage/k8s/',
blurb:'Our flexvol driver and dynamic provisioner allow FlashArray/Flashblade storage devices to be consumed as first class persistent storage from within Kuberentes.'
},
{
type:0,
name:'Elastisys',
logo:'elastisys',
link:'https://elastisys.com/kubernetes/',
blurb:'Predictive autoscaling - detects recurring workload variations, irregular traffic spikes, and everything in between. Runs K8s in any public or private cloud.'
blurb:'With Portworx, you can manage any database or stateful service on any infrastructure using Kubernetes. You get a single data management layer for all of your stateful services, no matter where they run.'
blurb:'Based in Australia, Servian provides advisory, consulting and managed services to support both application and data centric kubernetes use cases.'
},
{
type:1,
name:'Redzara',
logo:'redzara',
link:'http://redzara.com/cloud-service',
blurb:'Redzara has wide and in-depth experience in Cloud automation, now taking one giant step by providing container service offering and services to our customers.'
},
{
type:0,
name:'Dataspine',
logo:'dataspine',
link:'http://dataspine.xyz/',
blurb:'Dataspine is building a secure, elastic and serverless deployment platform for production ML/AI workloads on top of k8s.'
},
{
type:0,
name:'Logdna',
logo:'logdna',
link:'https://logdna.com/kubernetes',
blurb:'Pinpoint production issues instantly with LogDNA, the best logging platform you will ever use. Get started with only 2 kubectl commands.'
To write a glossary snippet, start with a copy of the template, [`/_data/glossary/_example.yml`](/_data/glossary/_example.yml). Make sure to provide (or omit) values for the following fields:
* (Required) `id`.
* (Required) `id`
* This field must match the name of the glossary file itself (without the `*.yml` extension). It is *not* intended to be displayed to users, and is only used programmatically.
* (Required) `name`.
* (Required) `name`
* The name of the term.
* (Required) `tags`.
* Must be one of the tags listed in kubernetes.github.io/_data/canonical-terms-tags.yml.
* (Required) `short description`.
* (Required) `tags`
* Must be one of the tags listed in the [tags directory in the website repository](https://github.com/kubernetes/website/tree/master/_data/canonical-tags).
* (Required) `short description`
* Make sure to replace the instructional text in the template with your content.
* (Optional) `formerly` and `related`.
*If you do not provide these values, remove the fields.
* (Optional) `long description`.
* (Optional) `aka`
*These synonyms do not need to be glossary terms themselves (if they are deprecated), and can include spaces.
* (Optional) `related`
* These should be the `id`s (not the `names`) of related glossary terms.
* (Optional) `long description`
* If you do not provide a long description, remove the field -- that is, the complete key-value pair.
The `_example.yml` template also contains basic information about how to write your snippet. For additional guidance, continue reading this readme.
This directory contains `*.rb` files that extend the original Jekyll classes and provide custom formatting for the docs site:
### `glossary_tags.rb`
A full list of glossary terms is available on the [Standardized Glossary](https://kubernetes.io/docs/reference/glossary/?fundamental=true) page. For further information about term schemas, see the [README](../_includes/templates/glossary/README.md) and the provided [`_example.yml`](../_data/glossary/_example.yml).
*NOTE: The "tags" referenced here are Liquid tags like `{% include %}`, **not** the glossary canonical tags that are used to categorize terms.*
#### (1) `glossary_definition` tag
This renders the definition of the glossary term inside a `<div>`, preserving Markdown formatting where possible. It uses the [`snippet.md` template](../_includes/templates/glossary/snippet.md).
| `term_id` | N/A (Required) | The `id` of the glossary term whose definition will be used. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |
| `length` | "short" | Specifies which term definition should be used ("short" for the `short-definition`, "long" for `long-description`, "all" when both should be included). |
#### (2) `glossary_tooltip` tag
This renders the glossary term with a tooltip--when the term is moused over by the user, its definition is displayed above.
| `text` | the `name` of the glossary term | The text that the user will hover over to display the glossary definition. **You should include this if using the tooltip inside of a glossary term's YAML short-definition.** |
| `term_id` | N/A (Required) | The `id` of the associated glossary term. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |
#### (3) `glossary_injector` tag
This takes the definition of the term specified by the `term_id` and uses it to populate the contents of another HTML element specified by `placeholder_id`.
*NOTE: Neither the placeholder nor the term's styling/CSS is determined by this Jekyll tag. You will need to specify this yourself in your Markdown/HTML files, i.e. by assigning a custom class.*
**Parameters:**
| Name | Default | Description |
| --- | --- | --- |
| `text` | the `name` of the glossary term | The text that the user will hover over to display the glossary definition. |
| `term_id` | N/A (Required) | The `id` of the glossary term whose definition will be used. (This `id` is the same as the filename of the term, i.e. `_data/glossary/<ID>.yml`.) |
| `placeholder_id` | N/A (Required) | The `id` of the HTML element whose contents will be populated with the definition of `term_id` |
| `length` | "short" | Specifies which term definition should be used ("short" for the `short-definition`, "long" for `long-description`, "all" when both should be included). |
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.