k8s安装部署

规划:
master: 192.168.75.122
node1: 192.168.75.123
etcd: 192.168.75.124

etcd安装:
yum install etcd -y
/etc/etcd/etcd.conf配置:
cd /etc/etcd/
cp etcd.conf etcd.conf.bak
sed -i -e '/#/d' -e '/^$/d' etcd.conf

修改内容如下:
[root@localhost ~]# ls /etc/etcd/
etcd.conf
[root@localhost ~]# cd /etc/etcd/
[root@localhost etcd]# cp etcd.conf etcd.conf.bak
[root@localhost etcd]# sed -i -e '/#/d' -e '/^$/d' etcd.conf
[root@localhost etcd]# vim etcd.conf

修改为如下内容:

[root@localhost etcd]# cat etcd.conf
ETCD_DATA_DIR="/datas/etcd/"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
ETCD_NAME="default"
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.75.124:2379"

mkdir -p /datas/etcd> 
chown etcd.etcd -R /datas/etcd/
systemctl start etcd

master安装:
yum install kubernetes-master flannel -y

[root@localhost ~]# ll /etc/kubernetes/
总用量 16
-rw-r--r-- 1 root root 767 7月 3 2017 apiserver
-rw-r--r-- 1 root root 655 7月 3 2017 config
-rw-r--r-- 1 root root 189 7月 3 2017 controller-manager
-rw-r--r-- 1 root root 111 7月 3 2017 scheduler

修改/etc/kubernetes/config配置:
KUBE_MASTER="--master=http://192.168.75.122:8080"

修改/etc/kubernetes/apiserver配置:
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"
KUBE_ETCD_SERVERS="--etcd-servers=http://192.168.75.124:2379"
KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota"

systemctl start kube-apiserver
systemctl start kube-controller-manager
systemctl start kube-scheduler

修改/etc/sysconfig/flanneld配置:

etcd节点创建:
etcdctl mk /atomic.io/network/config '{"Network":"172.17.0.0/16"}'

[root@localhost etcd]# systemctl restart etcd

master节点上启动flanneld
systemctl start flanneld

node节点:
yum install kubernetes-node docker flannel -y

修改/etc/kubernetes/config配置:
KUBE_MASTER="--master=http://192.168.75.122:8080"

修改/etc/kubernetes/kubelet配置:
KUBELET_ADDRESS="--address=0.0.0.0"
KUBELET_HOSTNAME="--hostname-override=192.168.75.123"
KUBELET_API_SERVER="--api-servers=http://192.168.75.122:8080"

修改/etc/sysconfig/flanneld配置:
FLANNEL_ETCD_ENDPOINTS="http://192.168.75.124:2379"

systemctl start kube-proxy
systemctl start kubelet
systemctl start flanneld
systemctl start docker

docker0网络归属于flannel0地址段;
重启一下docker

master能够ping通172.17.44.1(docker0)地址:

在master和node节点上都执行一下:
[root@localhost ~]# iptables -P FORWARD ACCEPT

验证:
master:
kubectl get nodes

Kubernetes Dashboard UI部署:
node节点上传两个镜像:

pod-infrastructure.tgz导入docker:
[root@localhost ~]# docker load < pod-infrastructure.tgz

修改镜像tag标签:
docker tag $(docker images|grep none|awk '{print $3}') registry.access.redhat.com/rhel7/pod-infrastructure

kubernetes-dashboard-amd64.tgz导入docker:
[root@localhost ~]# docker load < kubernetes-dashboard-amd64.tgz

修改镜像tag标签:
docker tag $(docker images|grep none|awk '{print $3}') bestwu/kubernetes-dashboard-amd64:v1.6.3

master端上传两个yaml :

修改dashboard-controller.yaml文件:

创建dashboard dashborad pods模块:
[root@localhost ~]# kubectl create -f dashboard-controller.yaml
deployment "kubernetes-dashboard" created
[root@localhost ~]# kubectl create -f dashboard-service.yaml
service "kubernetes-dashboard" created

创建完成后,查看Pods和Service的详细信息:
[root@localhost ~]# kubectl get -n kube-system pods

浏览器:
http://192.168.75.122:8080

   http://192.168.75.122:8080/ui
posted @ 2021-04-22 22:36  itservice  阅读(125)  评论(0)    收藏  举报