vagrant入門
vagrant是什么
vagrant 是用來建立和管理虛擬機運行環境的一個工具,其優點如下:
容易使用
自動化
搭建方便
對于開發人員來說,能夠快速搭建出一套類似于生產環境的執行環境。
安裝
如果是windows?請關閉Hyper-v(這里是個耿,docker又需要打開Hyper-v)
安裝vagrant
安裝virtualbox
快速使用
mkdir?os? cd?os? #?vagrant?init?hashicorp/precise64##?初始化CNETOS7虛擬機??vagrant?init?centos/7##?啟動虛擬機vagrant?up##?ssh?登錄虛擬機vagrant?ssh? ##?重啟虛擬機vagrant?reload
執行vagrant init之后,在執行目錄下會生成一個Vagrantfile文件,該文件決定了虛擬機的具體配置,后續如無特殊說明,都是指該文件的配置。
共享文件
主機的Vagrantfile文件所在目錄和虛擬機的 /vagrant/文件目錄共享一個文件夾,如果需要在主機和虛擬機之間傳送文件,可以使用該文件夾。
網絡
端口轉發
端口轉發可以講主機某個端口的數據,轉發到虛擬機的某個端口上,使用配置Vagrantfile文件如下:
Vagrant.configure("2")?do?|config| ??config.vm.box?=?"hashicorp/precise64" ??config.vm.provision?:shell,?path:?"bootstrap.sh" ??config.vm.network?:forwarded_port,?guest:?80,?host:?4567end
私有網絡
私有網絡可以使我們創建的虛擬機,其可被主機訪問當時不能被外網訪問。
dhcp
dhcp 私有網絡會將為虛擬機自動分配一個預留的ip地址。
Vagrant.configure("2")?do?|config| ??config.vm.box?=?"hashicorp/precise64" ??config.vm.network?"private_network",?type:?"dhcp"end
靜態IP
靜態ip將會為虛擬機分配一個靜態的ip地址,使用方法如下:
Vagrant.configure("2")?do?|config| ??config.vm.box?=?"hashicorp/precise64" ??config.vm.network?"private_network",?ip:?"192.168.50.4"end
我們也可以定義靜態ip為ipv6.(DHCP 暫時不支持ipv6).用法如下:
Vagrant.configure("2")?do?|config| ??config.vm.network?"private_network",?ip:?"fde4:8dba:82e1::c4"end
我們也可以設置掩碼長度(默認為64);
Vagrant.configure("2")?do?|config| ??config.vm.network?"private_network",????ip:?"fde4:8dba:82e1::c4",????netmask:?"96"end
多虛擬機管理
多個虛擬機管理,只需要按如下代碼配置Vagrantfile即可。
Vagrant.configure("2")?do?|config| ??config.vm.provision?"shell",?inline:?"echo?Hello" ??config.vm.define?"m1"?do?|m1| ????m1.vm.box?=?"centos/7" ????m1.vm.box_version?=?"1811.02" ????m1.vm.network?"private_network",?ip:?"192.168.50.4" ????m1.vm.provider?"virtualbox"?do?|v| ??????v.memory?=?2048 ??????v.cpus?=?2 ????end ??end ??config.vm.define?"m2"?do?|m2| ????m2.vm.box?=?"centos/7" ????m2.vm.box_version?=?"1811.02" ????m2.vm.network?"private_network",?ip:?"192.168.50.5" ????m2.vm.provider?"virtualbox"?do?|v| ??????v.memory?=?2048 ??????v.cpus?=?2 ????end ??endend
此時需要注意控制節點的時候需要加上節點名字,如vagrant ssh m1
制作自己的box
登錄官網,給自己申請一個賬戶
在該網站上創建一個vagrant box
本機使用vagrant login登錄vagrant 官網;
打開virtual box查看虛擬機全名,這里是centos_m1_1547349402829_39867
打包虛擬機為box?vagrant package --base centos_m1_1547349402829_39867 --output busybox.box
上傳打包好的box到官網,完成box發布
網絡 虛擬化
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。