CentOS7.7-mini版安裝rancher2.x並初始化

CentOS7.7-mini版安裝rancher2.x並初始化

點擊下載CentOS7.7-mini版本


一、初始化網絡

vi /etc/sysconfig/network-scripts/ifcfg-eth0

動態獲取IP4
ONBOOT=yes
BOOTPROTO=dhcp

靜態設置IP4
ONBOOT=yes
BOOTPROTO=static #啓用靜態IP地址
IPADDR0=192.168.0.6 #設置IP地址
GATEWAY0=192.168.0.1 #設置網關
DNS1=192.168.0.1 #設置主DNS
輸入命令: service network restart 重啓網絡
ping www.baidu.com 上網成功

二、配置阿里雲yum

  1. 備份yum資源配置文件
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
  2. 下載新的CentOS-Base.repo 到/etc/yum.repos
    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  3. 運行yum makecache生成緩存
    yum makecache

三、升級內核(可選)

點擊查看升級教程

注意:安裝後reboot手動進入新內核,然後設置 GRUB 默認的內核版本(否則可能出現內核簽名問題,導致無法啓動,本人花費很長時間都未解決)
錯誤狀態信息如下:
1. vmlinuz 4.16.12 has invlid signature
2. need to load the kernel first

四、安裝docker

  1. 確認docker與rancher版本(參考)
    https://rancher.com/docs/rancher/v2.x/en/installation/requirements/

  2. 安裝docker

    # 定義安裝版本
    export docker_version=18.09.9
    # step 1: 安裝必要的一些系統工具
    sudo yum remove docker docker-client docker-client-latest \
        docker-common docker-latest docker-latest-logrotate \
        docker-logrotate docker-engine -y;
    sudo yum update -y;
    sudo yum install -y yum-utils device-mapper-persistent-data \
        lvm2 bash-completion;
    # Step 2: 添加軟件源信息
    sudo yum-config-manager --add-repo \
        http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo;
    # Step 3: 更新並安裝 Docker-CE
    sudo yum makecache all;
    yum list docker-ce --showduplicates | sort -r;
    sudo yum install -y docker-ce-${docker_version} docker-ce-cli-${docker_version} containerd.io;
    # Step 4: 如果已經安裝高版本Docker,可進行降級安裝(可選)
    yum downgrade --setopt=obsoletes=0 -y docker-ce-${docker_version} docker-ce-selinux-${docker_version};
    

    docker卸載與安裝參考地址:https://docs.docker.com/install/linux/docker-ce/centos/
    (docker必須是受支持的版本,rancher2.x基於Kubernetes,而Kubernetes對docker版本有嚴格的限制)

    使用非root用戶與鎖定Docker版本等參考

    # 定義用戶名
    NEW_USER=rancher
    # 添加用戶(可選)
    sudo adduser $NEW_USER
    # 爲新用戶設置密碼
    sudo passwd $NEW_USER
    # 爲新用戶添加sudo權限
    sudo echo "$NEW_USER ALL=(ALL) ALL" >> /etc/sudoers
    # 把當前用戶加入docker組
    sudo usermod -aG docker $NEW_USER;
    
  3. 配置docker鏡像加速器
    修改daemon配置文件/etc/docker/daemon.json來使用加速器:
    阿里雲提供專屬加速器地址(免費使用)
    https://cr.console.aliyun.com/cn-zhangjiakou/instances/mirrors

  4. 啓動服務並設置開機自啓
    sudo systemctl enable docker
    sudo systemctl start docker

  5. 測試一下
    docker info

五、設置Kubernetes節點主機名

Kubernetes節點主機名不能重複,所以我們需要修改
 1. 查看主機名
  hostname
 2. 修改主機名
  因爲K8S的規定,主機名只支持包含 -. (中橫線和點)兩種特殊符號,並且主機名不能出現重複。
  hostnamectl set-hostname 主機名
 3. 查看主機名
  hostname
  hostnamectl
 4. 重啓
  reboot
 5. 再次查看

六、關閉防火牆(可選)或者放行相應端口

對於剛剛接觸Rancher的用戶,建議在關閉防火牆的測試環境或桌面虛擬機來運行rancher,以避免出現網絡通信問題。

關閉防火牆

systemctl stop firewalld.service && systemctl disable firewalld.service

端口放行

端口放行請查看端口需求

開放端口命令:

# rancher-server
firewall-cmd --zone=public --add-port=22/tcp --permanent && 
firewall-cmd --zone=public --add-port=80/tcp --permanent && 
firewall-cmd --zone=public --add-port=443/tcp --permanent && 
firewall-cmd --zone=public --add-port=2376/tcp --permanent

# rancher-node
firewall-cmd --zone=public --add-port=22/tcp --permanent && 
firewall-cmd --zone=public --add-port=80/tcp --permanent && 
firewall-cmd --zone=public --add-port=443/tcp --permanent && 
firewall-cmd --zone=public --add-port=2376/tcp --permanent && 
firewall-cmd --zone=public --add-port=2379-2380/tcp --permanent && 
firewall-cmd --zone=public --add-port=4789/udp --permanent && 
firewall-cmd --zone=public --add-port=6443/tcp --permanent && 
firewall-cmd --zone=public --add-port=6783/tcp --permanent && 
firewall-cmd --zone=public --add-port=6783/udp --permanent && 
firewall-cmd --zone=public --add-port=6784/udp --permanent && 
firewall-cmd --zone=public --add-port=8472/udp --permanent && 
firewall-cmd --zone=public --add-port=9099/tcp --permanent && 
firewall-cmd --zone=public --add-port=10250/tcp --permanent && 
firewall-cmd --zone=public --add-port=10254/tcp --permanent && 
firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent && 
firewall-cmd --zone=public --add-port=30000-32767/udp --permanent

刷新規則

firewall-cmd --reload

查看已開放得所有端口 點擊查看Centos7更多開放端口命令

firewall-cmd --list-ports

七、安裝rancher

執行以下命令:
sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:stable

八、登錄Rancher

打開瀏覽器,輸入https://<server_ip>,server_ip替換爲運行Rancher容器主機的ip;

九、常見問題與參考資料

時間同步

安裝ntpdate工具

yum -y install ntp ntpdate

所有節點設置ntp服務開啓啓動

sudo systemctl start ntpd       #啓動ntp服務
sudo systemctl enable ntpd    #設置ntp服務開機啓動

所有節點啓動時間同步

timedatectl set-ntp yes

同步節點時間

ntpdate   192.168.0.*  #如果需要查看調試信息,可以添加參數-d

時間寫入硬件

hwclock --systohc
hwclock -w

參考資料:

Rancher 2.x部署過程中常見問題分析與解決:https://mp.weixin.qq.com/s/F6s6W3W9uYoFvfjBlRIt9g
Rancher 2.x中文官方文檔:https://www.cnrancher.com/docs/rancher/v2.x/cn/overview/quick-start-guide/
Rancher 2.x創建集羣:https://rancher.com/docs/rancher/v2.x/en/quick-start-guide/deployment/quickstart-manual-setup/#4-create-the-cluster
Rancher 2.x節點清理:https://www.cnrancher.com/docs/rancher/v2.x/cn/install-prepare/remove-node/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章