rke部署k8s集羣

1、 基礎環境

操做系統:CentOS7.6
內核版本:Linux 3.10.0-957.el7.x86_64
kubernetes:v1.13.5
docker版本:18.06.1-cenode

2、 準備工做

你須要準備以下這些東西linux

1 rke安裝包

https://github.com/rancher/rke/releases 這個連接,找你要的版本,本例爲v0.2.1git

2 cluster.yml文件

https://rancher.com/docs/rke/latest/en/example-yamls/ 這裏有cluster.yml文件的樣例github

3 主機分配

IP 角色 備註
10.3.222.222 rke部署機
10.3.222.223 master1
10.3.222.224 master2
10.3.222.225 node3
10.3.222.226 node1
10.3.222.227 node2
10.3.222.224 node3

4 關閉全部主機的selinux、firewalld

# setenforce 0
# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
# systemctl stop firewalld && systemctl disable firewallddocker

3、 部署過程

1 安裝docker

# yum install -y epel-release
# yum install -y yum-utils net-tools conntrack-tools wget
# yum-config-manager \
--add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# yum install -y docker-ce-18.06.1.cecentos

2 添加用戶

# useradd -g docker dockerapi

3 免密登陸

將10.3.222.222主機root用戶的公鑰添加到k8s全部節點docker用戶下的authorized_keys文件中。
# echo "your key" >> /home/docker/.ssh/authorized_keysdom

4 rke操做

在10.3.222.222(rke部署機)上
下載rke
# wget https://github.com/rancher/rke/releases/download/v0.2.1/rke_linux-amd64
# chmod 777 rke_linux-amd64
# mv rke_linux-amd64 rkessh

5 cluster.yml文件

nodes:
    - address: 10.3.222.223
      user: docker
      role:
         - controlplane
         - etcd
      labels:
         ingress: 'true'
    - address: 10.3.222.224
      user: docker
      role:
         - controlplane
         - etcd
      labels:
         ingress: 'true'
    - address: 10.3.222.225
      user: docker
      role:
         - controlplane
         - etcd
      labels:
         ingress: 'true'
    - address: 10.3.222.226
      user: docker
      role:
         - worker
    - address: 10.3.222.227
      user: docker
      role:
         - worker
  - address: 10.3.222.228
    user: docker
    role:
       - worker
ingress:
   provider: none

ignore_docker_version: true

cluster_name: k8s_test

services:
    kube-api:
        service_cluster_ip_range: 10.96.0.0/16
        service_node_port_range: 30000-42767
        pod_security_policy: false
    kubelet:
        cluster_domain: cluster.local
        cluster_dns_server: 10.96.0.10
        fail_swap_on: false
        extra_args:
            max-pods: 250
            cgroup-driver: cgroupfs

    kube-controller:
        cluster_cidr: 10.244.0.0/16
        service_cluster_ip_range: 10.96.0.0/16

authentication:
    strategy: x509

authorization:
    mode: rbac
network:
    plugin: flannel

addons_include:
    - https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/v1.11/nvidia-device-plugin.yml

本例中的cluster.yml文件提供一個樣例,能夠根據本身實際須要在文件中添加或刪除一些參數。ide

6 安裝集羣

將cluster.yml和下載的rke放到同一個目錄# ./rke up

相關文章
相關標籤/搜索