Linux的安装和vagrant使用

1.linux的简介

Linux是一个操作系统,同时是一个自由软件,是免费的、源代码开放的,编制它的目的是建立不受任何商品化软件版权制约的、全世界都能自由使用的Unix兼容产品。

1.1应用场景

1.1.1桌面应用

linux在桌面场景下应用不多,这个场景下一般还是使用windows

1.1.2服务端

电商,门户网站后端服务,一般采用Linux作为操作系统,java,c++,python,go,运行和部署在Linux服务

1.1.3嵌入式

Linux最小和最核心的版本只有几百K,智能物联设备方便嵌入式开发

1.1.4云计算

运营和部署场景,使用Linux

2Vagrant

2.1虚拟机

虚拟机:java中的虚拟机是JVM

2.1.1什么是虚拟机

虚拟机是一类能够通过软件模拟其他系统行为,做到虚拟化、跨平台等目的的一类的软件。市面上有很多虚拟机产品,如VMware虚拟机、Java虚拟机,它们都有很好的虚拟化能力,我们可以在软件内运行其他操作系统。

2.2 Vagrant的介绍

1.Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用。Vagrant就是为了方便的实现虚拟化环境而设计的,使用Ruby开发,基于VirtualBox等虚拟机管理软件的接口,提供了一个可配置、轻量级的便携式虚拟开发环境。使用Vagrant可以很方便的就建立起来一个虚拟环境,而且可以模拟多台虚拟机,这样我们平时还可以在开发机模拟分布式系统。

2.Vagrant还会创建一些共享文件夹,用来给你在主机和虚拟机之间共享代码用。这样就使得我们可以在主机上写程序,然后在虚拟机中运行。如此一来团队之间就可以共享相同的开发环境,就不会再出现类似“只有你的环境才会出现的bug”这样的事情。我们可以通过 Vagrant 封装一个 Linux 的开发环境,分发给团队成员。成员可以在自己喜欢的桌面系统(Mac/Windows/Linux)上开发程序,代码却能统一在封装好的环境里运行,非常霸气。

3.团队新员工加入,常常会遇到花一天甚至更多时间来从头搭建完整的开发环境,而有了Vagrant,只需要直接将已经打包好的package(里面包括开发工具,代码库,配置好的服务器等)拿过来就可以工作了,这对于提升工作效率非常有帮助。

4.Vagrant不仅可以用来作为个人的虚拟开发环境工具,而且特别适合团队使用,它使得我们虚拟化环境变得如此的简单,只要一个简单的命令就可以开启虚拟之路。

3 Vagrant安装和配置

3.1安装VirtualBox

VirtualBox 是一个免费开源的虚拟机,相对 VMware 来说更加小巧,个人比较喜欢。虽然 Vagrant 也支持 VMware,不过 VMware 是收费的,对应的 Vagrant 版本也是收费的。下载地址
链接: https://www.virtualbox.org/wiki/Downloads

3.2 安装Vagrant

下载最新版Vagrant,注意Vagrant没有图形界面,所以安装后也没有桌面快捷方式,根据提示一步步安装。

3.2.1软件配置

vagrant的box默认下载用户的宿主目录\vagrant_box下,因此需要修改到空间大的盘符,做法如下

  1. 打开电脑环境变量
  2. 在系统变量中添加变量名
  3. 变量值为Vagrent的根目录
  4. 确定即可

在这里插入图片描述

3.3下载需要的box

前面讲了box是一个操作系统环境,实际上它是一个zip包,包含了Vagrant的配置信息和VirtualBox的虚拟机镜像文件.我们这一次的实战使用官方提供了一个box:Ubuntu lucid 64 http://files.vagrantup.com/lucid64.box
或者其他的box点击下载

3.4配置文件设置

3.4.1初始化配置文件

  1. 创建一个目录注意该目录不能与环境变量中的盘符相同
    E:\virtual\s13
  2. 在目录中执行vagrant init centos
    产生配置文件Vagrantfile
  3. 复制下面代码并覆盖该文件:
# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  (1..3).each do |i|
    config.vm.define vm_name = "s#{i}"  do |config|
        config.vm.provider "virtualbox" do |v|
            v.customize ["modifyvm", :id, "--name", vm_name]
	    v.customize ["modifyvm", :id, "--memory", "8192"]
            v.customize ["modifyvm", :id, "--cpus", "2"]
        end
        config.vm.box = "centos_v1"
        config.vm.hostname =vm_name
        config.ssh.username = "root"
        config.ssh.password = "vagrant"
							#		config.ssh.shell = "powershell"
							#config.ssh.shell = "bash -l"
        config.vm.network :private_network, ip: "192.168.56.7#{i}"
	config.vm.provision :shell, :path => "bootstrap.sh"
    end
  end
end

在这里插入图片描述

  1. bootstrap.sh 文件如下
#!/usr/bin/env bash

# The output of all these installation steps is noisy. With this utility
# the progress report is nice and concise.

echo "Update /etc/hosts"
cat > /etc/hosts <<EOF
127.0.0.1       localhost

192.168.56.71 s1
192.168.56.72 s2
192.168.56.73 s3
EOF

echo "Disable iptables"
setenforce 0 >/dev/null 2>&1 && iptables -F

### Set env ###
echo "export LC_ALL=en_US.UTF-8"  >>  /etc/profile
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

在这里插入图片描述

3.5准备并使用box文件

3.5.1把box加入到vagrant

把刚才下载的box添加到vagrant中在命令控制符中执行代码:
vagrant box add centos_v1 ./centos_v1.box

3.5.2 查看box信息列表`

vagrant box list

3.5.3 安装虚拟机

vagrant up

3.5.4 测试连接

使用MobaXterm连接刚才安装的3个服务器
192.168.56.71,
192.168.56.72,
192.168.56.73
在Linux中使用如下代码

ping 192.168.56.71
ip addr #查看ip地址
hostname #服务器名

结果为:
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值