Production-Grade Container Scheduling and Management
Go to file
Kubernetes Submit Queue 4e46ae1d3b Merge pull request #41597 from rootfs/rbd-fencing2
Automatic merge from submit-queue (batch tested with PRs 41597, 42185, 42075, 42178, 41705)

force rbd image unlock if the image is not used

**What this PR does / why we need it**:
Ceph RBD image could be locked if the host that holds the lock is down. In such case, the image cannot be used by other Pods. 

The fix is to detect the orphaned locks and force unlock.
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #31790

**Special notes for your reviewer**:

Note, previously, RBD volume plugin maps the image, mount it, and create a lock on the image. Since the proposed fix uses `rbd status` output to determine if the image is being used, the sequence has to change to: rbd lock checking (through `rbd lock list`), mapping check (through `rbd status`), forced unlock if necessary (through `rbd lock rm`), image lock, image mapping, and mount.




**Release note**:

```release-note
force unlock rbd image if the image is not used
```
2017-03-01 00:36:01 -08:00
.github
api Portworx Volume Driver in Kubernetes 2017-02-28 23:24:56 +00:00
build remove trusty GCE kube-up.sh 2017-02-28 10:08:17 -08:00
cluster Merge pull request #41923 from Cynerva/gkk/juju-nrpe-relation-squash 2017-02-28 22:06:05 -08:00
cmd Merge pull request #41973 from wojtek-t/build_non_alpha_3_0_17_etcd_image 2017-02-28 22:05:59 -08:00
docs Portworx Volume Driver in Kubernetes 2017-02-28 23:24:56 +00:00
examples Portworx Volume Driver in Kubernetes 2017-02-28 23:24:56 +00:00
federation Merge pull request #41973 from wojtek-t/build_non_alpha_3_0_17_etcd_image 2017-02-28 22:05:59 -08:00
Godeps Portworx Volume Driver in Kubernetes 2017-02-28 23:24:56 +00:00
hack Merge pull request #41335 from irfanurrehman/kubefed-flag-cleanup 2017-02-28 20:16:11 -08:00
hooks
logo
pkg Merge pull request #41597 from rootfs/rbd-fencing2 2017-03-01 00:36:01 -08:00
plugin Merge pull request #41708 from bsalamat/statefulset_spreading2 2017-02-28 20:16:08 -08:00
staging Merge pull request #42183 from sttts/sttts-bool-parse-warning 2017-02-28 21:17:00 -08:00
test Merge pull request #41973 from wojtek-t/build_non_alpha_3_0_17_etcd_image 2017-02-28 22:05:59 -08:00
third_party
translations
vendor Portworx Volume Driver in Kubernetes 2017-02-28 23:24:56 +00:00
.bazelrc
.gazelcfg.json
.generated_files
.gitattributes
.gitignore
BUILD.bazel
CHANGELOG.md
code-of-conduct.md
CONTRIBUTING.md
labels.yaml
LICENSE
Makefile
Makefile.generated_files
OWNERS
OWNERS_ALIASES
README.md
Vagrantfile
WORKSPACE

Kubernetes

Submit Queue Widget GoDoc Widget

Introduction

Kubernetes is an open source system for managing containerized applications across multiple hosts, providing basic mechanisms for deployment, maintenance, and scaling of applications. Kubernetes is hosted by the Cloud Native Computing Foundation (CNCF).

Kubernetes builds upon a decade and a half of experience at Google running production workloads at scale using a system called Borg, combined with best-of-breed ideas and practices from the community.


Are you ...

Code of Conduct

The Kubernetes community abides by the CNCF code of conduct. Here is an excerpt:

As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.

Community

Do you want to help shape the evolution of technologies that are container-packaged, dynamically-scheduled and microservices-oriented?. If you are a company, you should consider joining the CNCF. For details about who's involved in CNCF and how Kubernetes plays a role, read the announcement. For general information about our community, see the website community page.

Contribute

If you're interested in being a contributor and want to get involved in developing Kubernetes, get started with this reading:

You will then most certainly gain a lot from joining a SIG, attending the regular hangouts as well as the community meeting.

If you have an idea for a new feature, see the Kubernetes Features repository for a list of features that are coming in new releases as well as details on how to propose one.

Building Kubernetes for the impatient

If you want to build Kubernetes right away there are two options:

$ go get -d k8s.io/kubernetes
$ cd $GOPATH/src/k8s.io/kubernetes
$ make
$ git clone https://github.com/kubernetes/kubernetes
$ cd kubernetes
$ make quick-release

If you are less impatient, head over to the developer's documentation.

Support

While there are many different channels that you can use to get hold of us (Slack, Stack Overflow, Issues, Forums/Mailing lists), you can help make sure that we are efficient in getting you the help that you need.

If you need support, start with the troubleshooting guide and work your way through the process that we've outlined.

That said, if you have questions, reach out to us one way or another. We don't bite!

Analytics