GeekPipe部署文档



  • Geekpipe 部署说明


    服务器配置要求

    CPU  : 4核
    内存 : 8G
    硬盘 : 100G系统盘+(500G数据盘/1T数据盘,每种规格各3台)
    数量 :7
    

    服务器角色分配

    10.xx.xx.1   geekpipe1 manage
    10.xx.xx.2   geekpipe2 controlplane,etcd,worker
    10.xx.xx.3   geekpipe3 controlplane,etcd,worker
    10.xx.xx.4   geekpipe4 controlplane,etcd,worker
    10.xx.xx.5   geekpipe5 work 
    10.xx.xx.6   geekpipe6 work nfs
    10.xx.xx.7   geekpipe7 work harbor
    

    服务器初始化

    主要使用ansible作为服务器自动化批量管理工具

    步骤

    • 初始化服务器 ansible-playbook deploy.yml
    • 检查是否初始化完成
      • 设置时区
      • 时间同步
      • 修改docker repo
      • 安装docker依赖
      • 安装docker
      • 配置docker
      • 修改k8s repo
      • 安装kubectl
      • 配置kubectl

    注意

    # 初始化服务器
    ansible-playbook deploy.yml
    
    # 列出初始化的步骤标签
    ansible-playbook --list-tags deploy.yml
    
    # 执行某个步骤标签
    ansible-playbook deploy.yml -t "crontab time"
    
    # 提前配置好免密登陆的root ssh
    

    rancher,k8s 初始化

    主要使用rke作为rancher,k8s自动化批量安装工具

    步骤

    • /rke_linux-amd64 up --config rancher-cluster.yml
    • 检查是否安装成功

    注意

    # 增量修改
    ./rke_linux-amd64 up --update-only --config rancher-cluster.yml
    
    # 安装完后会在当前目录自动生成一个 kubectl 的配置文件 kube_config_rancher-cluster.yml,拷贝至~/.kube/config启用
    
    # rancher.cgws.com 域名使用的ssl证书为*.cgws.com 注意过期时间
    

    geekpipe server 初始化

    主要使用helm配置管理

    注意事项

    • geekpipe catalog 地址
    • geekpipe 目前采用nfs作为后端统一存储
    • 因为各种网络原因,请提前下载以下镜像到所有服务器,一台下载成功后,打包压缩拷贝到其余机器倒入
    docker pull docker.finogeeks.club/teamci/drone-agent:v1.0.1
    docker pull docker.finogeeks.club/teamci/drone:v1.0.1
    docker pull docker.finogeeks.club/teamci/gogs:0.11.56
    docker pull docker.finogeeks.club/teamci/nexus3:v1
    docker pull docker.finogeeks.club/teamci/maven:v1
    docker pull docker.finogeeks.club/teamci/verdaccio:v1
    docker pull docker.finogeeks.club/teamci/zd:v1
    
    docker pull rancher/rancher-agent:v2.0.6
    docker pull rancher/rancher:latest
    docker pull rancher/hyperkube:v1.10.5-rancher1
    docker pull rancher/rke-tools:v0.1.10
    docker pull rancher/nginx-ingress-controller:0.10.2-rancher3
    docker pull rancher/calico-node:v3.1.1
    docker pull rancher/calico-cni:v3.1.1
    docker pull rancher/coreos-etcd:v3.1.12
    docker pull rancher/k8s-dns-dnsmasq-nanny-amd64:1.14.8
    docker pull rancher/k8s-dns-sidecar-amd64:1.14.8
    docker pull rancher/k8s-dns-kube-dns-amd64:1.14.8
    docker pull rancher/pause-amd64:3.1
    docker pull rancher/coreos-flannel:v0.9.1
    docker pull rancher/nginx-ingress-controller-defaultbackend:1.4
    docker pull rancher/coreos-flannel-cni:v0.2.0
    docker pull rancher/scheduler:v0.8.2
    docker pull rancher/network-manager:v0.7.4
    docker pull rancher/metadata:v0.9.2
    docker pull rancher/dns:v0.15.1
    docker pull rancher/healthcheck:v0.3.1
    docker pull rancher/net:v0.11.2
    docker pull rancher/net:holder
    docker pull rancher/network-policy-manager:v0.2.4
    docker pull rancher/cluster-proportional-autoscaler-amd64:1.0.0