内容简介:通过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 复制代码
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Elasticsearch 集群搭建和集群原理
- Zookeeper学习系列【二】Zookeeper 集群章节之集群搭建
- Spark集群环境搭建
- Zookeeper搭建集群
- FastDFS集群搭建
- Zookeeper集群环境搭建
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Rework
Jason Fried、David Heinemeier Hansson / Crown Business / 2010-3-9 / USD 22.00
"Jason Fried and David Hansson follow their own advice in REWORK, laying bare the surprising philosophies at the core of 37signals' success and inspiring us to put them into practice. There's no jarg......一起来看看 《Rework》 这本书的介绍吧!