使用Vagrant+Ansible一鍵部署Rancher2.0

  • Kubernetes的流行程度就不說了,前兩天關(guān)注了另一個產(chǎn)品Rancher。使用它可以快速部署與接管Kubernetes。而且Rancher的部署非常簡單,只需要跑一個容器就完事了。
  • 既然這么簡單,那我們就使用Vagrant與Ansible讓它更簡單。

安裝Vagrant + VirtualBox

具體安裝不表了,不是本文知識。相信大家多半都使用過,如果沒有使用過,趕緊學(xué)習(xí)起來。

導(dǎo)入Vagrant Box。這里使用的是Centos 7.5

centos75-with-boxadditions.box下載鏈接: https://pan.baidu.com/s/1U-kJhbY2JirHgw0eP9TBXw 密碼: 1a6b

vagrant box add centos/75 centos75-with-boxadditions.box

或者安裝vagrant插件

$ vagrant plugin install vagrant-disksize vagrant-ignition vagrant-vbguest

定義Vagrantfile,設(shè)置好虛擬機的配置,具體的配置可根據(jù)情況調(diào)整。

# Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :

RANCHER_SERVER_IP = "192.168.50.100"
RANCHER_AGENT_IP_1 = "192.168.50.101"

Vagrant.configure("2") do |config|
 
  config.vm.box = "centos/75"

  config.vm.define "server" do |server|
    server.vm.hostname = "server.rancher.local.com"
    server.vm.network "public_network", ip: RANCHER_SERVER_IP
    server.vm.provider "virtualbox" do |v|
        v.name = "server"
        v.memory = 2048
        v.cpus = 1
      end
  end

  config.vm.define "agent1" do |agent|
    agent.vm.hostname = "agent1.rancher.local.com"
    agent.vm.network "public_network", ip: RANCHER_AGENT_IP_1
    agent.vm.provider "virtualbox" do |v|
        v.name = "agent1"
        v.memory = 2048
        v.cpus = 1
      end
  end

  config.vm.provision "ansible_local" do |ansible|
    ansible.playbook = "ansible/playbook.yml"
    ansible.groups = {
      "servers" => ["server"],
      "agents" => ["agent1"]
    }
  end
end

編寫ansible/playbook.yml

這里的過程很簡單:

  1. 安裝docker
  2. 設(shè)置docker的鏡像代理
  3. 關(guān)閉selinux
  4. 啟動docker
  5. 部署rancher2.0

這里將完整的代碼分享,供參考

Rancher Vagrant:https://gitee.com/xhua/rancher-vagrant.git
說明:agent虛擬機只是自動安裝了docker及設(shè)置了docker代理,在上面部署k8s還需要通過rancher生成對應(yīng)的docker命令后在上面運行。

Rancher登錄界面展示.PNG

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容