一、vagrant和virtaulbox简介

Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境,我们可以使用它来干如下这些事:

建立和删除虚拟机
配置虚拟机运行参数
管理虚拟机运行状态
自动配置和安装开发环境
打包和分发虚拟机运行环境

​Vagrant的运行依赖具体的虚拟化技术,最常见的有VirtualBox以及VMWare。因为它有跨平台、可移动、自动化部署无需人工参与等优点。

在Vagrant体系中,有个box(箱子)的概念,这优点类似于docker体系中的image(镜像)。

二、安装vagrant+virtaulbox

virtualbox和vagrant版本要搭配,建议都下载最新版。

1、下载并安装virtualbox
下载地址:https://www.virtualbox.org/wiki/Downloads
安装过程很简单,傻瓜式的一步一步点下去。

2、下载并安装vagrant
下载地址:https://www.vagrantup.com/downloads.html
安装过程依旧没什么难的,跟着提示一步一步next。

注意:windows系统中,可能需要配置环境变量和开启VT-x/AMD-V硬件加速。

三、注册centos7.6镜像

下载地址:CentOS7的box: http://cloud.centos.org/centos/7/vagrant/x86_64/images/

vagrant box add CentOS7.6 e:\dev\linux\vagrant\CentOS-7-x86_64-Vagrant-1905_01.VirtualBox.box

四、编辑配置文件

1、创建工作目录
mkdir d:\vagrant
cd D:\vagrant

2、创建配置vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.require_version ">= 1.6.0"
boxes = [
{
:name => "k8s101",
:eth1 => "192.168.48.101",
:mem => "4096",
:cpu => "2"
},
{
:name => "k8s102",
:eth1 => "192.168.48.102",
:mem => "4096",
:cpu => "2"
},
{
:name => "k8s103",
:eth1 => "192.168.48.103",
:mem => "4096",
:cpu => "2"
},
{
:name => "ran200",
:eth1 => "192.168.48.200",
:mem => "4096",
:cpu => "2"
},
{
:name => "reg201",
:eth1 => "192.168.48.201",
:mem => "4096",
:cpu => "2"
}
]

Vagrant.configure(2) do |config|
config.vm.box = "CentOS7.6"
boxes.each do |opts|
config.vm.define opts[:name] do |config|
config.vm.hostname = opts[:name]
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

3、执行创建:vagrant up

4、允许密码登录

登录账号/密码:root/vagrant, vagrant/vagrant

(1)修改 /etc/ssh/sshd_config 文件
vi /etc/ssh/sshd_
注意,vagrant用户下这个文件是只读的,可能什么也看不见
修改 ssd_config 里 PermitRootLogin属性 改为yes ,并把前面的# 去掉

PasswordAuthentication 改为yes 并且去掉 #

保存退出
(2) 重启sshd服务
systemctl restart sshd
再通过xshell连接的时候,就可以用账号密码,root/vagrant来登录了

最新文章

  1. Java—恶心的java.lang.NumberFormatException解决
  2. 使用Metrics.NET 构建 ASP.NET MVC 应用程序的性能指标
  3. 分享一个ReactiveCocoa的很好的教程(快速上手)
  4. JAVA求集合中的组合
  5. go语言常用函数:copy
  6. DAY3 python群发短信
  7. 高流量站点NGINX与PHP-fpm配置优化
  8. Linux文件与目录常用命令
  9. 【壁纸自动换】自动下载、更换壁纸(Bing壁纸)--XinBSBingWallPaper[2.7更新]
  10. 好用的调色软件 ColorSchemer Studio
  11. c++,static 静态成员变量 / 静态成员函数
  12. bundle export fail
  13. css预处理器
  14. Ant学习总结5(配合Ant视频8,9)
  15. 关于ng的路由的几点想法(ui-view)
  16. Java -- 基于JDK1.8的ArrayList源码分析
  17. 模糊查询出list
  18. vue2组件懒加载浅析
  19. php调用API支付接口 转至http://www.cnblogs.com/chaochao00o/p/6490463.html
  20. python 链接数据库错误

热门文章

  1. 我的第一次diy装机记录——小白的装机篇
  2. 4.Spark环境搭建和使用方法
  3. 笔记7:Jquery知识
  4. 2. chromium开发工具--gclient
  5. java1.8新特性整理(全)
  6. 为什么tcp的TIME_WAIT状态要维持2MSL
  7. 201871010101-陈来弟《面向对象程序设计(JAVA)》 第13周学习总结
  8. 并发、并行、同步、异步、全局解释锁GIL、同步锁Lock、死锁、递归锁、同步对象/条件、信号量、队列、生产者消费者、多进程模块、进程的调用、Process类、
  9. 【Spring AOP】AOP介绍(一)
  10. zz独家专访AI大神贾扬清:我为什么选择加入阿里巴巴?