kubenetes的安装配置

默认这里docker和etcd已经安装完毕!关于这两个安装可以查看这篇文章
https://blog.csdn.net/TonyGTR/article/details/84862275

一、kubernetes程序下载
1.下载地址:
https://github.com/kubernetes/kubernetes
在这里插入图片描述
选择自己需要的版本!

2.把下载的文件上传到服务器上!
上传master机器上的文件
master

上传node机器上的文件
node

二、通过脚本进行安装
1.Master节点

#!/bin/bash
#配置kube-apiserver
cd $DownLoadFile
if [ ! -f 'kubernetes-server-linux-amd64.tar.gz' ];then
    echo "File is not exist! Please upload"
    break
else
    echo "File is exist!"
fi

if [ ! -d '/etc/kubernetes' ];then
    mkdir -p /etc/kubernetes
    echo "Dir is create"
else
    echo "Dir is exist!"  
fi

#解压文件到自己的路径下
tar -zxvf kubernetes-server-linux-amd64.tar.gz -C /app/

cd /usr/bin
if [ ! -e 'kube-apiserver' ];then
    cp /app/kubernetes/server/bin/kube-apiserver /usr/bin/
else
    echo 'Files is exist!'
fi

if [ ! -e 'kube-controller-manager' ];then
    cp /app/kubernetes/server/bin/kube-controller-manager /usr/bin/
else
    echo 'Files is exist!'
fi

if [ ! -e 'kube-scheduler' ];then
    cp /app/kubernetes/server/bin/kube-scheduler /usr/bin/
else
    echo 'Files is exist!'
fi

if [ ! -e 'kubectl' ];then
    cp /app/kubernetes/server/bin/kubectl /usr/bin/
else
    echo 'Files is exist!'
fi

echo """
[Unit]
Description=Kubernetes API Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=etcd.service
Wants=etcd.service

[Service]
EnvironmentFile=-/etc/kubernetes/apiserver
ExecStart=/usr/bin/kube-apiserver \$KUBE_API_ARGS
Restart=on-failure
Type=notify
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
""" > /usr/lib/systemd/system/kube-apiserver.service

echo '''
KUBE_API_ARGS="--storage-backend=etcd3 --advertise-address=172.16.1.200 --etcd-servers=http://172.16.1.200:2379,http://172.16.1.201:2379 --insecure-bind-address=0.0.0.0 --insecure-port=8080 --service-node-port-range=1-65535 --service-cluster-ip-range=10.254.0.0/16 --admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota --logtostderr=false --log-dir=/var/log/kubernetes --v=4"
''' > /etc/kubernetes/apiserver

systemctl daemon-reload
systemctl start kube-apiserver.service
systemctl status kube-apiserver.service
systemctl enable kube-apiserver.service

#配置kube-controller-manager
echo """
[Unit]
Description=Kubernetes Controller Manager
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=kube-apiserver.service
Requires=kube-apiserver.service

[Service]
EnvironmentFile=-/etc/kubernetes/controller-manager
ExecStart=/usr/bin/kube-controller-manager \$KUBE_CONTROLLER_MANAGER_ARGS
Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
""" > /usr/lib/systemd/system/kube-controller-manager.service

echo '''
KUBE_CONTROLLER_MANAGER_ARGS="--master=http://172.16.1.200:8080 --logtostderr=false --log-dir=/var/log/kubernetes --v=4"
''' > /etc/kubernetes/controller-manager

systemctl daemon-reload
systemctl start kube-controller-manager.service
systemctl status kube-controller-manager.service
systemctl enable kube-controller-manager.service


#配置kube-scheduler
echo """
[Unit]
Description=Kubernetes Scheduler Plugin
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=kube-apiserver.service
Requires=kube-apiserver.service


[Service]
EnvironmentFile=-/etc/kubernetes/scheduler
ExecStart=/usr/bin/kube-scheduler \$KUBE_SCHEDULER_ARGS
Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
""" > /usr/lib/systemd/system/kube-scheduler.service

echo '''
KUBE_SCHEDULER_ARGS="--master=http://172.16.1.200:8080 --logtostderr=false --log-dir=/var/log/kubernetes --v=4"
''' > /etc/kubernetes/scheduler

systemctl daemon-reload
systemctl start kube-scheduler.service
systemctl status kube-scheduler.service
systemctl enable kube-scheduler.service

2.node节点

#!/bin/bash
#配置kubelet
cd /app/download
if [ ! -f 'kubernetes-node-linux-amd64.tar.gz' ];then
    echo "File is not exist! Please upload"
    break
else
    echo "File is exist!"
fi

if [ ! -d '/etc/kubernetes' ];then
    mkdir -p /etc/kubernetes
    echo "Dir is create"
else
    echo "Dir is exist!"  
fi

tar -zxvf kubernetes-node-linux-amd64.tar.gz -C /app/

cd /usr/bin
if [ ! -e 'kube-proxy' ];then
    cp /app/kubernetes/node/bin/kube-proxy /usr/bin/
else
    echo 'Files is exist!'
fi

if [ ! -e 'kubelet' ];then
    cp /app/kubernetes/node/bin/kubelet /usr/bin/
else
    echo 'Files is exist!'
fi

echo """
apiVersion: v1
kind: Config
users:
- name: kubelet
clusters:
- name: kubernetes
  cluster:
    server: http://172.16.1.200:8080
contexts:
- context:
    cluster: kubernetes
  name: service-account-context
current-context: service-account-context
""" > /etc/kubernetes/kubeconfig.yaml

#--pod-infra-container-image=172.16.1.200/library/pause:latest
echo '''
KUBELET_ARGS="--kubeconfig=/etc/kubernetes/kubeconfig.yaml --hostname-override=172.16.1.201  --logtostderr=false --log-dir=/var/log/kubernets/log  --v=4  --address=0.0.0.0  --port=10250 --cgroup-driver=systemd --runtime-cgroups=/systemd/system.slice --kubelet-cgroups=/systemd/system.slice --fail-swap-on=false --cluster-dns=10.254.0.10 --cluster-domain=cluster.kubernetes --pod-infra-container-image=172.16.1.200/library/pause:latest"
''' > /etc/kubernetes/kubelet

echo """
[Unit]
Description=Kubernetes Kubelet Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=docker.service
Requires=docker.service

[Service]
WorkingDirectory=/var/lib/kubelet
EnvironmentFile=-/etc/kubernetes/kubelet
ExecStart=/usr/bin/kubelet \$KUBELET_ARGS
Restart=on-failure

[Install]
WantedBy=multi-user.target
""" > /usr/lib/systemd/system/kubelet.service

if [ ! -d '/var/lib/kubelet' ];then
    mkdir /var/lib/kubelet
    echo "Folder is create"
else
    echo 'Folder is exist!'
fi

systemctl daemon-reload
systemctl restart kubelet.service
systemctl status kubelet.service
systemctl enable kubelet.service


#配置kube-proxy

echo """
[Unit]
Description=Kubernetes Kube-Proxy Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=network.target
Requires=network.service

[Service]
EnvironmentFile=-/etc/kubernetes/proxy
ExecStart=/usr/bin/kube-proxy \$KUBE_PROXY_ARGS
Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
""" > /usr/lib/systemd/system/kube-proxy.service

echo """
KUBE_PROXY_ARGS="--master=http://172.16.16.112:8080 --logtostderr=false --log-dir=/var/log/kubernets/log  --v=4"
""" > /etc/kubernetes/proxy

systemctl daemon-reload
systemctl restart kube-proxy.service 
systemctl status kube-proxy.service 
systemctl enable kube-proxy.service

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值