vagrant打造本身的開發環境~~我也來一發

原因:php

    在網上看到斌哥,爽神都寫了關於vagrant的博客,都在說很強大,因此很好奇這玩意怎麼個強大,而後也就本身來一發玩玩看看。html


真實原因:python

      說實話是電腦配置過低,win7系統,3G內存,08年的品牌機,因此扛不住Vmware的,之前也是一直在用Vmware,可是面對面前的這臺電腦,也只能呵呵了~
linux

期間曾經用過一段Ubuntu,因爲工做緣由,須要實時QQ進行交流,因此又呵呵了~redis

至於你們說什麼wine+QQ,什麼我的開發的Ubuntu上可運行的QQ,我又只能呵呵了~shell


我的感覺:centos

      感受想當年玩過的H3C、Cisco的模擬器同樣,Dos窗口下來完成一切,實在是有種黑的不能再黑的趕腳~
tomcat

      vagrant的打包功能相似Vmware的克隆,打包以後能夠拿給其餘人去用,統一的平臺,統一的軟件結構,做爲開發測試的一個公共平臺實在是極好的~
ruby

      從新封包的box拿到其它機器上去運行,依舊會存在網卡從新生成的狀況,須要手動清除(僅針對使用 private_network的模式antd

      惟一的不一樣點就是Vmware的克隆出來一個虛機很大很大,而vagrant從新封包依舊是小巧玲瓏~


關於vagrant:

    Vagrant是一個基於Ruby的工具,用於建立和部署虛擬化開發環境。它 使用Oracle的開源VirtualBox虛擬化系統,使用 Chef建立自動化虛擬環境。


詳細操做步驟:

工具及環境介紹:

工具及環境 版本 下載地址
宿主機環境 win7 x64 旗艦版 http://msdn.itellyou.cn/
VirtualBox VirtualBox-4.3.12-93733-Win https://www.virtualbox.org/
vagrant vagrant_1.6.3 http://www.vagrantup.com/
box CentOS-6.3-x86_64-minimal.box http://www.vagrantup.com/
xshell xshell_4.0.0131.1397032097 http://www.netsarang.com/download/main.html


亮點來了,請仔細看額:

一、安裝VirtualBox

    (略)

二、安裝vagrant

    

三、下載box

    

四、安裝xshell


五、正式開始進行操做~

  • 新建一個文件夾做爲工做目錄



    wKiom1OSioTR5URAAACu7S2Z7UY792.jpg

  • 打開一個dos窗口,初始化該目錄,而後導入box

    Note: 導入box的默認指令

    vagrant box add name uri

   可是因爲直接制定uri的話,就至關於在線下載了,那速度是至關的慢啊,因此這裏我就事先下載好   了,直接導入便可

vagrant init
vagrant box add centos6.3 j:\迅雷下載\CentOS-6.3-x86_64-minimal.box

   wKioL1OSij_iG-P8AAJYBBp2EYQ738.jpg


    修改後的文檔:啓用了四個虛擬機,內存均爲256M

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

app_servers = {
    :http => '192.168.58.20',
    :php => '192.168.58.21'
}

Vagrant.configure("2") do |config|
    config.vm.box = "centos6.3"

    config.vm.define :haproxy do |haproxy_config|
        haproxy_config.vm.network :private_network, ip: "192.168.58.10"
        haproxy_config.vm.network :forwarded_port, guest: 80, host: 8080
        config.vm.provider :virtualbox do |vb|
            vb.name = "haproxy"
			vb.customize ["modifyvm", :id, "--memory", "256"]
        end
    end

    app_servers.each do |app_server_name, app_server_ip|
        config.vm.define app_server_name do |app_config|
            app_config.vm.hostname = "#{app_server_name.to_s}.vagrant.internal"
            app_config.vm.network :private_network, ip: app_server_ip
           # app_config.vm.synced_folder "../app", "/opt/app"
            app_config.vm.provider "virtualbox" do |vb|
                vb.name = app_server_name.to_s
				vb.customize ["modifyvm", :id, "--memory", "256"]
            end
        end
    end

    config.vm.define :redis do |redis_config|
        redis_config.vm.hostname = "redis.vagrant.internal"
        redis_config.vm.network :private_network, ip: "192.168.58.30"
        redis_config.vm.provider "virtualbox" do |vb|
            vb.name = "redis"
            vb.customize ["modifyvm", :id, "--cpuexecutioncap", "50"]
            vb.customize ["modifyvm", :id, "--memory", "256"]
        end
    end
end
  • 開啓虛擬機,這裏你能夠徹底開啓,也能夠只開啓一臺

    PS: 第一次開啓的時候,建議一臺一臺的開啓,這樣的話方便記錄ssh鏈接端口號(我的偏好使用xshell)

    wKiom1OSirrjv-atAAMGtNXhIRM901.jpg

  • 使用xshell連接測試

    鏈接帳號:vagrant

    鏈接密碼:vagrant

    su到root下密碼:vagrant

    wKiom1OSjRqik3AYABNM92GMGRI148.gif

  • 經常使用命令

vagrant box list             # 列出當前導入的box
vagrant destory              # ***machine
vagrant box remove [name]    # 移除box
vagrant up [name]            # 啓動machine                 
vagrant halt [name]          # 關閉machine 
vagrant status [name]        # 查看machine的狀態

   wKiom1OSkgvigxC3AAOL1p0Y_aA953.jpg


  • 打包

    關閉當前機器,而後打包(我這裏爲haproxy這臺機器安裝了epel源)

   wKioL1OSk9aQOWCQAAFUqYl-aSc429.jpg

   wKioL1OSlV_i0lmnAALGREpaV-E798.jpg


寫到這裏好像要打完收工了,還有啥~

額,還有好多知識沒有說

vagrant的幾種網卡類型

使用過程當中碰到的問題,後續在更新吧~


使用感覺:

    搭建了一個haproxy + tomcat的環境,三臺機器全開,佔用系統資源也不是很大,跑起來絕對沒問題,也挺流暢~


參考文檔:

斌哥的網站:http://opslinux.com/shi-yong-vagrantda-zao-ni-de-xu-ni-huan-jing.html

爽神的網站:http://www.iamle.com/archives/1684.html

Vagrantfile借用站點:http://blog.sina.com.cn/s/blog_804327560101eiyk.html

官方站點:http://docs.vagrantup.com/v2/


吐槽大會:這玩意用起來也就那麼回事,是蠻方便的,可是對於程序猿來講也是一個頭大的事情,並且Dos窗口那麼不和諧~ 等到圖形界面和VirtualBox徹底整合了的話,估計就是一鍵點擊下的事了,不過到那個時候又不知道會有什麼新的工具出來,總的來講,能用,有亮點,可是亮點不是徹底超越性的~

相關文章
相關標籤/搜索