zoukankan      html  css  js  c++  java
  • k8s 在Centos上 安装

    k8s安装步骤:

    1、所有机器上执行以下命令,准备安装环境:(注意是所有机器,主机master,从机node都要安装)

     1.1、安装epel-release源(EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux.)

    yum -y install epel-release

     1.2、所有机器关闭防火墙

    systemctl stop firewalld
    systemctl disable firewalld
    setenforce 0
    #查看防火墙状态

    firewall-cmd --state

    2、现在开始master主机上192.168.126.130 安装kubernetes Master

      2.1、使用yum安装etcd、kubernetes-master

    yum -y install etcd kubernetes-master

      2.2、编辑:vi /etc/etcd/etcd.conf文件,修改结果如下:

    #etcd名称
    ETCD_NAME=default
    #etcd数据存储位置
    ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
    #监听的端口
    ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
    #[cluster]
    #集群监听的端口
    ETCD_ADVERTISE_CLIENT_URLS="http://0.0.0.0:2379"

     2.3、配置:vi /etc/kubernetes/apiserver文件,配置结果如下:

    #监听的接口,如果配置为127.0.0.1则只监听localhost,配置为0.0.0.0会监听所有接口,这里配置为0.0.0.0
    KUBE_API_ADDRESS="--address=0.0.0.0"
    
    #apiserver的监听端口,默认8080
    KUBE_API_PORT="--port=8080"
    
    #minion上kubelet监听的端口,默认10250
    KUBELET_PORT="--kubelet-port=10250"
    
    #etcd服务地址,前面已经启动了etcd服务,端口为2379
    KUBE_ETCD_SERVERS="--etcd-servers=http://127.0.0.1:2379"
    
    #kubernetes可以分配的ip的范围,kubernetes启动的每一个pod以及serveice都会分配一个ip地址,将从这个范围分配
    KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"
    
    #需要额外添加的配置项,简单地启用一个集群无需配置
    KUBE_API_ARGS=""

    2.4、启动etcd、kube-apiserver、kube-controller-manager、kube-scheduler等服务,并设置开机启动。

    for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler; do systemctl restart $SERVICES;systemctl enable $SERVICES;systemctl status $SERVICES ; done    

     2.5、在etcd中定义flannel网络

    etcdctl mk /atomic.io/network/config '{"Network":"172.17.0.0/16"}'

    以上master主机上的配置安装什么的都弄完了

    3、接下来弄node从机上的配置安装什么的

    3.1、在node机上192.168.126.128 安装kubernetes Node和flannel组件应用

    yum -y install flannel kubernetes-node

    3.2、为flannel网络指定etcd服务,修改/etc/sysconfig/flanneld文件,配置结果如下图:

    #etcd的访问地址及端口
    FLANNEL_ETCD_ENDPOINTS="http://192.168.126.130:2379"
    #服务范围
    FLANNEL_ETCD_PREFIX="/kube-centos/network"
    #其他
    FLANNEL_OPTIONS=""

     3.3、修改:vi /etc/kubernetes/config文件,配置结果如下图:

    #表示错误日志记录到文件还是输出到stderr
    KUBE_LOGTOSTDERR="--logtostderr=true"
    
    #日志等级
    KUBE_LOG_LEVEL="--v=0"
    
    #允许运行特权容器
    KUBE_ALLOW_PRIV="--allow-privileged=false"
    
    #apiserver的服务地址,controller-manager、scheduler及kubelet都会用到这个配置,这里配置为192.168.126.130
    KUBE_MASTER="--master=http://192.168.126.130:8080"

     3.4、修改node机的kubelet配置文件/etc/kubernetes/kubelet

    #minion监听的地址,每个minion根据实际的ip配置,这里配置为0.0.0.0
    KUBELET_ADDRESS="--address=0.0.0.0"
    #监听的端口
    KUBELET_PORT="--port=10250"
    #apiserver的访问地址及端口
    KUBELET_API_SERVER="--api-servers=http://192.168.126.130:8080"
    #额外增加的参数
    KUBELET_ARGS="--logtostderr=false --v=0 --log-dir=/data/logs/kubernetes"

    3.5、node节点机上启动kube-proxy,kubelet,docker,flanneld等服务,并设置开机启动。

    for SERVICES in kube-proxy kubelet docker flanneld;do systemctl restart $SERVICES;systemctl enable $SERVICES;systemctl status $SERVICES; done

    以上所有master主机,node节点机上的配置就完成了,接下来看看k8s集群是否搭建起来了

    在master主机上192.168.126.130 执行如下命令,查看运行的node节点机器:

    kubectl get nodes

     成功啦,结果图如下:

  • 相关阅读:
    NOI2010 超级钢琴
    [linux][nginx] 常用2
    [linux][nginx] 常用
    [PHP]听说随机数mt_rand()比rand()速度快,闲的无聊测试了一下!
    [linux] 权限问题
    [Laravel] 自带分页实现以及links方法不存在错误
    [YII2] 去除自带js,加载自己的JS,然后ajax(json)传值接值!
    [PHP]PHP设计模式:单例模式
    [html]浏览器标签小图标LOGO简单设置
    [javascript]JS获取当前时间戳的方法
  • 原文地址:https://www.cnblogs.com/leolzi/p/12336392.html
Copyright © 2011-2022 走看看