profile
viewpoint
Benjamin Elder BenTheElder @Google Sunnyvale, CA https://elder.dev/ maintaining @kubernetes things, https://sigs.k8s.io/kind creator

push eventBenTheElder/kind

Benjamin Elder

commit sha e2d0da25aa5095e18b38b85b7901432a8eadf32e

v1alpha3 -> v1alpha4 in docs

view details

Benjamin Elder

commit sha c6384ceb4b9670d55390342cef54122599ad438e

make some WSL2 command codeblocks copyable

view details

Benjamin Elder

commit sha cd12690ff6ec63cf8c742d9d7c527b76afd328c9

make commands meant to be run on the known issues page copyable

view details

Benjamin Elder

commit sha eebd695b1ce5f04f6a290c12c3d4d049594ba81e

make install directions & homepage snippets copyable

view details

Benjamin Elder

commit sha 7ef35f1ff0268e96b9ac48630c9abde85b3293f3

correct v1alpha4 group

view details

Kubernetes Prow Robot

commit sha 2c54710bdb9fb99e661cae089e2fb114cb5d8664

Merge pull request #1169 from BenTheElder/docs-cleanup Docs cleanup

view details

push time in 14 hours

pull request commentkubernetes/test-infra

stop using ginkgo.flakeAttempts in e2e jobs

/lgtm Friday flake day

spiffxp

comment created time in 15 hours

pull request commentkubernetes-sigs/kind

update create cluster demo

https://deploy-preview-1170--k8s-kind.netlify.com/

BenTheElder

comment created time in 16 hours

PR opened kubernetes-sigs/kind

update create cluster demo
+2 -2

0 comment

3 changed files

pr created time in 16 hours

create barnchBenTheElder/kind

branch : update-demo

created branch time in 16 hours

Pull request review commentkubernetes-sigs/kind

Docs cleanup

 Ensure you `systemctl restart docker` to pick up the changes. ```yaml # an ipv6 cluster kind: Cluster-apiVersion: kind.sigs.k8s.io/v1alpha3+apiVersion: kind.sigs.k8s.io/v1alpha4

done

BenTheElder

comment created time in 17 hours

push eventBenTheElder/kind

Benjamin Elder

commit sha 7ef35f1ff0268e96b9ac48630c9abde85b3293f3

correct v1alpha4 group

view details

push time in 17 hours

pull request commentkubernetes/kubernetes

Add build support for riscv64 arch

That said I reached out to see about starting the KEP ball and give some pointers ...

On Fri, Dec 13, 2019, 13:55 Benjamin Elder bentheelder@google.com wrote:

I don't think that burden [solving all of the outstanding questions on the existing build] belongs to this contributor. If we want to clarify the state of the world that seems to be on us.

On Fri, Dec 13, 2019, 13:49 Christoph Blecker notifications@github.com wrote:

Just because "that's the way it's always been", doesn't mean we can't do better. And if someone came along and said "We don't have CI/testing/supporting policies for X platform. We should remove it." I would be inclined to agree with that statement right now.

The last time we added a platform was April 2016 (4559a84 https://github.com/kubernetes/kubernetes/commit/4559a84d3b3b8e9d286f17ee2d74c03dbed86be9). Lots has changed with the project, including the KEP process. I think we should be looking to follow it.

Rule #1 https://github.com/kubernetes/kubernetes/issues/1 of open-source: no is temporary, yes is forever.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/kubernetes/kubernetes/pull/86011?email_source=notifications&email_token=AAHADKYDNG2VKSHVOOCK32LQYP7ONA5CNFSM4JW7TGH2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEG3LB5I#issuecomment-565620981, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHADKYIXEDRJFWSGCJQEBLQYP7ONANCNFSM4JW7TGHQ .

carlosedp

comment created time in 17 hours

pull request commentkubernetes/kubernetes

Add build support for riscv64 arch

I don't think that burden [solving all of the outstanding questions on the existing build] belongs to this contributor. If we want to clarify the state of the world that seems to be on us.

On Fri, Dec 13, 2019, 13:49 Christoph Blecker notifications@github.com wrote:

Just because "that's the way it's always been", doesn't mean we can't do better. And if someone came along and said "We don't have CI/testing/supporting policies for X platform. We should remove it." I would be inclined to agree with that statement right now.

The last time we added a platform was April 2016 (4559a84 https://github.com/kubernetes/kubernetes/commit/4559a84d3b3b8e9d286f17ee2d74c03dbed86be9). Lots has changed with the project, including the KEP process. I think we should be looking to follow it.

Rule #1 https://github.com/kubernetes/kubernetes/issues/1 of open-source: no is temporary, yes is forever.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/kubernetes/kubernetes/pull/86011?email_source=notifications&email_token=AAHADKYDNG2VKSHVOOCK32LQYP7ONA5CNFSM4JW7TGH2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEG3LB5I#issuecomment-565620981, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHADKYIXEDRJFWSGCJQEBLQYP7ONANCNFSM4JW7TGHQ .

carlosedp

comment created time in 17 hours

Pull request review commentkubernetes-sigs/kind

Docs cleanup

 This problem is related to a bug in [docker on macOS][for-mac#3663]  If you see something like the following error message: ```bash

This is not something you should copy and paste

BenTheElder

comment created time in 18 hours

Pull request review commentkubernetes-sigs/kind

Docs cleanup

 This problem is related to a bug in [docker on macOS][for-mac#3663]  If you see something like the following error message: ```bash

Code from inline is copyable things to save or run.

This is sable output

BenTheElder

comment created time in 18 hours

pull request commentkubernetes-sigs/kind

Docs cleanup

Sorry, went to lunch before posting that. Need to check the netlify settings for this soon

BenTheElder

comment created time in 18 hours

pull request commentkubernetes-sigs/kind

Docs cleanup

https://deploy-preview-1169--k8s-kind.netlify.com

BenTheElder

comment created time in 18 hours

PR opened kubernetes-sigs/kind

Docs cleanup
  • v1alpha3 -> v1alpha4 in docs
  • make more things copyable
  • simplify config examples to focus on the relevant parts
+55 -67

0 comment

5 changed files

pr created time in 18 hours

create barnchBenTheElder/kind

branch : docs-cleanup

created branch time in 18 hours

pull request commentkubernetes/kubernetes

Add build support for riscv64 arch

That is way oversimplifying this. I'm talking about supporting a new architecture.. like if we find future bugs in a specific architecture, are we going to prioritize supporting them? Fixing them? Will they be release blocking? There are lots of questions here.

This isn't really different from the existing build targets.

Currently:

  • no, and we don't today on non-amd64
  • no, patches accepted
  • no, If it doesn't have CI, it doesn't block. nothing does

This is just a build target. The majority of our build targets are not supported beyond the build functioning (386 anyone? s390x? windows 386? PPC?)

Out of our 10 client targets I've never seen us do much for 7 of them, we just keep the builds flowing.

carlosedp

comment created time in 19 hours

push eventBenTheElder/kind

Benjamin Elder

commit sha 7c63f72c573bceac856eec396c9e76737d516eac

use file for registry script

view details

Benjamin Elder

commit sha 1492f656f85ad6bfb010265ba282e1b8887be896

cleanup local registry example

view details

Benjamin Elder

commit sha 34445290e274d160b54b440a4bca33553390eed3

cleanup private registries example

view details

Kubernetes Prow Robot

commit sha 46b9ca0502c82f6d3bf87f3f7dc459c7dc4ab024

Merge pull request #1168 from BenTheElder/registry-file cleanup registry examples

view details

Amit Watve

commit sha 55952d2adb167aa324ca7ab5828bc6678030e776

Move static to assets for using minify.

view details

Amit Watve

commit sha 5516250aa57aa1fb513aa818054d507ab9a0c0bf

Add a shortcode for minify.

view details

Amit Watve

commit sha 4c944761dabd0ca3524bca24d61cb4a36eeb875b

Update ingress guide to use shortcodes.

view details

Amit Watve

commit sha 0f4b43f1b46f044e911b12991689fcdb34115c4e

Fix shortcodes.

view details

Amit Watve

commit sha 8e772d985cc0d99f556bcd8f99e482949bc7bf96

Camelcase shortcodes.

view details

Amit Watve

commit sha 67041db8d7afa39b36fb182b1312c421813f8e39

Fix highlighting in readFile.

view details

Kubernetes Prow Robot

commit sha 72cdf85b856f4459f7ebd118c2dccd1f3cf03224

Merge pull request #1164 from amwat/nginx Cleanup Ingress guide

view details

push time in 19 hours

pull request commentkubernetes/kubernetes

[kubeadm]: Bump CoreDNS version to 1.6.6

See testing-ops for the SIG node e2e test failure, not specific to this PR

rajansandeep

comment created time in 21 hours

pull request commentkubernetes/kubernetes

[kubeadm]: Bump CoreDNS version to 1.6.6

/lgtm /approve

rajansandeep

comment created time in 21 hours

pull request commentkubernetes/test-infra

[WIP] Resurrect hack/update-config.sh

Bash /lgtm

justaugustus

comment created time in 21 hours

Pull request review commentkubernetes/kubernetes

Bump Ginkgo to support building on riscv64 arch

 require ( 	github.com/mrunalp/fileutils v0.0.0-20171103030105-7d4729fb3618 // indirect 	github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 	github.com/mvdan/xurls v1.1.0-	github.com/onsi/ginkgo v1.10.1+	github.com/onsi/ginkgo v1.10.4-0.20191206104214-f66e896ca772

I glanced around and didn't see much about releases so 😅

carlosedp

comment created time in 21 hours

pull request commentkubernetes/repo-infra

Update golangci-lint dependency to v1.21.0

/lgtm /approve

saschagrunert

comment created time in 21 hours

pull request commentkubernetes/repo-infra

Update golangci-lint dependency to v1.21.0

We could also think about using the install script instead of vendoring the dependency:

In other repos I prefer using a tools go module and no vendor but afaik we choose to vendor everything on policy here. @liggitt

saschagrunert

comment created time in 21 hours

pull request commentkubernetes/test-infra

Add E2E jobs for CPUManager and TopologyManager

/ok-to-test /lgtm /approve Ideally SIG node owners to review & approve presubmits for SIG node in the future, to better spread the workload..

vpickard

comment created time in 21 hours

pull request commentkubernetes-sigs/kind

Cleanup Ingress guide

/lgtm

amwat

comment created time in 2 days

pull request commentkubernetes-sigs/kind

Cleanup Ingress guide

/lgtm /approve

amwat

comment created time in 2 days

pull request commentkubernetes-sigs/kind

cleanup registry examples

https://deploy-preview-1168--k8s-kind.netlify.com/docs/user/private-registries/#use-an-access-token

BenTheElder

comment created time in 2 days

pull request commentkubernetes-sigs/kind

cleanup registry examples

also cleaned up private registry example

BenTheElder

comment created time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha 34445290e274d160b54b440a4bca33553390eed3

cleanup private registries example

view details

push time in 2 days

pull request commentkubernetes-sigs/kind

cleanup local registry example

image

BenTheElder

comment created time in 2 days

pull request commentkubernetes-sigs/kind

cleanup local registry example

https://deploy-preview-1168--k8s-kind.netlify.com/docs/user/local-registry/

BenTheElder

comment created time in 2 days

PR opened kubernetes-sigs/kind

cleanup local registry example
  • use a file for the shell script
  • fix inline code snippet layout for wide files
  • reformat the script with shorter lines to read more easily
+35 -27

0 comment

3 changed files

pr created time in 2 days

create barnchBenTheElder/kind

branch : registry-file

created branch time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha 3dea0adc134f06bbbfde82d4c799a29927223f30

template site baseURL

view details

Kubernetes Prow Robot

commit sha a4bf7e8983099beaf89c491606a80928b49cdf4e

Merge pull request #1166 from BenTheElder/template-base-url template site baseURL

view details

Benjamin Elder

commit sha b8afc4cb2cf401e443288b257c3b3a5dd1664b7d

make inlined code snippets copyable

view details

Kubernetes Prow Robot

commit sha 1306b0050d529626dd001ea215c1b9e26b1bcb4f

Merge pull request #1167 from BenTheElder/copyable-snippets make inlined code snippets copyable

view details

push time in 2 days

pull request commentkubernetes-sigs/kind

make inlined code snippets copyable

https://deploy-preview-1167--k8s-kind.netlify.com/docs/user/ingress/#using-ingress

BenTheElder

comment created time in 2 days

delete branch BenTheElder/kind

delete branch : template-base-url

delete time in 2 days

pull request commentkubernetes-sigs/kind

make inlined code snippets copyable

sorry! cc @amwat ** :man_facepalming:

BenTheElder

comment created time in 2 days

pull request commentkubernetes-sigs/kind

make inlined code snippets copyable

cc @amit you wanted this, it's implemented now!

BenTheElder

comment created time in 2 days

PR opened kubernetes-sigs/kind

make inlined code snippets copyable
  • add copy button to inlined code snippets included from files
  • add a link to the file next to the copy button
  • style etc. (not perfect, but good enough for MVP) image
+80 -3

0 comment

3 changed files

pr created time in 2 days

create barnchBenTheElder/kind

branch : copyable-snippets

created branch time in 2 days

pull request commentkubernetes-sigs/kind

template site baseURL

there are also more of these that can be done and we should re-arrange them quickly before people depend on them, but the intent is to just implement this utility for use in https://github.com/kubernetes-sigs/kind/pull/1164, so just using it in one place to verify that it works as intended in CI ... which is fixed now

BenTheElder

comment created time in 2 days

Pull request review commentkubernetes-sigs/kind

template site baseURL

 spec: Apply the contents  ```shell script-kubectl apply -f https://kind.sigs.k8s.io/manifests/ingress/nginx/example.yaml+kubectl apply -f {{< baseurl >}}manifests/ingress/nginx/example.yaml

locally there's a trailing slash, in CI there is not. absURL handles this appropriately.

BenTheElder

comment created time in 2 days

Pull request review commentkubernetes-sigs/kind

template site baseURL

 spec: Apply the contents  ```shell script-kubectl apply -f https://kind.sigs.k8s.io/manifests/ingress/nginx/example.yaml+kubectl apply -f {{< baseurl >}}manifests/ingress/nginx/example.yaml

it's an inconsistency between local dev and netlify build

the correct answer is using the absURL method, which I've updated to.

BenTheElder

comment created time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha 3dea0adc134f06bbbfde82d4c799a29927223f30

template site baseURL

view details

push time in 2 days

pull request commentkubernetes-sigs/kind

template site baseURL

https://deploy-preview-1166--k8s-kind.netlify.com/docs/user/ingress/#using-ingress

BenTheElder

comment created time in 2 days

PR opened kubernetes-sigs/kind

template site baseURL

for use when referencing hosted content, this makes it possible to correctly use previews and handle local development properly ...

+2 -1

0 comment

2 changed files

pr created time in 2 days

create barnchBenTheElder/kind

branch : template-base-url

created branch time in 2 days

push eventBenTheElder/kind

Amit Watve

commit sha 4ec8b1d5ba196f349be841ee27e353870327e8bf

Add user guide for ingress nginx.

view details

Amit Watve

commit sha 29aaaa64c4ab0b37f5f9ab9e2702e6ed73bf2de3

Minor fixes and add a basic example.

view details

Amit Watve

commit sha 714fcc361caefeb5264a5fc26d527a4bc7f96a4d

Use custom node label instead of the control plane label.

view details

Amit Watve

commit sha dd1832f2733576eae386582cfd230407853721dd

move out example to a file.

view details

Amit Watve

commit sha 3e215090226b5908dbca0556c47b0b4bd3b3872d

Move configurations to static files.

view details

Benjamin Elder

commit sha 220b46ff307c6263d7acc6b482057161d5917684

update hugo

view details

Benjamin Elder

commit sha fd3413ee92eb510de15e42ea78ef174cb05fb99f

nit quickstart

view details

Benjamin Elder

commit sha e9015a301bb5799a835c0c7975b8fb2fed8234ed

stub in configuration page

view details

Benjamin Elder

commit sha 857ea2722980b9c6c12b33749a4bcad03dac8aa8

add warning to configuration page

view details

Benjamin Elder

commit sha 6cad3f897cb8b25af544575cb2b1c39413f8fe17

nit resources

view details

Kubernetes Prow Robot

commit sha 4a1129da8c2029c4abbbd9438d0baf98c0b3c805

Merge pull request #1159 from amwat/nginx Add user guide for ingress nginx.

view details

Kubernetes Prow Robot

commit sha 76320c0cf7c904342577d3f21ad91e52114470a5

Merge pull request #1163 from BenTheElder/new-hugo update hugo, add more docs

view details

push time in 2 days

issue commentkubernetes-sigs/kind

kind load docker-image should optimize loading new tags for already loaded images

we aim to make it less of a hassle in the future. it's possible today but definitely not ideal.

I recommend using a variant of the example script to automate it for now.

adampl

comment created time in 2 days

issue commentkubernetes-sigs/kind

kind load docker-image should optimize loading new tags for already loaded images

Hmm, I thought it's just a bug, because it looks like an obvious functionality to me... but I'm not really an expert on the Docker internals.

Yeah, it's definitely obvious functionality but the way image import works is that an entire tarball including all the image details and layers is loaded.

Which CLI did you mean in the previous comment?

ctr (or crictl) on the nodes, to manage the images etc.

adampl

comment created time in 2 days

issue commentkubernetes-sigs/kind

kind load docker-image should optimize loading new tags for already loaded images

I think better registry support might be the better thing to focus on right now, it's reasonably efficient about this out of the box (only pushing / pulling missing layers individually) and fits in better with workflows that are not kind specific.

For larger images pushing over loopback will probably be faster than streaming over docker exec.

It also has the benefit of persisting across cluster create / delete and more efficiently supporting loading images into just the nodes actually using them without thinking about it.

kind load ... is simple and reliable but registries will probably give better UX and more portable workflows.

I'll be working more on registry UX after sorting out some possibly breaking network changes related to host reboot support that would break this.

adampl

comment created time in 2 days

issue commentkubernetes-sigs/kind

kind load docker-image should optimize loading new tags for already loaded images

Maybe the image should be loaded as a digest (without any tag so comparison would be simple), and tags could be transmitted separately and just created if missing?

Wo right now we confirm that the image ~manifests are the same and load image tarballs.

The thing is image archive tarballs have a manifest in them, the hash of which defines the image ID, and the contents of which defines the image. there are then sub-tarballs for each of the layers.

Right now we check if the ID is present on the node(s) and if not we load the image.

We could check if the layers exist, and then try to populate the equivalent of the manifest via the API, but that's not really a normal flow and we'd have to be careful to produce the same manifest else the image will not be the same as if we'd just imported an image archive.

adampl

comment created time in 2 days

issue commentkubernetes-sigs/kind

kind load docker-image should optimize loading new tags for already loaded images

it looks like actually the containerd API (not CRI) does have the right methods to make it possible to create an image referencing existing metadata content which is not surprising given the architecture, but the CLI does not have this so we'd need an API client somewhere, besides a comparison of the image layers instead of the manifest / image ID

adampl

comment created time in 2 days

issue commentkubernetes-sigs/kind

kind load docker-image should optimize loading new tags for already loaded images

so also, while the docker save is not optimized out, the layer loading should in fact skip existing layers.

adampl

comment created time in 2 days

issue commentkubernetes-sigs/kind

kind load docker-image doesn't recognize existing image with different tag

The second load should just create a new tag, instead of loading the whole image again.

containerd has no such mechanism as far as I know. we can possibly emulate it, but it will be ... interesting.

you should take a look at https://kind.sigs.k8s.io/docs/user/local-registry/ as one alternative

adampl

comment created time in 2 days

pull request commentkubernetes/test-infra

it's clap clap now 👏👏

/approve cancel Hmm might have found a bug

BenTheElder

comment created time in 2 days

PR opened kubernetes/test-infra

it's clap clap now 👏👏

https://twitter.com/ipedrazas/status/1205077331695603713

/hold /approve cancel /cc @munnerz @justaugustus

+13 -1

0 comment

2 changed files

pr created time in 2 days

create barnchBenTheElder/test-infra

branch : it's-clap-clap-now

created branch time in 2 days

push eventBenTheElder/test-infra

W. Trevor King

commit sha 684bf4614b57077b5ec6fed2e9316597cb3f2e13

Revert "Revert "Merge pull request #14963 from wking/require-blocking-bugzilla"" This reverts commit 704d2d480d36f85139b2510733d49138cc1f97f2, #15386. OCS wants the guard in the mid/long term, but not right now. To unblock them for the next few hours, we reverted the blocking-bug requirement. Now I'm about to add an opt-out knob, so revert the reversion ;).

view details

Alvaro Aleman

commit sha 38738616489514c38242b91dd4d2c290f3ca09d2

Tide: Dont let broken prs break the whole subpool

view details

Patrick Lang

commit sha 8819c4262cf2eadf2afe31b9ec81004eccfb1659

Adding others on Azure team to approve updates to Windows jobs running on shared subscription

view details

Matthias Bertschy

commit sha c710b00434d3bbe6ef1be401a4cc41e48e2651c7

Prune empty pull requests in QueryPullRequests

view details

Steve Kuznetsov

commit sha 0430e8ff74201fefbfcf855dd15a86041ea662b7

git: add adapters from v1 types to the v2 interfaces Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>

view details

Erick Fejta

commit sha db9f02ec415ed6b39001fb4f2ae9e6898bfe1201

Tool to upgrade GKE clusters

view details

Alvaro Aleman

commit sha 68e726e8be85f6878ddbd3557d7d349c9e92104a

Deck: Add nilchecking before attempting to use the git client

view details

Lantao Liu

commit sha d7c2aa6b492de71050d96072038aeafd37aa19ef

Add windows containerd gce Kubernetes e2e test. Signed-off-by: Lantao Liu <lantaol@google.com>

view details

Hongkai Liu

commit sha f32a8e6fbfad0451cfc669675bfb06bb59356d2f

Pass issue_comment events to needs-rebase plugin The needs-rebase plugin operates in three ways: * evaluate merge-ability when the PR changes code * reevaluate merge-ability when a PR gets a comment * sweep open PRs on a configured interval to reevaluate This pull (correctly) sends issue comment events to the plugin so it can use them. That's more efficient than trying to re-sync all PRs more frequently. A re-sync/re-evaluation is necessary in the first place since the plugin does not map push events from the branch to open PRs for it.

view details

Kubernetes Prow Robot

commit sha 80083fba0ad2785a489abb80e3c836a41d195573

Update prow to v20191206-ec60c28a0, and other images as necessary.

view details

Kubernetes Prow Robot

commit sha 451bb63db21760e83ab4a47da3f0471c14e99b8e

Merge pull request #15321 from hongkailiu/needs_rebase Pass issue_comment events to needs-rebase plugin

view details

Benjamin Elder

commit sha 2c743f8f418af7fd74c9333492292e920de60fc3

enable verify-typecheck-providerless

view details

Kubernetes Prow Robot

commit sha 79c469607f35f7113dada9232e9f0708838579b3

Merge pull request #15501 from k8s-ci-robot/autobump Update prow to v20191206-ec60c28a0, and other images as necessary.

view details

Kubernetes Prow Robot

commit sha 004ba41c8224bd64e53b9d6028737978fd94f902

Merge pull request #15366 from stevekuznetsov/skuznets/git-v2-step-4 git: add adapters from v1 types to the v2 interfaces

view details

Kubernetes Prow Robot

commit sha 16b22a3842b7d2965a375d3b0bc6063ac26628c6

Merge pull request #15519 from BenTheElder/providerless-check enable verify-typecheck-providerless

view details

Erick Fejta

commit sha 4bf6da6c36831a8a73ccfaae953d4779e0803b1d

Use slack_reporter_configs

view details

Erick Fejta

commit sha 41351222bfd944b632ef558608794d791b76f2c9

Deprecate AllowCancellations

view details

Kubernetes Prow Robot

commit sha ddd7875c0289d665cd539617e672c2afafe83018

Merge pull request #15521 from fejta/fix Use slack_reporter_configs

view details

Steve Kuznetsov

commit sha 0c57674e0eb65b9cf62da647cf3fa7d270b976f1

tide: set a timeout on flushing history Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>

view details

Kubernetes Prow Robot

commit sha b9e689ae4a8ee560912ae1e40748af15d6080f55

Merge pull request #15522 from fejta/dehonk Deprecate AllowCancellations, only warn when field is set

view details

push time in 2 days

pull request commentkubernetes/kubernetes

Promote SataQiu to an approver of test and test/e2e/framework

/lgtm /approve Thanks for your contributions!

SataQiu

comment created time in 2 days

Pull request review commentkubernetes-sigs/kind

Cleanup Ingress guide

 Apply the [mandatory ingress-nginx components](https://kubernetes.github.io/ingr ```shell script kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml ```-Apply kind specific patches--```yaml-spec:-  template:-    spec:-      containers:-      - name: nginx-ingress-controller-        ports:-        - containerPort: 80-        # Proxy the host port 80 for http-          hostPort: 80-        - containerPort: 443-        # Proxy the host port 443 for https-          hostPort: 443-      nodeSelector:-        # schedule it on the control-plane node-        ingress-ready: 'true'-      tolerations:-      # tolerate the the control-plane taints-      - key: node-role.kubernetes.io/master-        operator: Equal-        effect: NoSchedule-```+Apply kind specific patches to forward the hostPorts to the +ingress controller, set taint tolerations and +schedule it to the custom labelled node.++{{< codefromfile file="assets/examples/ingress/nginx/patch.json" lang="json" >}}  ```shell script-kubectl patch deployments -n ingress-nginx nginx-ingress-controller -p "$(curl https://kind.sigs.k8s.io/manifests/ingress/nginx/patch.yaml)"+kubectl patch deployments -n ingress-nginx nginx-ingress-controller -p '{{< minify file="examples/ingress/nginx/patch.json" >}}'  ```  -Now you will want to checkout [Using Ingress](#using-ingress)-+Now the Ingress is all setup to be used. +Refer [Using Ingress](#using-ingress) for a basic example usage.  ## Using Ingress  The following example creates simple http-echo services  and an Ingress object to route to these services. -```yaml-kind: Pod-apiVersion: v1-metadata:-  name: foo-app-  labels:-    app: foo-spec:-  containers:-    - name: foo-app-      image: hashicorp/http-echo-      args:-        - "-text=foo"-----kind: Service-apiVersion: v1-metadata:-  name: foo-service-spec:-  selector:-    app: foo-  ports:-    - port: 5678 # Default port used by the image

Nit thought: We should put the comments on their own lines to make it less wide.

amwat

comment created time in 2 days

Pull request review commentkubernetes-sigs/kind

Cleanup Ingress guide

 Apply the [mandatory ingress-nginx components](https://kubernetes.github.io/ingr ```shell script kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml ```-Apply kind specific patches--```yaml-spec:-  template:-    spec:-      containers:-      - name: nginx-ingress-controller-        ports:-        - containerPort: 80-        # Proxy the host port 80 for http-          hostPort: 80-        - containerPort: 443-        # Proxy the host port 443 for https-          hostPort: 443-      nodeSelector:-        # schedule it on the control-plane node-        ingress-ready: 'true'-      tolerations:-      # tolerate the the control-plane taints-      - key: node-role.kubernetes.io/master-        operator: Equal-        effect: NoSchedule-```+Apply kind specific patches to forward the hostPorts to the +ingress controller, set taint tolerations and +schedule it to the custom labelled node.++{{< codefromfile file="assets/examples/ingress/nginx/patch.json" lang="json" >}}  ```shell script-kubectl patch deployments -n ingress-nginx nginx-ingress-controller -p "$(curl https://kind.sigs.k8s.io/manifests/ingress/nginx/patch.yaml)"+kubectl patch deployments -n ingress-nginx nginx-ingress-controller -p '{{< minify file="examples/ingress/nginx/patch.json" >}}'  ```  -Now you will want to checkout [Using Ingress](#using-ingress)-+Now the Ingress is all setup to be used. +Refer [Using Ingress](#using-ingress) for a basic example usage.  ## Using Ingress  The following example creates simple http-echo services  and an Ingress object to route to these services. -```yaml-kind: Pod-apiVersion: v1-metadata:-  name: foo-app-  labels:-    app: foo-spec:-  containers:-    - name: foo-app-      image: hashicorp/http-echo-      args:-        - "-text=foo"-----kind: Service-apiVersion: v1-metadata:-  name: foo-service-spec:-  selector:-    app: foo-  ports:-    - port: 5678 # Default port used by the image-----kind: Pod-apiVersion: v1-metadata:-  name: bar-app-  labels:-    app: bar-spec:-  containers:-    - name: bar-app-      image: hashicorp/http-echo-      args:-        - "-text=bar"-----kind: Service-apiVersion: v1-metadata:-  name: bar-service-spec:-  selector:-    app: bar-  ports:-    - port: 5678 # Default port used by the image-----apiVersion: extensions/v1beta1-kind: Ingress-metadata:-  name: example-ingress-  annotations:-    ingress.kubernetes.io/rewrite-target: /-spec:-  rules:-  - http:-      paths:-        - path: /foo-          backend:-            serviceName: foo-service-            servicePort: 5678-        - path: /bar-          backend:-            serviceName: bar-service-            servicePort: 5678-----```+{{< codefromfile file="static/examples/ingress/usage.yaml" lang="yaml" >}}  Apply the contents  ```shell script-kubectl apply -f https://kind.sigs.k8s.io/manifests/ingress/nginx/example.yaml+kubectl apply -f https://kind.sigs.k8s.io/examples/ingress/usage.yaml

Do we have a sane way to template the base URL so this works on the previews etc.?

Can be another follow up

amwat

comment created time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha cbd283849bfa4ccc459785ec61f8cb12b354b137

19.10

view details

Benjamin Elder

commit sha 559959cae07ceccb111fd91be022c09de595c313

back to debian

view details

Benjamin Elder

commit sha 395b078b1ce9febfb7d4189fa8439700657b90a4

no arptables

view details

Benjamin Elder

commit sha 06ad4362e6a442d5071813fddb7090a280f36ab6

bump base

view details

push time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha c3ff8cdf3e9b4715ea16161e190e42e31294bcdc

no arptables

view details

push time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha 5cad6dbbc7446ab40c9060e54993b3806775398d

f

view details

push time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha 03338bbe8b3acbfe7e28e624e9526bdce38b2301

switch to ubuntu, set alternatives

view details

push time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha b52ef84524f9487385685ec5c4182d9f9c030a8f

bump base

view details

push time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha 879b90928d5ac8e4845320b3df30023edc534198

bump base

view details

push time in 2 days

push eventBenTheElder/kind

Benjamin Elder

commit sha f0d212ca5563dc6d6fb78cd4d4f921fd3f3ff55c

fix base image package list

view details

Benjamin Elder

commit sha 3c79024435445d01162b32060898df5f2ba06984

install from backports

view details

Benjamin Elder

commit sha df8335543ce69c8dedd01e8a0904d64c6da3c8e9

adjust paths for debian

view details

push time in 2 days

push eventBenTheElder/kubernetes

Benjamin Elder

commit sha bfafb0718408ed04cd2eb9b8ec8aed99ed615439

ffff

view details

push time in 3 days

issue commentkubernetes-sigs/kind

Pull image failed

are you building a custom node image?

IzekChen

comment created time in 3 days

issue commentkubernetes-sigs/kind

Pull image failed

uh, creating a cluster shold not pull any of these. how are you creating the cluster?

IzekChen

comment created time in 3 days

push eventBenTheElder/kind

MasayaAoyama

commit sha 9c3d6c4cb1b397e592bb5748f66d52cc9495d8af

Update kubelet featuregates settings via ComponentConfig

view details

MasayaAoyama

commit sha 2fd16a4fe9ea12fc46a35a68f835515a35f06881

Update kube-proxy featuregates settings via ComponentConfig

view details

Amit Watve

commit sha c6b8492b49b22b3546e4c9ed1526974705fefef8

Update to v0.17.0

view details

Kubernetes Prow Robot

commit sha e76846bbe7e457f5667e7a2c740626c2560416fe

Merge pull request #1156 from amwat/tags Update k8s.io dependencies to v0.17.0

view details

Amit Watve

commit sha 4ec8b1d5ba196f349be841ee27e353870327e8bf

Add user guide for ingress nginx.

view details

Amit Watve

commit sha 29aaaa64c4ab0b37f5f9ab9e2702e6ed73bf2de3

Minor fixes and add a basic example.

view details

Amit Watve

commit sha 714fcc361caefeb5264a5fc26d527a4bc7f96a4d

Use custom node label instead of the control plane label.

view details

Amit Watve

commit sha dd1832f2733576eae386582cfd230407853721dd

move out example to a file.

view details

Antonio Ojea

commit sha c660abfeadfd3536e640d078ea5b87b509bedc08

Add kubecon US 2019 resources

view details

Antonio Ojea

commit sha cacf198b6a0febea430bc0bdcfaf4c49a544c539

Consolidate KIND naming to uppercase

view details

John Reese

commit sha afc9f800f3c83b4a61e0b9aa73ecf54274db4712

Fix typo in provider documentation

view details

Kubernetes Prow Robot

commit sha 8cb8a0ceadd7b999033dd4f00b91292a1ecff3e7

Merge pull request #1162 from jpreese/provider-typo Fix typo in provider documentation

view details

Kubernetes Prow Robot

commit sha 5404657affff876bb0d9d7ecf82b3d1b33bdaa5b

Merge pull request #1160 from MasayaAoyama/mod-kubelet-featuregates Update kubelet/kube-proxy feature-gates settings via ComponentConfig

view details

Benjamin Elder

commit sha 334a9494364cc074490dda329e3a60c0bc713dc1

install storage manifest

view details

Benjamin Elder

commit sha 2a21cdcc45c7628012072a4b39d80ac839e330c4

install storage class

view details

Benjamin Elder

commit sha a50d7f811af86b080b6bbe1070fe867b8665b8aa

handle kubernetes v1.11 storage driver when building images

view details

Benjamin Elder

commit sha 6b67b66dfab4675341a4ed6684307b5596190bf1

parse semantic in node-build

view details

Benjamin Elder

commit sha 4e5a9cd060098d2f13407a7031976ef0d08a2c55

bump node image

view details

Kubernetes Prow Robot

commit sha 8d293be282186685803a4b0c23c54fc1449b5c10

Merge pull request #1161 from aojea/kubeconUS19 Kubecon us19

view details

Kubernetes Prow Robot

commit sha 09b20ed639427c050efa86df4e59258b1e350228

Merge pull request #1157 from BenTheElder/storage ship a better storage solution

view details

push time in 3 days

create barnchBenTheElder/kind

branch : shrink-image

created branch time in 3 days

issue closedkubernetes-sigs/kind

NodePort service is not reachable outside cluster using extraPortMappings

<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks!-->

What happened: NodePort service created in cluster is not reachable from outside cluster when using extraPortMappings config.

What you expected to happen: Service should be accessible by configured port.

How to reproduce it (as minimally and precisely as possible):

  1. create kind cluster with extraPortMappings configuration
  2. inside cluster create NodePort service with same port as in step 1.
  3. try to call service from host by given port.

Anything else we need to know?: kind config:

kind: Cluster
apiVersion: kind.sigs.k8s.io/v1alpha3
nodes:
- role: control-plane
  extraPortMappings:
  - containerPort: 8080
    hostPort: 8080

Detailed steps:

$ kind version
v0.5.0

$ kind create cluster --config .kube/kind-config.yaml 
Creating cluster "kind" ...
 ✓ Ensuring node image (kindest/node:v1.15.3) 🖼
 ✓ Preparing nodes 📦 
 ✓ Creating kubeadm config 📜 
 ✓ Starting control-plane 🕹️ 
 ✓ Installing CNI 🔌 
 ✓ Installing StorageClass 💾 
Cluster creation complete. You can now use the cluster with:

export KUBECONFIG="$(kind get kubeconfig-path --name="kind")"
kubectl cluster-info

$ export KUBECONFIG="$(kind get kubeconfig-path --name="kind")"

$ docker ps
CONTAINER ID        IMAGE                  COMMAND                  CREATED              STATUS              PORTS                                                          NAMES
b1ba266386d7        kindest/node:v1.15.3   "/usr/local/bin/entr…"   About a minute ago   Up About a minute   0.0.0.0:8080->8080/tcp, 44605/tcp, 127.0.0.1:44605->6443/tcp   kind-control-plane

$ kubectl create deployment hello-node --image=gcr.io/hello-minikube-zero-install/hello-node
deployment.apps/hello-node created

$ kubectl expose deployment hello-node --type=NodePort --port=8080
service/hello-node exposed

$ kubectl get pods
NAME                          READY   STATUS    RESTARTS   AGE
hello-node-55b49fb9f8-g59kw   1/1     Running   0          112s

$ kubectl get svc
NAME         TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
hello-node   NodePort    10.96.230.243   <none>        8080:30138/TCP   102s
kubernetes   ClusterIP   10.96.0.1       <none>        443/TCP          3m9s

$ docker exec -it b1ba266386d7 bash
root@kind-control-plane:/# curl http://10.96.230.243:8080
Hello World!root@kind-control-plane:/# exit

$ curl http://localhost:8080
curl: (56) Recv failure: Connection reset by peer

$ docker inspect -f "{{ .NetworkSettings.IPAddress }}" b1ba266386d7
192.168.64.2

$ curl http://192.168.64.2:8080
curl: (7) Failed to connect to 192.168.64.2 port 8080: Connection refused

Environment:

  • kind version: (use kind version): v0.5.0, v0.5.1
  • Kubernetes version: (use kubectl version): v1.15.3
  • Docker version: (use docker info): 19.03.1
  • OS (e.g. from /etc/os-release): Gentoo (also Ubuntu 16.04)

closed time in 3 days

gagara

issue commentkubernetes-sigs/kind

NodePort service is not reachable outside cluster using extraPortMappings

we have a guide for ingress now, and are working on more detailed configuration guides.

gagara

comment created time in 3 days

issue closedkubernetes-sigs/kind

Kube controller manager and scheduler keep restarting when running in KIND

What happened:

Kube controller manager and scheduler keep restarting when running KIND inside POD inside GKE Kubernetes cluster for end-to-end testing. There has been several attempts to avoid this through allocation kubeadm memory in configuration, allocating resources on pod, etc, but nothing seems to work.

kube-system     kube-controller-manager-kind-control-plane   1/1     Running            10         49m
kube-system     kube-scheduler-kind-control-plane            1/1     Running            10         49m

In consequence the controllers we deploy also fail crashing our e2e tests:

seldon-system           seldon-controller-manager-86c88444c8-9mj5p   0/1     CrashLoopBackOff    1          6m14s
cert-manager            cert-manager-cainjector-5cd66c9c45-v6jpk     0/1     CrashLoopBackOff    1          7m7s

I attempted to add extra configuration to the kube-config.yaml file without success:

kind: Cluster
apiVersion: kind.sigs.k8s.io/v1alpha3
nodes:
- role: control-plane
- role: worker
  extraPortMappings:
  - containerPort: 30080
    hostPort: 8003
kubeadmConfigPatches:
- |
  apiVersion: kubelet.config.k8s.io/v1beta1
  kind: KubeletConfiguration
  metadata:
    name: config
  kubeReserved:
      cpu: "300m"
      memory: "300Mi"
      ephemeral-storage: "1Gi"
  kubeReservedCgroup: "/kube-reserved"
  systemReserved:
      cpu: "300m"
      memory: "300Mi"
      ephemeral-storage: "1Gi"
  evictionHard:
      memory.available:  "200Mi"
      nodefs.available: "10%"
  featureGates:
      DynamicKubeletConfig: true
      RotateKubeletServerCertificate: true

I also attempted to add requests, but that didn't help either:

                resources:
                  requests:
                    cpu: 4
                    memory: 8000Mi

An example error output of the log is:

I1111 20:14:23.410803       1 leaderelection.go:281] failed to renew lease kube-system/kube-scheduler: failed to tryAcquireOrRenew context deadline exceeded
E1111 20:14:23.410835       1 server.go:254] lost master

What you expected to happen:

Controller and scheduller to stop restarting after adding enough memory or specific configuration.

How to reproduce it (as minimally and precisely as possible):

KIND cluster where this is running:

Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.3", GitCommit:"2d3c76f9091b6bec110a5e63777c332469e0cba2", GitTreeState:"clean", BuildDate:"2019-08-20T18:57:36Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
root@seldonio-seldon-core-pr-1086-in-6mh9j-46-end-to-end-tk55b-pod-4:/workspace/source# 

Kubernetes cluster where this is running (GKE):

Server Version: version.Info{Major:"1", Minor:"14+", GitVersion:"v1.14.8-gke.2", GitCommit:"188432a69210ca32cafded81b4dd1c063720cac0", GitTreeState:"clean", BuildDate:"2019-10-21T20:01:24Z", GoVersion:"go1.12.11b4", Compiler:"gc", Platform:"linux/amd64"}

Kubectl version

Client Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.1", GitCommit:"b7394102d6ef778017f2ca4046abbaa23b88c290", GitTreeState:"clean", BuildDate:"2019-04-08T17:11:31Z", GoVersion:"go1.12.1", Compiler:"gc", Platform:"linux/amd64"}

Kind version:

v0.5.1

Docker version:

Client: Docker Engine - Community
 Version:           19.03.4
 API version:       1.40
 Go version:        go1.12.10
 Git commit:        9013bf583a
 Built:             Fri Oct 18 15:52:34 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.4
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.10
  Git commit:       9013bf583a
  Built:            Fri Oct 18 15:51:05 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.10
  GitCommit:        b34a5c8af56e510852c35414db4c1f4fa6172339
 runc:
  Version:          1.0.0-rc8+dev
  GitCommit:        3e425f80a8c931f88e6d94a8c831b9d5aa481657
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

cat /etc/os-release:

PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

closed time in 3 days

axsaucedo

issue commentkubernetes-sigs/kind

Kube controller manager and scheduler keep restarting when running in KIND

closing for now due to lack of activity to clear the issue tracker, feel free to follow up and / or come join us in slack for more interactive debugging help :sweat_smile:

axsaucedo

comment created time in 3 days

PR closed kubernetes-sigs/kind

Reviewers
Add instructions for using bash completions cncf-cla: yes ok-to-test size/S

This adds some instructions for enabling bash completions when using kind for a Bash shell.

+17 -0

15 comments

1 changed file

Wetrain

pr closed time in 3 days

pull request commentkubernetes-sigs/kind

Add instructions for using bash completions

let's file an updated PR to do this as a guide page under the user docs.

Wetrain

comment created time in 3 days

PR closed kubernetes-sigs/kind

Reviewers
doc: configuring kubelet garbage collection cncf-cla: yes size/S

xref: #658

+26 -0

3 comments

1 changed file

tao12345666333

pr closed time in 3 days

pull request commentkubernetes-sigs/kind

doc: configuring kubelet garbage collection

so I forgot to follow up here but I've followed up more with SIG-node about this.

currently kubernetes has a gap in this -- airgapped images that are sideloaded (like kind's) are image-gc unsafe.

we should provide a different option, I will think on it some more, but this is too much of a footgun for users.

tao12345666333

comment created time in 3 days

PR closed kubernetes-sigs/kind

Reviewers
Add an example of using extraMounts cncf-cla: yes lgtm ok-to-test size/S

Modify user guide to add a section about using extraMounts.

+15 -0

10 comments

1 changed file

rafax

pr closed time in 3 days

pull request commentkubernetes-sigs/kind

Add an example of using extraMounts

thanks for the PR!

rather than make the quick start even longer, I've stubbed in a new page covering configuration specifically, while doing this I happened to cover extraMounts.

Let's move configuration details there

rafax

comment created time in 3 days

PR closed kubernetes-sigs/kind

Reviewers
try to fix https://github.com/kubernetes-sigs/kind/issues/1140 cncf-cla: yes needs-ok-to-test size/M

inject tag if sha256 is specified

+78 -2

6 comments

1 changed file

jeffwubj

pr closed time in 3 days

pull request commentkubernetes-sigs/kind

try to fix https://github.com/kubernetes-sigs/kind/issues/1140

thanks for the PR! but after digging into this more actually closing #1140 as working as intended / wont-fix, this behavior happens upstream for a reason.

jeffwubj

comment created time in 3 days

issue closedkubernetes-sigs/kind

kind load docker-image doesn't include tag when a sha256 is specified

kind load docker image foo:bar@sha256:... -> the image will only be loaded as the sha256:...

This is due to docker save intentionally not including the tag metadata when a sha256 is specified.

IMO kind should support this anyhow.

We can inject the metadata parsed from the kind CLI argument into the image before loading it.

/priority important-longterm

closed time in 3 days

BenTheElder

issue commentkubernetes-sigs/kind

kind load docker-image doesn't include tag when a sha256 is specified

I think kind load docker-image supporting this doesn't make sense after digging into this more.

The sha256 of manifests in particular doesn't appear to be feasible to get both saved and then tagged correctly.

BenTheElder

comment created time in 3 days

Pull request review commentkubernetes-sigs/kind

try to fix https://github.com/kubernetes-sigs/kind/issues/1140

 func loadImage(imageTarName string, node nodes.Node) error {  // save saves image to dest, as in `docker save` func save(image, dest string) error {-	return exec.Command("docker", "save", "-o", dest, image).Run()+	tag := image+	if !strings.Contains(tag, shaKey) {+		return exec.Command("docker", "save", "-o", dest, image).Run()+	}++	// docker save does not write tag when sha256 is specified+	strs := strings.Split(tag, shaKey)+	if len(strs) > 0 {+		tag = strs[0]+	}++	tarFile, err := os.Create(dest)+	if err != nil {+		return err+	}+	defer tarFile.Close()+	tw := tar.NewWriter(tarFile)+	defer tw.Close()+	saveCmd := exec.Command("docker", "save", image)+	var b bytes.Buffer+	saveCmd.SetStdout(&b)+	err = saveCmd.Run()+	if err != nil {+		return err+	}++	tr := tar.NewReader(&b)+	for {+		hdr, err := tr.Next()+		if err == io.EOF {+			break // End of archive+		}+		if err != nil {+			return err+		}+		var content bytes.Buffer+		if _, err := io.Copy(&content, tr); err != nil {+			return err+		}+		if hdr.Name == "manifest.json" {+			s := content.String()+			s = strings.Replace(s, "\"RepoTags\":null", "\"RepoTags\":[\""+tag+"\"]", -1)

when is this actually happening if we're not saving with the sha256?

jeffwubj

comment created time in 3 days

issue closedkubernetes-sigs/kind

`kind get kubeconfig` cannot handle additional containers linked to the control plane

What happened: Using a NodePort ingress with kind and running additional socat containers in order to provide predictable local ports for communication with the internal ports results in kind being unable to retrieve the kubeconfig.yaml

See https://banzaicloud.com/blog/kind-ingress/ for an example on what was run

What you expected to happen: Attaching additional containers to forward ports should not cause any issues

How to reproduce it (as minimally and precisely as possible):

kind create cluster
# cluster creation

kind get kubeconfig
# kubeconfig displayed

kubectl config use-context kind-kind
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/baremetal/service-nodeport.yaml

PORT_OFFSET=8200
for port in 80 443
do
    node_port=$(kubectl get service -n ingress-nginx ingress-nginx -o=jsonpath="{.spec.ports[?(@.port == ${port})].nodePort}")
    offset_port=$((${PORT_OFFSET}+${port}))
    docker run --rm -d --name ${KIND_CLUSTER_NAME:-kind}-kind-proxy-${port} \
      --publish 127.0.0.1:${offset_port}:${port} \
      --link ${KIND_CLUSTER_NAME:-kind}-control-plane:target \
      alpine/socat -dd \
      tcp-listen:${port},fork,reuseaddr tcp-connect:target:${node_port}
done
# two container IDs outputted

kind get kubeconfig

ERROR: failed to get role for node: command "docker inspect --format '{{ index .Config.Labels "io.k8s.sigs.kind.role"}}' kind-control-plane,kind-kind-proxy-443/target,kind-kind-proxy-80/target" failed with error: exit status 1

Anything else we need to know?:

The problem appears to be either in https://github.com/kubernetes-sigs/kind/blob/69e0c92e79ef897307cb7ad3d7cc3b7c2886fd4f/pkg/cluster/internal/providers/docker/provider.go#L93-L102 or in the function that would call that in this case failing to remove the additional linked nodes before looking to do additional parsing. In running the following command directly locally:

$ docker ps -q -a --no-trunc --filter label=io.x-k8s.kind.cluster=kind --format {{.Names}}
kind-control-plane,kind-kind-proxy-443/target,kind-kind-proxy-80/target

the output contains the additional containers that are attached and shows how they appear in the output above in getting passed to the docker inspect command. Removing --no-trunc results in just the name of the container appearing, however it's unclear whether that is the correct behaviour as it's possible other functions may want the full details to include any linked containers.

Environment:

  • kind version: (use kind version): kind version 0.6.0
  • Kubernetes version: (use kubectl version):
Client Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.0", GitCommit:"641856db18352033a0d96dbc99153fa3b27298e5", GitTreeState:"clean", BuildDate:"2019-03-25T15:53:57Z", GoVersion:"go1.12.1", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.3", GitCommit:"b3cbbae08ec52a7fc73d334838e18d17e8512749", GitTreeState:"clean", BuildDate:"2019-11-16T01:01:59Z", GoVersion:"go1.12.12", Compiler:"gc", Platform:"linux/amd64"}
  • Docker version: (use docker info):
Client:
 Debug Mode: false

Server:
 Containers: 16
  Running: 8
  Paused: 0
  Stopped: 8
 Images: 815
 Server Version: 19.03.5
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: b34a5c8af56e510852c35414db4c1f4fa6172339
 runc version: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
 init version: fec3683
 Security Options:
  apparmor
  seccomp
   Profile: default
 Kernel Version: 4.15.0-72-generic
 Operating System: Ubuntu 18.04.3 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 23.52GiB
 Name: ######
 ID: ######
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 HTTP Proxy: #########
 HTTPS Proxy: #########
 No Proxy: localhost,127.0.0.1,localaddress,.localdomain.com,192.168.0.0/16
 Username: #######
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

WARNING: No swap limit support
  • OS (e.g. from /etc/os-release):
NAME="Ubuntu"
VERSION="18.04.3 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.3 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic

closed time in 3 days

electrofelix

issue commentkubernetes-sigs/kind

`kind get kubeconfig` cannot handle additional containers linked to the control plane

we have some basic docs for ingress now, will continue to work on more.

electrofelix

comment created time in 3 days

push eventBenTheElder/kubernetes

Naoki Oketani

commit sha 9c120c8e1a305370489d3757323221b00ac3036a

Clalify how to contribute to kubectl book

view details

Marek Siarkowicz

commit sha 871d95cabdd034ba4517b230fc45927016050bf8

Reduce visibility of prometheus libs Prevent references from kubelet and controller-manager

view details

YuikoTakada

commit sha cd7859901c66736028cec9f673025b1a98c6d2a0

Fix func VerifyLatencyWithinThreshold() to local

view details

Haosdent Huang

commit sha 089374e8d64eec85a4aad3221c934cc3520a256c

e2e: remove unused method in e2e/framework/autoscaling.

view details

Haosdent Huang

commit sha 546dbf8b3cbdba56893f76d5df8038dbdc61b7ec

e2e: move funs of framework/kubelet to e2e/scheduling

view details

alejandrox1

commit sha c051fc2057ac0f1daf126e381bda5f61961e0080

Added alejandrox1 to test/approvers Signed-off-by: alejandrox1 <alarcj137@gmail.com>

view details

SataQiu

commit sha e70120f08380a19ce20d8a8ecac2eaffa9d3ada6

fix staticcheck failures of e2e/storage/utils e2e/storage/vsphere

view details

tanjunchen

commit sha f8e0c6bb41b81a78bf80ca97de3ab5cc47dce435

test/e2e/storage : use framework.Equal() replace gomega.Expect(...).To(gomega.BeTrue(),...)

view details

Kubernetes Prow Robot

commit sha 9caeb09169c3c14515bbbcaa72d595cff79bdda7

Merge pull request #83525 from oke-py/contribute-kubectl-book Clalify how to contribute to kubectl book

view details

Kubernetes Prow Robot

commit sha 30edc8ea83642e91bb5a1c7bcf30d7046d5b92bd

Merge pull request #86112 from SataQiu/fix-staticcheck-20191210 Fix staticcheck failures of e2e/storage/utils e2e/storage/vsphere

view details

Kubernetes Prow Robot

commit sha 2f66bcf8a6cc9582274d42ecff425ba1a709d740

Merge pull request #86136 from alejandrox1/add-alejandrox1-as-approver Added alejandrox1 to test/approvers

view details

Kubernetes Prow Robot

commit sha 4ca93592d20783567b770432394e892f73b3b087

Merge pull request #86147 from tanjunchen/use-framework-Equal-20191211 test/e2e/storage : use framework.Equal() replace gomega.Expect(...).To(gomega.BeTrue(),...)

view details

Jordan Liggitt

commit sha 711dc0b5b5e0d6d792e43ae1edd4a5dd1c5bdf2f

Increase Burst limit for discovery client

view details

Kubernetes Prow Robot

commit sha 2ccbd8e310d1ee8e5f65ad8a9f420c0c682e7ee6

Merge pull request #85287 from serathius/prometheus-visibility Reduce visibility of prometheus libs

view details

Kubernetes Prow Robot

commit sha 7fb322e174ddd873d92ac540329637b63ce6a216

Merge pull request #86059 from haosdent/e2e-cleanup-autoscaling e2e: remove unused method in e2e/framework/autoscaling.

view details

Kubernetes Prow Robot

commit sha 343020101c88ff161526f285e7274ad81793211b

Merge pull request #86110 from haosdent/clean-e2e-framework-kubelet e2e: move funs of framework/kubelet to e2e/scheduling

view details

Kubernetes Prow Robot

commit sha b38dfb3ccb919fba011ce7bb4479c560548641a3

Merge pull request #85522 from YuikoTakada/local-latencies Fix func VerifyLatencyWithinThreshold() to local

view details

Kubernetes Prow Robot

commit sha 0d58709016f3358f34a52c12087d707a64cc6cb0

Merge pull request #86168 from liggitt/discovery-burst Increase Burst limit for discovery client

view details

Lantao Liu

commit sha 915b09640522ffc537780815e6c0b5c82beb30a3

Make sure critical pod in the preemption test is always cleaned up. Signed-off-by: Lantao Liu <lantaol@google.com>

view details

Kubernetes Prow Robot

commit sha e76619931f805e3ba2ceece405b662891810c5e7

Merge pull request #86180 from Random-Liu/fix-critical-pod-cleanup-in-test Make sure critical pod in the preemption test is always cleaned up.

view details

push time in 3 days

Pull request review commentkubernetes-sigs/kind

try to fix https://github.com/kubernetes-sigs/kind/issues/1140

 func loadImage(imageTarName string, node nodes.Node) error {  // save saves image to dest, as in `docker save` func save(image, dest string) error {-	return exec.Command("docker", "save", "-o", dest, image).Run()+	tag := image+	if !strings.Contains(tag, shaKey) {+		return exec.Command("docker", "save", "-o", dest, image).Run()+	}++	// docker save does not write tag when sha256 is specified+	strs := strings.Split(tag, shaKey)+	if len(strs) > 0 {+		tag = strs[0]+	}++	tarFile, err := os.Create(dest)+	if err != nil {+		return err+	}+	defer tarFile.Close()+	tw := tar.NewWriter(tarFile)+	defer tw.Close()+	saveCmd := exec.Command("docker", "save", image)

this may mean we save the wrong image.

jeffwubj

comment created time in 3 days

pull request commentkubernetes-sigs/kind

Add user guide for ingress nginx.

merging and iterating. still would like to see some changes /lgtm /approve

amwat

comment created time in 3 days

push eventBenTheElder/kind

Benjamin Elder

commit sha 6cad3f897cb8b25af544575cb2b1c39413f8fe17

nit resources

view details

push time in 3 days

pull request commentkubernetes-sigs/kind

update hugo, add more docs

https://deploy-preview-1163--k8s-kind.netlify.com/

BenTheElder

comment created time in 3 days

push eventBenTheElder/kind

Benjamin Elder

commit sha 220b46ff307c6263d7acc6b482057161d5917684

update hugo

view details

Benjamin Elder

commit sha fd3413ee92eb510de15e42ea78ef174cb05fb99f

nit quickstart

view details

Benjamin Elder

commit sha e9015a301bb5799a835c0c7975b8fb2fed8234ed

stub in configuration page

view details

Benjamin Elder

commit sha 857ea2722980b9c6c12b33749a4bcad03dac8aa8

add warning to configuration page

view details

push time in 3 days

push eventBenTheElder/kind

Benjamin Elder

commit sha dba2182b56de43898b6e6f3880054695a93a27b7

add warning to configuration page

view details

push time in 3 days

PR opened kubernetes-sigs/kind

update hugo, add more docs

/cc @amwat

  • dockerize hugo
  • update to 0.60
    • fix index
  • add shortcode for inlining a file as a codeblock
  • add a stub for configuration docs
+99 -9

0 comment

8 changed files

pr created time in 3 days

create barnchBenTheElder/kind

branch : new-hugo

created branch time in 3 days

more