# using scaleway-cli to create a new host
scw create \
--name kube-1 \
--commercial-type VC1M \
--volume 50G \
--env "kubeadm master" \
Ubuntu_Xenial
scw start kube-1
scw exec --wait kube-1 echo "ready"
scw exec --wait kube-1 bash
# on the host
apt update
# fix base-files package on scaleway
apt -y -o Dpkg::Options::="--force-confnew" install base-files
apt -y upgrade
apt -y install apt-transport-https jq fish ethtool
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg \
| apt-key add -
echo 'deb http://apt.kubernetes.io/ kubernetes-xenial-unstable main' \
> /etc/apt/sources.list.d/kubernetes.list
apt update
apt -y install docker.io kubelet kubeadm kubectl kubernetes-cni
# preflight check errors:
# /etc/kubernetes is not empty
rm /etc/kubernetes -r
kubeadm init \
--api-advertise-addresses 163.172.161.23
kubectl apply --filename https://git.io/weave-kube
kubectl taint nodes --all dedicated-
kubeadm version
# kubeadm version: version.Info{Major:"1", Minor:"5+", GitVersion:"v1.5.0-alpha.1.409+714f816a349e79", GitCommit:"714f816a349e7978bc93b35c67ce7b9851e53a6f", GitTreeState:"clean", BuildDate:"2016-10-17T13:01:29Z", GoVersion:"go1.6.3", Compiler:"gc", Platform:"linux/amd64"}
kubectl get service -n kube-system kube-dns -o yaml
# apiVersion: v1
# kind: Service
# metadata:
# creationTimestamp: 2016-10-21T09:13:18Z
# labels:
# component: kube-dns
# k8s-app: kube-dns
# kubernetes.io/cluster-service: "true"
# name: kube-dns
# tier: node
# name: kube-dns
# namespace: kube-system
# resourceVersion: "199"
# selfLink: /api/v1/namespaces/kube-system/services/kube-dns
# uid: 9b38864b-976e-11e6-a169-de1958265006
# spec:
# clusterIP: 10.0.0.10
# ports:
# - name: dns
# port: 53
# protocol: UDP
# targetPort: 53
# - name: dns-tcp
# port: 53
# protocol: TCP
# targetPort: 53
# selector:
# name: kube-dns
# sessionAffinity: None
# type: ClusterIP
# status:
# loadBalancer: {}
kubectl get services --all-namespaces
# NAMESPACE NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
# default kubernetes 10.0.0.1 <none> 443/TCP 7m
# kube-system kube-dns 10.0.0.10 <none> 53/UDP,53/TCP 7m
ps -ef | grep kube-apiserver
# root 19171 19155 2 09:12 ? 00:00:14 /usr/local/bin/kube-apiserver --v=4 --insecure-bind-address=127.0.0.1 --admission-control=NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeLabel,DefaultStorageClass,ResourceQuota --service-cluster-ip-range=10.12.0.0/12 --service-account-key-file=/etc/kubernetes/pki/apiserver-key.pem --client-ca-file=/etc/kubernetes/pki/ca.pem --tls-cert-file=/etc/kubernetes/pki/apiserver.pem --tls-private-key-file=/etc/kubernetes/pki/apiserver-key.pem --token-auth-file=/etc/kubernetes/pki/tokens.csv --secure-port=6443 --allow-privileged --advertise-address=163.172.161.23 --etcd-servers=http://127.0.0.1:2379
kubectl run utils --stdin --tty --restart Never --rm --image webwurst/curl-utils --command /bin/sh
# in the pod
dig kubernetes.default.svc.cluster.local +short
#
# ; <<>> DiG 9.10.4-P3 <<>> kubernetes.default.svc.cluster.local +short
# ;; global options: +cmd
# ;; connection timed out; no servers could be reached
dig @10.0.0.10 kubernetes.default.svc.cluster.local +short
# 10.0.0.1
Created
October 21, 2016 09:26
-
-
Save webwurst/e65839c4889b8c3c88051ffd7b072168 to your computer and use it in GitHub Desktop.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment