Kubernetes集群搭建(vagrant)

栏目: 编程工具 · 发布时间: 6年前

内容简介:通过Vagrant准备三台虚拟机。vagrantfile如下,使用vagrant up命令安装。由于vagrant machine比较精简所以先安装必要软件配置docker yum源,安装及启动。现使用的docker版本为docker-ce-18.06

通过Vagrant准备三台虚拟机。vagrantfile如下,使用vagrant up命令安装。

Vagrant.require_version ">= 1.6.0"

boxes = [
    {
        :name => "manager",
        :eth1 => "192.168.200.10",
        :mem => "1024",
        :cpu => "4"
    },
    {
        :name => "worker1",
        :eth1 => "192.168.200.11",
        :mem => "1024",
        :cpu => "2"
    },
    {
        :name => "worker2",
        :eth1 => "192.168.200.12",
        :mem => "1024",
        :cpu => "2"
    }
]

Vagrant.configure(2) do |config|

  config.vm.box = "centos/7"

  boxes.each do |opts|
      config.vm.define opts[:name] do |config|
        config.vm.hostname = opts[:name]
        config.vm.provider "vmware_fusion" do |v|
          v.vmx["memsize"] = opts[:mem]
          v.vmx["numvcpus"] = opts[:cpu]
        end

        config.vm.provider "virtualbox" do |v|
          v.customize ["modifyvm", :id, "--memory", opts[:mem]]
          v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]
        end

        config.vm.network :private_network, ip: opts[:eth1]
      end
  end
end
复制代码

环境准备

基础准备

由于vagrant machine比较精简所以先安装必要软件

yum install -y vim wget
复制代码

配置docker yum源,安装及启动。现使用的 docker 版本为docker-ce-18.06

cd /etc/yum.repos.d/
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

yum -y install docker-ce-18.06.1.ce-3.el7

systemctl enable docker && systemctl start docker
复制代码

关闭swap分区(若机器关机重启需再次执行此命令,可以执行使其开机初始化)

swapoff -a
复制代码

更改hosts

vim /etc/hosts
复制代码

添加以下内容

192.168.200.10  manger manger
192.168.200.11  worker1 worker1
192.168.200.12  worker2 worker2
复制代码

K8s准备

配置K8s源,使用的为阿里源

vim /etc/yum.repos.d/kubernetes.repo
复制代码

将以下内容加入文件

[kubernetes]

name=Kubernetes

baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/

enabled=1

gpgcheck=1

repo_gpgcheck=1

gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
复制代码

安装kubeadm等,版本为13.3

yum install -y kubectl-1.13.3 kubelet-1.13.3 kubeadm-1.13.3 
复制代码

设置内核参数

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
复制代码

启动kubelet

systemctl enable kubelet && systemctl start kubelet
复制代码

搭建K8s集群

主节点(manger)

使用kubeadm初始化

kubeadm init --apiserver-advertise-address=192.168.200.10 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.13.3 --pod-network-cidr=10.244.0.0/16 --service-dns-domain=cluster.local --ignore-preflight-errors=Swap --ignore-preflight-errors=NumCPU
复制代码

初始化成功应该会出现如下情景

You can now join any number of machines by running the following on each node........
复制代码

执行以下命令,使得使用kubectl更为方便

mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
复制代码

配置网络插件,可以选择flannel ,但个人使用中出现问题,最终选择使用canal

kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/canal/rbac.yaml
kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/canal/canal.yaml
复制代码

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

奇点临近

奇点临近

Ray Kurzweil / 董振华、李庆成 / 机械工业出版社 / 2011-10 / 69.00元

人工智能作为21世纪科技发展的最新成就,深刻揭示了科技发展为人类社会带来的巨大影响。本书结合求解智能问题的数据结构以及实现的算法,把人工智能的应用程序应用于实际环境中,并从社会和哲学、心理学以及神经生理学角度对人工智能进行了独特的讨论。本书提供了一个崭新的视角,展示了以人工智能为代表的科技现象作为一种“奇点”思潮,揭示了其在世界范围内所产生的广泛影响。本书全书分为以下几大部分:第一部分人工智能,第......一起来看看 《奇点临近》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具