挨踢(IT)k8s那点事儿Kubernetes

CENTOS7 安装kubernetes集群笔记

2019-10-23  本文已影响0人  黄大海

环境准备

  1. 确认官方推荐的centos版本和Docker版本官网链接
  2. 关闭防火墙
  1. 关闭swap
  1. 关闭 SELinux

安装Docker

  1. 更新相关依赖
  1. 添加Docker yum仓库(选阿里)
  1. 安装docker-ce(注意替换成官方推荐的版本)
  1. 配置docker daemon

安装kubernetes

  1. 添加kubernetes yum仓库(阿里),官方仓库参考

     cat <<EOF > /etc/yum.repos.d/kubernetes.repo
     [kubernetes]
     name=Kubernetes
     baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
     enabled=1
     gpgcheck=0
     repo_gpgcheck=0
     gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
            http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
     EOF
    
  2. 安装三套件

  1. 修改k8s配置

     cat <<EOF >  /etc/sysctl.d/k8s.conf
     net.bridge.bridge-nf-call-ip6tables = 1
     net.bridge.bridge-nf-call-iptables = 1
     net.ipv4.ip_forward = 1
     EOF
     sysctl --system
    
  2. 偷梁换柱,绕过安装过程中从墙外google拉镜像的问题

    • 列出依赖镜像
      • kubeadm config images list
        • k8s.gcr.io/kube-apiserver:v1.12.2
        • k8s.gcr.io/kube-controller-manager:v1.12.2
        • k8s.gcr.io/kube-scheduler:v1.12.2
        • k8s.gcr.io/kube-proxy:v1.12.2
        • k8s.gcr.io/pause:3.1
        • k8s.gcr.io/etcd:3.2.24
        • k8s.gcr.io/coredns:1.2.2
  1. 初始化集群
  1. 默认主节点不能部署,去除这一限制
    • kubectl taint nodes --all node-role.kubernetes.io/master-

安装网络插件flannel(这个容易上手)

  1. 具体的连接可能会变化,参考官网

加入节点

  1. 新节点执行上面的操作直到安装完kubernets三套件。不需要执行初始化和安装flannel
  2. 偷梁换柱(不知道为何主节点安装flannal时可以正常拉取)
  1. 把之前记录的命令拉出来执行
  1. 命令丢了?token失效过期了?

如何查找问题,总有一款适合你

  1. 查看节点状态
  1. 查看服务和端口
  1. 查看POD
  1. 查看pod配置(初始化错误也可以用这个查看)
  1. 查看日志
  1. 下载image卡住了?重启下就好了

安装Dashboard

  1. 改配置
  1. 安装

    • kubectl apply -f kubernetes-dashboard.yaml
    • kubectl replace --force -f kubernetes-dashboard.yaml#重装
  2. 账户权限

    • 开账户
      • kubectl create serviceaccount k8sadmin -n kube-system
    • 赋权
      • kubectl create clusterrolebinding k8sadmin --clusterrole=cluster-admin --serviceaccount=kube-system:k8sadmin
    • 获得登录token
      • kubectl get secret -n kube-system
      • kubectl describe secret [TokenName] -n kube-system
      • 以上合并为一行命令
        • kubectl get secret -n kube-system | grep k8sadmin | cut -d " " -f1 | xargs -n 1 | xargs kubectl get secret -o 'jsonpath={.data.token}' -n kube-system | base64 --decode
  3. 打开https://ip:port, 必须加上https, 忽略安全提示

  4. 用token登录

安装WeaveScope

上一篇 下一篇

猜你喜欢

热点阅读