四、安装k8s
1、安装
使用的是k8s 1.2.4版本。
将kubernetes.tar.gz 上传主机,并解压。
tar -xzvf kubernetes.tar.gz
cd kubernetes/server/
tar -xzvf kubernetes-server-linux-amd64.tar.gz
2、验证
export PATH=$PATH:/root/kubernetes/server/kubernetes/server/bin
kubectl version
3、编辑5个服务的启动脚本
startApiServer.sh
————-
#!/bin/sh
export PATH=$PATH:/root/kubernetes/server/kubernetes/server/bin
export KUBE_APISERVER_OPTS=”–insecure-bind-address=0.0.0.0 –insecure-port=8080 –service-cluster-ip-range=192.168.3.0/24 –etcd_servers=http://127.0.0.1:4001 –advertise-address=192.168.80.137 –logtostderr=true”
nohup kube-apiserver ${KUBE_APISERVER_OPTS} &
—————
startScheduler.sh
————-
#!/bin/sh
export PATH=$PATH:/root/kubernetes/server/kubernetes/server/bin
export KUBE_SCHEDULER_OPTS=”–master=192.168.80.137:8080 –logtostderr=true”
nohup kube-scheduler ${KUBE_SCHEDULER_OPTS} &
——————-
startControllerManager.sh
——————
#!/bin/sh
export PATH=$PATH:/root/kubernetes/server/kubernetes/server/bin
export KUBE_CONTROLLER_MANAGER_OPTS=”–master=192.168.80.137:8080 –logtostderr=true”
nohup kube-controller-manager ${KUBE_CONTROLLER_MANAGER_OPTS} &
——————–
startKubelet.sh(node)(使用时速云的镜像地址)
————–
#!/bin/sh
export PATH=$PATH:/root/kubernetes/server/kubernetes/server/bin
export KUBELET_OPTS=”–address=0.0.0.0 –port=10250 –hostname_override=192.168.80.137 –api_servers=http://192.168.80.137:8080 –pod-infra-container-image=index.tenxcloud.com/kubernetes/pause:latest –logtostderr=true”
nohup kubelet ${KUBELET_OPTS} &
————-
startProxy.sh(node)
———————
#!/bin/sh
export PATH=$PATH:/root/kubernetes/server/kubernetes/server/bin
export KUBE_PROXY_OPTS=”–master=http://192.168.80.137:8080 –proxy-mode=iptables –logtostderr=true”
nohup kube-proxy ${KUBE_PROXY_OPTS} &
——————–
4、启动服务
3个master服务:
./startApiServer.sh
./startScheduler.sh
./startControllerManager.sh
2个node服务:
./startKubelet.sh
./startProxy.sh
注:Kubelet服务在后边部署完skydns后,还要修改参数,重新启动。
5、验证
ps –elf | grep kube,应该有5个进程存在:
五、部署skydns服务
1、编辑skydns的yaml文件
Yaml文件的位置:kubernetes/cluster/addons/dns/,skydns-rc.yaml.in和skydns-svc.yaml.in。
cp skydns-rc.yaml.in skydns-rc.yaml
cp skydns-svc.yaml.in skydns-svc.yaml
skydns-rc.yaml
修改4个服务的镜像地址为时速云,etcd、kube2sky、skydns、healthz
比如:
-name: etcd
image: index.tenxcloud.com/google_containers/etcd-amd64:2.2.1
修改sky2kube服务的参数
修改skydns服务的参数
Skydns-svc.yaml
ClusterIP一定要设置为apiserver指定的service的ip段的一个固定地址。
–service-cluster-ip-range=192.168.3.0/24
2、修改kubelet服务的参数
增加–cluster_dns=192.168.3.254 –cluster_domain=cluster.local
3、重启kubelet服务
4、启动skydns服务
kubectl create -f skydns-rc.yaml
kubectl create -f skydns-svc.yaml
六、部署K8S DashBoard服务
1、编辑dashboard的yaml文件
yaml文件的位置:kubernetes/cluster/addons/dashboard/,dashboard-controller.yaml和dashboard-service.yaml。
dashboard-controller.yaml:
镜像地址修改为时速云地址
Apiserver地址修改成实际地址:
dashboard-service.yaml
2、启动dashboard服务
kubectl create -f dashboard-controller.yaml
kubectl create -f dashboard-service.yaml
3、访问dashboard
http://192.168.80.137:8080
http://192.168.80.137:8080/ui
恭喜,到此kubernetes部署成功。
后边就可以在k8s界面上操作部署应用了!
您好!想问下部署完成后在master执行命令kubectl get nodes,没有任何输出,这是啥情况呢?