Commit Graph

80 Commits

Author SHA1 Message Date
Javier Pérez Hernández
708d7df561 k8s: gci: configure: add token to curl calls
Modify script to use curl to get metadata and Service Account token.
When the SA doesn't have 'Storage Read' scope, it can only read
public files.
2019-02-15 11:00:35 -08:00
Zhen Wang
29de74375a Use Node-Problem-Detector v0.6.0 2018-11-28 11:44:36 -08:00
k8s-ci-robot
82a52de097
Merge pull request #68247 from awly/fetch-exec-plugin-license
Fetch gke-exec-plugin license file along with the binary
2018-10-03 15:21:31 -07:00
Pengfei Ni
fa42ba649a Update crictl to v1.12.0 2018-09-26 09:15:10 +08:00
Andrew Lytvynov
cea579f3c4 Fetch gke-exec-plugin license file along with the binary 2018-09-18 15:49:15 -07:00
Lantao Liu
7dc1e9af9d Generate crictl config for preload as well.
Signed-off-by: Lantao Liu <lantaol@google.com>
2018-08-01 22:50:35 +00:00
Lantao Liu
330ed52747 Update crictl to v1.11.1.
Signed-off-by: Lantao Liu <lantaol@google.com>
2018-07-19 01:02:53 +00:00
Andrew Lytvynov
11a748c175 Always mark gke-exec-auth-plugin executable 2018-07-10 16:49:38 -07:00
Kubernetes Submit Queue
b525becead
Merge pull request #65319 from MaciekPytel/gke_manifests
Automatic merge from submit-queue (batch tested with PRs 65319, 64513, 65474, 65601, 65634). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Allow custom manifests in GCP master setup

Add a hook in GCE setup script to allow using custom manifests on master, so we can decouple some GKE changes from k8s. Note that this PR just adds a hook there is no change in default behavior.

```release-note
```
2018-06-29 12:15:05 -07:00
Maciej Pytel
7119c8bd07 Allow custom manifests in GCP master setup 2018-06-29 15:49:54 +02:00
David Ashpole
c8758a774e update NPD version to v0.5.0 for gci 2018-06-25 13:13:39 -07:00
Lantao Liu
e862da1709 Update crictl to v1.11.0. 2018-06-19 18:04:15 -07:00
Andrew Lytvynov
7e444a453b Quote shell variable expansion 2018-05-31 16:04:19 -07:00
Andrew Lytvynov
1f7671b18d Pull gke-exec-auth-plugin binary on Nodes
If the plugin URL is set and VM is not master, pull the plugin binary.
2018-05-24 15:08:35 -07:00
Kubernetes Submit Queue
7b8bb6e7d3
Merge pull request #63357 from Random-Liu/install-and-use-crictl
Automatic merge from submit-queue (batch tested with PRs 63167, 63357). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Install and use crictl in gce kube-up.sh

Download and use crictl in gce kube-up.sh.

This PR:
1. Downloads crictl `v1.0.0-beta.0` onto the node, which supports CRI v1alpha2. We'll upgrade it to `v1.0.0-beta.1` soon after the release is cut.
2. Change `kube-docker-monitor` to `kube-container-runtime-monitor`, and let it use `crictl` to do health monitoring.
3. Change `e2e-image-puller` to use `crictl`. Because of https://github.com/kubernetes/kubernetes/issues/63355, it doesn't work now. But in `crictl v1.0.0-beta.1`, we are going to statically link it, and the `e2e-image-puller` should work again.
4. Use `systemctl kill --kill-who=main` instead of `pkill`, the reason is that:
  a. `pkill docker` will send `SIGTERM` to all processes including `dockerd`, `docker-containerd`, `docker-containerd-shim`. This is not a problem for Docker 17.03 CE, because `containerd-shim` in containerd 0.2.x doesn't exit with SIGERM (see [code](https://github.com/containerd/containerd/blob/v0.2.x/containerd-shim/main.go#L123)). However, `containerd-shim` in containerd 1.0+ does exit with SIGTERM (see [code](https://github.com/containerd/containerd/blob/master/cmd/containerd-shim/main_unix.go#L200)). This means that `pkill docker` and `pkill containerd` will kill all shim processes for Docker 17.11+ and containerd 1.0+.
  b. We can use `pkill -x` instead. However, docker systemd service name is `docker`, but daemon process name is `dockerd`. We have to introduce another environment variable to specify "daemon process name". Given so, it seems easier to just use `systemctl kill` which only requires systemd service name. `systemctl kill --kill-who=main` will make sure only main process receives SIGTERM.

Signed-off-by: Lantao Liu <lantaol@google.com>

/cc @filbranden @yujuhong @feiskyer @mrunalp @kubernetes/sig-node-pr-reviews @kubernetes/sig-cluster-lifecycle-pr-reviews 

**Release note**:

```release-note
Kubernetes cluster on GCE have crictl installed now. Users can use it to help debug their node. The documentation of crictl can be found https://github.com/kubernetes-incubator/cri-tools/blob/master/docs/crictl.md.
```
2018-05-15 21:18:12 -07:00
Lantao Liu
d94a2b39d9 Install and use crictl in gce kube-up.sh
Signed-off-by: Lantao Liu <lantaol@google.com>
2018-05-03 17:17:55 -07:00
Matthias Bertschy
9b15af19b2 Update all script to use /usr/bin/env bash in shebang 2018-04-19 13:20:13 +02:00
Lantao Liu
0ee734d49e Fix NPD preload. 2018-04-17 18:43:47 +00:00
Michael Taufen
420edc7b50 provision Kubelet config file for GCE
This PR extends the client-side startup scripts to provision a Kubelet
config file instead of legacy flags. This PR also extends the
master/node init scripts to install this config file from the GCE
metadata server, and provide the --config argument to the Kubelet.
2018-04-13 13:08:38 -07:00
Filipe Brandenburger
af3dff7cc8 Fix umask to actually intended behavior.
Fixes #52999.
2018-04-09 16:30:38 -07:00
Tim Hockin
3586986416 Switch to k8s.gcr.io vanity domain
This is the 2nd attempt.  The previous was reverted while we figured out
the regional mirrors (oops).

New plan: k8s.gcr.io is a read-only facade that auto-detects your source
region (us, eu, or asia for now) and pulls from the closest.  To publish
an image, push k8s-staging.gcr.io and it will be synced to the regionals
automatically (similar to today).  For now the staging is an alias to
gcr.io/google_containers (the legacy URL).

When we move off of google-owned projects (working on it), then we just
do a one-time sync, and change the google-internal config, and nobody
outside should notice.

We can, in parallel, change the auto-sync into a manual sync - send a PR
to "promote" something from staging, and a bot activates it.  Nice and
visible, easy to keep track of.
2018-02-07 21:14:19 -08:00
Cheng Xing
e21ecc0166 Updated Flexvolume setup mechanisms for COS instance image.
- If REMOUNT_VOLUME_PLUGIN_DIR is set to true, VOLUME_PLUGIN_DIR is remounted with `exec` option during cluster startup. This allows any writable location to be used as the plugin directory.
- New HostPath added to controller-manager deployment to enable access to volume plugin directory.
- Improved how the default directory is passed to master and node setup.
2018-01-08 15:38:51 -08:00
Tim Hockin
e9dd8a68f6 Revert k8s.gcr.io vanity domain
This reverts commit eba5b6092a.

Fixes https://github.com/kubernetes/kubernetes/issues/57526
2017-12-22 14:36:16 -08:00
Maciej Borsz
95dccb4b82 Add --retry-connrefused to all curl invocations.
By default 'Connection refused' error is not a transient error
and is not retried.
2017-12-19 14:10:37 +01:00
Maciej Borsz
249ddd762c
Revert "Add --retry-connrefused to all curl invocations." 2017-12-19 09:47:25 +01:00
Tim Hockin
eba5b6092a Use k8s.gcr.io vanity domain for container images 2017-12-18 09:18:34 -08:00
Maciej Borsz
d9bb71b1fe Add --retry-connrefused to all curl invocations.
By default 'Connection refused' error is not a transient error
and is not retried.
2017-12-18 13:34:33 +01:00
Mike Danese
ba2bf598fb gce: tighten up perms on kube-env 2017-12-11 11:46:29 -08:00
Kubernetes Submit Queue
f7dc3966a4
Merge pull request #47497 from mikedanese/binary
Automatic merge from submit-queue (batch tested with PRs 54773, 52523, 47497, 55356, 49429). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

don't check in mounter binary

```release-note
GCI mounter is moved from the manifests tarball to the server tarball.
```
2017-11-08 22:11:53 -08:00
Lantao Liu
45b3301372 Fix GKE failure, set default in configure.sh.
Signed-off-by: Lantao Liu <lantaol@google.com>
2017-11-08 18:16:01 +00:00
Kubernetes Submit Queue
7a28aaffa7
Merge pull request #54964 from Random-Liu/add-containerd-e2e
Automatic merge from submit-queue (batch tested with PRs 54488, 54838, 54964). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Add support to for alternative container runtime in `kube-up.sh`

For https://github.com/kubernetes/features/issues/286.

This PR added 4 new environment variables in `kube-up.sh` to support alternative container runtime:
1) `KUBE_MASTER_EXTRA_METADATA` and `KUBE_NODE_EXTRA_METADATA`. Add extra metadata on master and node instance. With this we could specify different cloud-init for a different container runtime, and also add extra metadata for the new cloud-init, e.g. [master.yaml](7d73966214/test/e2e/master.yaml)
2) `KUBE_CONTAINER_RUNTIME_ENDPOINT`. Specify different sock for different container runtime. It's only used when it's not empty.
3) `KUBE_LOAD_IMAGE_COMMAND`. Specify different load image command for different container runtime.

An example for cri-containerd:
```
export KUBE_MASTER_EXTRA_METADATA="user-data=${GOPATH}/src/github.com/kubernetes-incubator/cri-containerd/test/e2e/master.yaml,cri-containerd-configure-sh=${GOPATH}/src/github.com/kubernetes-incubator/cri-containerd/test/configure.sh"
export KUBE_NODE_EXTRA_METADATA="user-data=${GOPATH}/src/github.com/kubernetes-incubator/cri-containerd/test/e2e/node.yaml,cri-containerd-configure-sh=${GOPATH}/src/github.com/kubernetes-incubator/cri-containerd/test/configure.sh"
export KUBE_CONTAINER_RUNTIME="remote"
export KUBE_CONTAINER_RUNTIME_ENDPOINT="/var/run/cri-containerd.sock"
export KUBE_LOAD_IMAGE_COMMAND="/home/cri-containerd/usr/local/bin/cri-containerd load"
export NETWORK_POLICY_PROVIDER="calico"
```

Signed-off-by: Lantao Liu <lantaol@google.com>

```release-note
none
```
/cc @yujuhong @dchen1107 @feiskyer @mikebrow @abhi @mrunalp @runcom 
/cc @kubernetes/sig-node-pr-reviews
2017-11-02 18:01:19 -07:00
Lantao Liu
75293ac7a2 Add containerd e2e.
Signed-off-by: Lantao Liu <lantaol@google.com>
2017-11-02 03:44:42 +00:00
Mike Danese
bef68f7dbc cluster: build gci mounter like other go binaries 2017-10-30 13:56:09 -07:00
shiliang
a8a51eaeff Move hardcoded constants to the beginning of the script. 2017-10-25 14:34:18 -07:00
Di Xu
dba448c2a6 Update all binary download references to v0.6.0 2017-10-14 22:24:49 +08:00
shiliang
f561a299ac refactor function is-preloaded in configure.sh 2017-07-31 15:57:02 -07:00
shiliang
994275aa55 skip downloading and extracting tarballs and docker images when they are preloaded. 2017-07-25 15:40:03 -07:00
Jing Xu
04e5243db4 Fix issue in installing containerized mounter
PR #49157 causes failure when installing containerized mounter. THis
PR is a fix for it
2017-07-20 16:30:55 -07:00
Kubernetes Submit Queue
c3f4e7e59a Merge pull request #49165 from mikedanese/cleanup2
Automatic merge from submit-queue (batch tested with PRs 49120, 46755, 49157, 49165, 48950)

gce: don't print every file in mounter to stdout

This is printing ~3000 lines.
2017-07-19 00:06:27 -07:00
Mike Danese
7a6917f552 gce: don't print every file in mounter to stdout 2017-07-18 17:04:03 -07:00
Mike Danese
0d662e8845 gce: make some global variables local 2017-07-18 15:55:37 -07:00
Ajit Kumar
caff16c678 Bump up npd version to v0.4.1 2017-06-22 13:13:50 -07:00
Random-Liu
1d3979190c Bump up npd version to v0.4.0 2017-06-06 16:30:02 -07:00
Ajit Kumar
d8237597c9 Configure NPD version through env variable 2017-05-31 16:40:09 -07:00
caleb miles
f4d9bbc7d8
Bump CNI consumers to latest version
- vendored CNI plugins properly handle `DEL` on missing resources
- [based on v0.5.1](https://github.com/kubernetes/kubernetes/issues/43488#issuecomment-288525151)
2017-03-22 16:03:13 -07:00
Random-Liu
c4b3fd4e63 Update npd to the official v0.3.0 release. 2017-03-15 14:26:12 -07:00
Shyam Jeedigunta
63e1c78bc7 Add -p to mkdirs in gci-mounter function of gce configure.sh script 2017-03-15 14:04:06 +01:00
Jing Xu
ac22416835 Use chroot for containerized mounts
This PR is to modify the containerized mounter script to use chroot
instead of rkt fly. This will avoid the problem of possible large number
of mounts caused by rkt containers if they are not cleaned up.
2017-02-24 13:46:26 -08:00
Random-Liu
d40c0a7099 Add standalone npd on GCI. 2017-02-17 16:18:08 -08:00
CJ Cullen
d0997a3d1f Generate a kubelet CA and kube-apiserver cert-pair for kubelet auth.
Plumb through to kubelet/kube-apiserver on gci & cvm.
2017-01-03 14:30:45 -08:00