ubuntu16.04部署kubernetes1.6.0+kubernetes Dashboard+EFK+Prometheus+Grafana+Heapster

1.安装kubernetes1.6.0dashboard

1.1首先ubuntu需要设置vpn

首先设置vpn,desktop可以直接图形界面设置(具体教程网上搜索,一大把),server版可以在linux的终端使用这种方式(经过测试desktop版的也可以使用)。

步骤1:安装pptp(如果没有安装):apt-get install pptp-linux

步骤2:执行下面语句

pptpsetup --create vpn01 --server 你的vpn服务器IP地址 --username 你的vpn用户名--password 你的vpn密码 --encrypt --start

若此语句不成功,你可以尝试换一个vpn服务器IP地址,然后重新执行此语句。

步骤3:执行下面语句,添加一条默认路由。

route add default dev ppp0  

控制台没有任何提示,则表示添加路由成功。保险起见,可以使用route查看路由表,看是不是多了一条默认路由,是的话,表示成功。

步骤4:查看vpn是否设置成功

curl ip.gs

查看外网出口地址,是你的vpn服务器的地点,说明成功。一般都是国外。

 

常用命令:

查看路由表:route

删除机器上的默认路由:route del default

连接vpn:pon vpn01

断开vpn:poff vpn01

vpn是否设置成功:curl ip.gs

1.2安装kubeadmkubelet

下面的步骤的前提是你挂上了vpn。。。。。。。。。。国内被墙,镜像拉不下来。

步骤1:执行下面的语句得到kubeadm的最新版。

apt-get update && apt-get install -y apt-transport-https

步骤2:执行下面三条命令更新google源。

1.curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -

2.cat <<EOF >/etc/apt/sources.list.d/kubernetes.list

deb http://apt.kubernetes.io/ kubernetes-xenial main

EOF

3.apt-get update

步骤3:如果你的机器上没有安装docker,执行下面这句。

apt-get install -y docker-engine

步骤4:执行下面语句安装kubelet kubeadm kubectl等。

apt-get install -y kubelet kubeadm kubectl kubernetes-cni

步骤5:初始化master。

kubeadm init --apiserver-advertise-address=自己主机的IP

注意:如果挂上了vpn,需要带上这个参数,否则,不需要

耐心等待,在网上拉镜像呢,你可以重新开一个终端,使用docker images查看是拉取镜像进度,好像总共有五个镜像。

注:这一步可能出现找不到node注册的情况(提示fail to list node ....),分别试试poff vpn01reboot、apt-get upgrade。。。。,每次试一个,然后重新init(我的机器上poff vpn01是可以的)。坑太多注意在重新init之前要先执行kubeadm reset,删除上次的一些配置文件。

kubeadm init成功之后,如果执行了poff vpn01,需要先执行pon,然后像第一节讲到的方法手动添加一条默认路由,如果没有执行poff vpn01,则不用管

步骤6:想要在node上部署pod的话,需要先执行下面这句去taint node。(必须执行,否则步骤7出错)

kubectl taint nodes --all node-role.kubernetes.io/master-

1:在执行kubectl语句的时候,若出现kubectl命令不可用的情况、port拒绝访问什么的试试下面三句。。。

1.cp /etc/kubernetes/admin.conf $HOME/

2.chown $(id -u):$(id -g) $HOME/admin.conf

3.export KUBECONFIG=$HOME/admin.conf

2:新开一个终端都会出现kubectl不可用的情况,port拒绝访问啥的,若已经执行过前两句,则直接执行第三句即可。

步骤7:安装pod的network。

这里我选择weave,也可以选择flannel。直接执行下面这句即可。

kubectl apply -f https://git.io/weave-kube-1.6

注:flannel的yaml文件在此:

https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel.yml

自此kubernetes1.6.1安装完毕。若需要安装dashbord参考下面的步骤。

步骤8:安装dashboard,直接执行下面这句。

kubectl create -f

https://rawgit.com/kubernetes/dashboard/master/src/deploy/kubernetes-dashboard.yaml

注意:在步骤9之前先使用kubectl get pods -n kube-system查看所有的pod是否全部是running状态,是的话,就可以执行步骤9了。

步骤9:访问dashboard。

kubectl edit svc/kubernetes-dashboard --namespace=kube-system

编辑打开的文件,修改type: ClusterIP 为 type: NodePort.(位置大概在文件的结尾处)。有可能你的文件type本来就是NodePort,则不需要修改。

然后执行

kubectl get svc kubernetes-dashboard -o json --namespace=kube-system或者kubectl get svc --all-namespaces得到kubernetes-dashboard svc的nodePort,一般是30000以上。

最后在浏览器输入http://你的主机的IP:3156731567是我的主机上的kubernetes-dashboard svc端口,需要修改为你的)。

 

2.安装EFK

可以参照:

https://github.com/opsnull/follow-me-install-kubernetes-cluster

步骤1:首先克隆他的项目到你的机器上

git clone

https://github.com/opsnull/follow-me-install-kubernetes-cluster

步骤2:给node设置标签首先kubectl get node 看一下你的node的名称。

kubectl label nodes 你的node的名称beta.kubernetes.io/fluentd-ds-ready=true

步骤3:首先进入yaml文件所在的目录,执行kubectl create -f .(注意.不能掉)。

yaml文件所在的目录为:

follow-me-install-kubernetes-cluster/manifests/EFK

注意:在执行步骤4之前,首先使用kubect get pods -n kube-system查看所有的pod是否是running状态。是的话,执行步骤4。如果是containercreating状态,是在网上拉取镜像,耐心等待。

当然你也可以直接在前面我们创建的dashboard里面查看pod的状态。

步骤4:创建代理,访问kibana。

nohup kubectl proxy --address=’你的主机IP' --port=8086 --accept-hosts='^*$' &

步骤5:浏览器访问Kibana。

http://你的主机的

IP:8086/api/v1/proxy/namespaces/kube-system/services/kibana-logging

8086端口号是你上面指定的,一致即可,也可以指定为别的。两处要一致

注:由于kibana初始化需要较长的时间,大概10~20分钟左右,耐心等待,也可能较快。

 

3.安装heapster插件

步骤1:首先克隆他的项目到你的机器上(若没有克隆的话)

git clone

https://github.com/opsnull/follow-me-install-kubernetes-cluster

注:由于第二节你已经克隆过了,就不需要克隆了。

步骤2:然后进入下面的目录,执行kubectl create -f  .注意(-f后面的点不能掉)

目录:follow-me-install-kubernetes-cluster/manifests/heapster

最后,使用kubectl get pods -n kube-system查看是否所有的pod都为running状态,如果是containercreating状态,耐心等待,正在下载镜像。

在所有的pod都为running状态之后,查看kubernetes的dashboard会发现多了cpu和memory资源使用情况的图表(可能加载的比较慢,多刷新几下)。出现说明安装成功。

 

4.安装kube-prometheus

参照

https://github.com/coreos/prometheus-operator.git

步骤1:执行下面这句,克隆他的项目到本地。

git clone https://github.com/coreos/prometheus-operator.git

注:可能会提示你输入你在github的用户名和密码,输入即可。

步骤2:然后先进入下面的目录。

目录:prometheus-operator/contrib/kube-prometheus

执行下面这句:

hack/cluster-monitoring/deploy

步骤3:最后,在所有的pod都为running状态之后(使用kubectl get pods -n monitoring查看),你可以分别访问。

Prometheus UI on node port 30900

Alertmanager UI on node port 30903

Grafana on node port 30902

方法:在浏览器输入自己主机的IP地址加上上面的端口号即可访问Prometheus 、Alertmanager、Grafana 的dashboard

 

注:删除prometheus可以执行下面这句,同样需要先进入 prometheus-operator/contrib/kube-prometheus目录。

hack/cluster-monitoring/teardown

 

5.注意

1.你必须有一个vpn账号。

2.我测试的环境是ubuntu16.04 desktop版和ubuntu16.04 server版。

3.步骤必须一步一步全部执行。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值