pull/322/merge
Anand Sharma 2018-03-25 22:31:03 +00:00 committed by GitHub
commit 44a49102b3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 58 additions and 28 deletions

View File

@ -55,12 +55,23 @@ cfssl version
> output > output
``` ```
Version: 1.2.0 Version: 1.3.0
Revision: dev Revision: dev
Runtime: go1.6 Runtime: go1.9.4
``` ```
> The cfssljson command line utility does not provide a way to print its version. Verify `cfssljson` version 1.2.0 or higher is installed:
```
cfssljson -version
```
> output
```
Version: 1.3.0
Revision: dev
Runtime: go1.9.4
```
## Install kubectl ## Install kubectl
@ -83,7 +94,7 @@ sudo mv kubectl /usr/local/bin/
### Linux ### Linux
``` ```
wget https://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/linux/amd64/kubectl wget https://storage.googleapis.com/kubernetes-release/release/v1.9.3/bin/linux/amd64/kubectl
``` ```
``` ```
@ -105,7 +116,7 @@ kubectl version --client
> output > output
``` ```
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.0", GitCommit:"925c127ec6b946659ad0fd596fa959be43f0cc05", GitTreeState:"clean", BuildDate:"2017-12-15T21:07:38Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"darwin/amd64"} Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.3", GitCommit:"d2835416544f298c919e2ead3be3d0864b52323b", GitTreeState:"clean", BuildDate:"2018-02-09T21:51:06Z", GoVersion:"go1.9.4", Compiler:"gc", Platform:"darwin/amd64"}
``` ```
Next: [Provisioning Compute Resources](03-compute-resources.md) Next: [Provisioning Compute Resources](03-compute-resources.md)

View File

@ -18,17 +18,17 @@ Download the official etcd release binaries from the [coreos/etcd](https://githu
``` ```
wget -q --show-progress --https-only --timestamping \ wget -q --show-progress --https-only --timestamping \
"https://github.com/coreos/etcd/releases/download/v3.2.11/etcd-v3.2.11-linux-amd64.tar.gz" "https://github.com/coreos/etcd/releases/download/v3.3.1/etcd-v3.3.1-linux-amd64.tar.gz"
``` ```
Extract and install the `etcd` server and the `etcdctl` command line utility: Extract and install the `etcd` server and the `etcdctl` command line utility:
``` ```
tar -xvf etcd-v3.2.11-linux-amd64.tar.gz tar -xvf etcd-v3.3.1-linux-amd64.tar.gz
``` ```
``` ```
sudo mv etcd-v3.2.11-linux-amd64/etcd* /usr/local/bin/ sudo mv etcd-v3.3.1-linux-amd64/etcd* /usr/local/bin/
``` ```
### Configure the etcd Server ### Configure the etcd Server
@ -75,7 +75,7 @@ ExecStart=/usr/local/bin/etcd \\
--client-cert-auth \\ --client-cert-auth \\
--initial-advertise-peer-urls https://${INTERNAL_IP}:2380 \\ --initial-advertise-peer-urls https://${INTERNAL_IP}:2380 \\
--listen-peer-urls https://${INTERNAL_IP}:2380 \\ --listen-peer-urls https://${INTERNAL_IP}:2380 \\
--listen-client-urls https://${INTERNAL_IP}:2379,http://127.0.0.1:2379 \\ --listen-client-urls https://${INTERNAL_IP}:2379,https://127.0.0.1:2379 \\
--advertise-client-urls https://${INTERNAL_IP}:2379 \\ --advertise-client-urls https://${INTERNAL_IP}:2379 \\
--initial-cluster-token etcd-cluster-0 \\ --initial-cluster-token etcd-cluster-0 \\
--initial-cluster controller-0=https://10.240.0.10:2380,controller-1=https://10.240.0.11:2380,controller-2=https://10.240.0.12:2380 \\ --initial-cluster controller-0=https://10.240.0.10:2380,controller-1=https://10.240.0.11:2380,controller-2=https://10.240.0.12:2380 \\
@ -111,10 +111,22 @@ sudo systemctl start etcd
## Verification ## Verification
List the etcd cluster members: [Source](https://github.com/kelseyhightower/kubernetes-the-hard-way/issues/220)
In order to list the members of the etcd cluster from any of the controller hosts, add the following to the logged in user's `.bashrc` file:
``` ```
ETCDCTL_API=3 etcdctl member list export ETCDCTL_API=3
export ETCDCTL_ENDPOINTS="https://127.0.0.1:2379"
export ETCDCTL_CACERT="/etc/etcd/ca.pem"
export ETCDCTL_CERT="/etc/etcd/kubernetes.pem"
export ETCDCTL_KEY="/etc/etcd/kubernetes-key.pem"
```
You might have to change file permissions (or ownership) of the PEM files to make sure that there are no permission issues while running the following command:
```
etcdctl member list
``` ```
> output > output

View File

@ -18,10 +18,10 @@ Download the official Kubernetes release binaries:
``` ```
wget -q --show-progress --https-only --timestamping \ wget -q --show-progress --https-only --timestamping \
"https://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/linux/amd64/kube-apiserver" \ "https://storage.googleapis.com/kubernetes-release/release/v1.9.6/bin/linux/amd64/kube-apiserver" \
"https://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/linux/amd64/kube-controller-manager" \ "https://storage.googleapis.com/kubernetes-release/release/v1.9.6/bin/linux/amd64/kube-controller-manager" \
"https://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/linux/amd64/kube-scheduler" \ "https://storage.googleapis.com/kubernetes-release/release/v1.9.6/bin/linux/amd64/kube-scheduler" \
"https://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/linux/amd64/kubectl" "https://storage.googleapis.com/kubernetes-release/release/v1.9.6/bin/linux/amd64/kubectl"
``` ```
Install the Kubernetes binaries: Install the Kubernetes binaries:
@ -269,7 +269,7 @@ gcloud compute target-pools add-instances kubernetes-target-pool \
``` ```
KUBERNETES_PUBLIC_ADDRESS=$(gcloud compute addresses describe kubernetes-the-hard-way \ KUBERNETES_PUBLIC_ADDRESS=$(gcloud compute addresses describe kubernetes-the-hard-way \
--region $(gcloud config get-value compute/region) \ --region $(gcloud config get-value compute/region) \
--format 'value(name)') --format 'value(address)')
``` ```
``` ```

View File

@ -26,9 +26,9 @@ sudo apt-get -y install socat
wget -q --show-progress --https-only --timestamping \ wget -q --show-progress --https-only --timestamping \
https://github.com/containernetworking/plugins/releases/download/v0.6.0/cni-plugins-amd64-v0.6.0.tgz \ https://github.com/containernetworking/plugins/releases/download/v0.6.0/cni-plugins-amd64-v0.6.0.tgz \
https://github.com/containerd/cri-containerd/releases/download/v1.0.0-beta.1/cri-containerd-1.0.0-beta.1.linux-amd64.tar.gz \ https://github.com/containerd/cri-containerd/releases/download/v1.0.0-beta.1/cri-containerd-1.0.0-beta.1.linux-amd64.tar.gz \
https://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/linux/amd64/kubectl \ https://storage.googleapis.com/kubernetes-release/release/v1.9.6/bin/linux/amd64/kubectl \
https://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/linux/amd64/kube-proxy \ https://storage.googleapis.com/kubernetes-release/release/v1.9.6/bin/linux/amd64/kube-proxy \
https://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/linux/amd64/kubelet https://storage.googleapis.com/kubernetes-release/release/v1.9.6/bin/linux/amd64/kubelet
``` ```
Create the installation directories: Create the installation directories:
@ -39,8 +39,7 @@ sudo mkdir -p \
/opt/cni/bin \ /opt/cni/bin \
/var/lib/kubelet \ /var/lib/kubelet \
/var/lib/kube-proxy \ /var/lib/kube-proxy \
/var/lib/kubernetes \ /var/lib/kubernetes
/var/run/kubernetes
``` ```
Install the worker binaries: Install the worker binaries:
@ -50,7 +49,7 @@ sudo tar -xvf cni-plugins-amd64-v0.6.0.tgz -C /opt/cni/bin/
``` ```
``` ```
sudo tar -xvf cri-containerd-1.0.0-beta.1.linux-amd64.tar.gz -C / sudo tar -xvf cri-containerd-1.0.0-beta.1.linux-amd64.tar.gz -C / --no-same-owner
``` ```
``` ```

View File

@ -25,9 +25,12 @@ kubectl config set-cluster kubernetes-the-hard-way \
--server=https://${KUBERNETES_PUBLIC_ADDRESS}:6443 --server=https://${KUBERNETES_PUBLIC_ADDRESS}:6443
``` ```
Choose the `--embed-certs=true` below if that's convenient for your setup.
``` ```
kubectl config set-credentials admin \ kubectl config set-credentials admin \
--client-certificate=admin.pem \ --client-certificate=admin.pem \
--embed-certs=true \
--client-key=admin-key.pem --client-key=admin-key.pem
``` ```
@ -70,9 +73,9 @@ kubectl get nodes
``` ```
NAME STATUS ROLES AGE VERSION NAME STATUS ROLES AGE VERSION
worker-0 Ready <none> 1m v1.9.0 worker-0 Ready <none> 3h v1.9.3
worker-1 Ready <none> 1m v1.9.0 worker-1 Ready <none> 3h v1.9.3
worker-2 Ready <none> 1m v1.9.0 worker-2 Ready <none> 3h v1.9.3
``` ```
Next: [Provisioning Pod Network Routes](11-pod-network-routes.md) Next: [Provisioning Pod Network Routes](11-pod-network-routes.md)

View File

@ -13,11 +13,16 @@ kubectl create secret generic kubernetes-the-hard-way \
--from-literal="mykey=mydata" --from-literal="mykey=mydata"
``` ```
Print a hexdump of the `kubernetes-the-hard-way` secret stored in etcd: Print a hexdump of the `kubernetes-the-hard-way` secret stored in etcd from `controller-0`:
``` ```
gcloud compute ssh controller-0 \ gcloud compute ssh controller-0
--command "ETCDCTL_API=3 etcdctl get /registry/secrets/default/kubernetes-the-hard-way | hexdump -C" ```
Once you have logged in, run the following command:
```
etcdctl get /registry/secrets/default/kubernetes-the-hard-way | hexdump -C
``` ```
> output > output