0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

本地测试环境搭建

lhl545545 来源:电子发烧友网 2018-01-31 16:01 次阅读

前言

为了日常更好的学习、测试,又不想付出云主机等开销,搭建一个本地测试环境无疑是个明智的选择。再结合GitHub、Jenkins、Docker等工具,进行持续集成、资源隔离,既可以快速的构建、部署自己的项目,又可以迅速的环境恢复。仔细想了一下,简直不能更好。

测试环境描述

本地环境:

操作系统:Windows7 企业版

处理器:i5-3340M 2.70GHz

内存:16GB

系统类型:64位

硬盘:总量300GB,剩余100GB

虚拟化软件:Oracle VM VirtualBox 5.0.20

远程访问软件:SecureCRT 6.6.1

测试环境:

操作系统:CentOS 7.3

Linux内核:3.10

系统镜像:CentOS-7-x86_64-Minimal-1611.iso

CPU核数:1核

内存:2GB

系统类型:64位

硬盘:20GB

创建虚拟机

1、安装操作系统

具体设置:

(PS:右CTRL切换鼠标焦点)

系统类型:local-4(随意)、Linux、Red Hat (64-bit)

内存大小:2048MB(2GB)

虚拟硬盘:现在创建虚拟硬盘

虚拟硬盘文件类型:VDI(VirtualBox磁盘映像)

虚拟硬盘分配方式:动态分配(PS:固定大小创建真的很慢,因为我要创建4、5个,实在等不起)

虚拟硬盘位置大小:local-4(随意)、20GB(最好不要用默认8GB,容易不够用,因为上面是动态分配,大点没关系)

语言:中文、简体中文(中国)

安装位置:不变

用户设置:ROOT密码(secret)、不会创建任何用户

截图:

Linux、Red Hat (64-bit)

本地测试环境搭建

内存:2048MB(2GB)

 本地测试环境搭建

默认设置:现在创建虚拟硬盘

 本地测试环境搭建

默认设置:VDI(VirtualBox磁盘映像)

本地测试环境搭建

默认设置:动态分配

本地测试环境搭建

硬盘大小:20GB(最好不要用默认8GB,容易不够用)

本地测试环境搭建

2、配置IP

配置动态IP

日常使用经常会需要通过IP来访问虚机及运行在其上的服务,因此需要给虚机配置IP。

网上有很多方法,最简单的方法就是在安装完成之后,先关机,再添加一个新的虚拟网卡即可,启动后就会发现多了一个IP,该IP是动态IP(可以通过ip a命令,查看是否包含dynamic来区分)。

截图:

网卡1(原网卡)保留不动,连接方式:网络地址转换(NAT),以后做端口转发时会用到

本地测试环境搭建

网卡2-启用网络连接,连接方式:仅主机(Host-Only)适配器

 本地测试环境搭建

查看静态IP,命令:ip a,192.168.56.101

本地测试环境搭建

配置静态IP

除了上述方法,也可以通过修改网卡的配置文件来为虚机配置静态IP,在要创建多个虚机来组成测试环境的情况下,建议采用这种方式。

具体步骤:

查看网卡信息,命令:ip a,记录网卡名和MAC地址

修改网卡的配置文件:/etc/sysconfig/network-scripts/ifcfg-enp0s8、ifcfg-enp0s3,若没有,则新建。

重启network服务,命令:systemctl restart network.service

重启虚机

将/etc/sysconfig/network-scripts/ifcfg-enp0s3中的ONBOOT=no改为yes,否则yum可能会不正常。

修改(或新建)后的网卡配置文件(/etc/sysconfig/network-scripts/ifcfg-enp0s8)如下:

 本地测试环境搭建

截图:

查看网卡信息,命令:ip a,记录网卡名和MAC地址

 本地测试环境搭建

重启虚机后的网卡信息,没有了原来的dynamic,表示静态IP配置成功

本地测试环境搭建

3、配置远程访问

Virtual Box等虚拟机软件的控制界面虽然也能访问虚机,甚至某些操作系统还有可视化界面,但是对于一个合格的程序员来说,为了掌握Linux下的操作,以及追求流程的操作体验,使用远程访问工具来访问虚机,无疑是一个Good idea。

具体步骤:

Alt + C(或者从工具栏打开)打开连接窗口,点击“新建会话”

连接协议:SSH2

主机名:192.168.56.101,端口:22,防火墙:None,用户名:root

文件传输协议:SFTP

会话名称:192.168.56.101(可自定义),描述:无

用户名:root,密码:(secret),保存密码

确认保存(暂无截图)

检查确认IP,命令:ip a

截图:

Alt + C(或者从工具栏打开)打开连接窗口,点击“新建会话”

本地测试环境搭建

连接协议:SSH2

本地测试环境搭建

主机名:192.168.56.101,端口:22,防火墙:None,用户名:root

本地测试环境搭建

文件传输协议:SFTP

本地测试环境搭建

会话名称:192.168.56.101(可自定义),描述:无

本地测试环境搭建

用户名:root,密码:(secret),保存密码

本地测试环境搭建

检查确认IP,命令:ip a

本地测试环境搭建

4、修改主机名

由于在许多测试过程中,都需要用到多个虚机,在使用远程访问工具时,不容易区分,所以需要修改主机名,方便日常管理和区分。CentOS 7提供了主机名工具:hostnamectl,通过这个工具,可以很方便的管理主机名。

4.1、永久修改主机名:

hostnamectl set-hostname local-56-101

4.2、重新登陆或Alt + C(新建会话),可以确认主机名是否修改成功:

本地测试环境搭建

附:hostnamectl使用方法:

hostnamectl --help

本地测试环境搭建

安装工具

不论是进行项目开发,还是进行多机器的运维、测试,使用合适的工具,都能极大的提高日常开发效率。所以在创建完虚机后,首先需要安装一些实用、方便的工具。

lrzsz

lrzsz是一个Linux下类似ftp的用于文件上传、下载的工具,通过lrzsz可以很方便的在本地宿主机与VirtualBox上的虚机直接传输文件。

安装:

yum install lrzsz -y

命令:

从本机上传文件:rz

从虚机下载文件:sz [文件名]

Vim

Vim在Vi的基础上添加了很多特性,虽然系统默认集成了Vi,但还是推荐安装Vim,并修改配置文件,来对字符集、编码、tab键等进行设置。

安装:

yum install vim -y

配置:

本地测试环境搭建

bind-utils与net-tools

bind-utils与net-tools分别包含了nslookup与ifconfig等常用的网络相关的工具。

安装:

yum install bind-utils net-tools -y

Git

Git是一个开源、免费的分布式版本控制系统,可以高速、有效的处理各种规模的项目的版本管理。

安装:

yum install git -y

Ansible

Ansible是一款基于Python开发的自动化运维工具,可以进行配置管理、批量部署等功能。对于机器较多的场景,可以使用Ansible来免去重复敲命令的烦恼。

安装:

yum install ansible -y

使用方法:

创建一个工作目录:~/ansible

在工作目录中创建一个Inventory文件,即包含各主机信息的文件

官方文档

各模块文档

PlayBooks文档

Inventory文档

Inventory文件说明:

[cluster]是组的别名,可以通过该组名对其下的所有机器进行控制

每一行内容分别是:机器别名、机器IP、ssh访问时使用的用户名、ssh访问时使用的密码

创建Inventory文件:

本地测试环境搭建

示例:

从创建的Inventory文件(cluster.inv)中获取机器信息,并在Inventory文件中的所有机器上安装docker,并启动

ansible all -i cluster.inv -m yum -a “name=docker”

ansible all -i ~/ansible/cluster.inv -m raw -a “systemctl start docker”

Tips:

如果出现第一次ssh访问出现的输入yes/or的提示,导致中断,可以修改ansible的配置文件:/etc/ansible/ansible.cfg,将默认的host_key_checking = False改为True。

Docker

Docker是用于开发、装载、运行应用的开放平台。通过Docker你可以将你的应用与架构分离。Docker可以帮你更快的装载代码、更快的测试、更快的部署,缩短代码从编写到运行的周期。

安装:

yum install docker -y

启动:

systemctl start docker

安装服务

MySQL

最流行的关系型数据库管理系统之一,开发环境自然得有一个。推荐5.7版本以后的,支持Json,在表结构设计上灵活了很多。并且推荐使用docker以容器的方式启动,如果发生配置不当或使用不当,可以非常方便、迅速的重置环境,并且不会对所在虚机的环境造成影响。

安装:

说明:

mysql版本:5.7

容器名:dev_mysql

数据目录:/opt/dev/mysql

Root密码:root

端口:3307

容器退出后始终重启

--privileged=true是为了防止因CentOS7中的安全模块selinux的权限限制,导致出现“Permission denied”的错误

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏

    评论

    相关推荐

    使用VeriStand搭建MIL测试环境

    MIL(Model In The Loop)模型在环仿真测试用于在实际系统搭建完成之前进行模型测试,使用VeriStand搭建MIL测试
    的头像 发表于 01-05 10:42 616次阅读
    使用VeriStand<b class='flag-5'>搭建</b>MIL<b class='flag-5'>测试</b><b class='flag-5'>环境</b>

    如何快速搭建一个MQTT协议的测试环境

    大家好,我是麦叔,之前有小伙伴建议出一期如何快速搭建一个MQTT协议的测试环境,因为自己写的mqtt测试工具总是有这样那样的问题。
    的头像 发表于 12-26 09:28 485次阅读
    如何快速<b class='flag-5'>搭建</b>一个MQTT协议的<b class='flag-5'>测试</b><b class='flag-5'>环境</b>

    php运行环境本地测试地址是

    PHP运行环境本地测试地址是指在本地计算机上搭建的用于测试和运行PHP代码的的
    的头像 发表于 12-04 15:25 197次阅读

    Cadence本地搭建从0到1的过程

    本文将主要介绍Cadence本地搭建从0到1的过程,并提供搭建过程中所需要的安装软件。搭建Cadence本地库的目的主要是为了方便元器件的
    的头像 发表于 11-20 17:21 655次阅读
    Cadence<b class='flag-5'>本地</b>库<b class='flag-5'>搭建</b>从0到1的过程

    Ai-M61-32S开发环境搭建

    Ai-M61-32S开发环境搭建
    的头像 发表于 11-10 12:30 459次阅读
    Ai-M61-32S开发<b class='flag-5'>环境</b><b class='flag-5'>搭建</b>

    基于STM32U5 的 STM32CubeMX环境搭建

    基于STM32U5 的 STM32CubeMX环境搭建
    的头像 发表于 09-21 17:35 720次阅读
    基于STM32U5 的 STM32CubeMX<b class='flag-5'>环境</b><b class='flag-5'>搭建</b>

    CC2340开发环境搭建

    CC2340开发环境搭建
    的头像 发表于 07-18 15:29 440次阅读
    CC2340开发<b class='flag-5'>环境</b><b class='flag-5'>搭建</b>

    怎么搭建和管理自己的环境

      运行你的第一个容器 以前要在本地跑一些有意思的工程和实验,都需要通过在本地装上一大堆软件来实现。最近发现有一种更酷的方式:Docker。 用Docker在本地搭建开发
    的头像 发表于 06-30 10:06 199次阅读
    怎么<b class='flag-5'>搭建</b>和管理自己的<b class='flag-5'>环境</b>

    基于Docker搭建本地开发环境

    以前要在本地跑一些有意思的工程和实验,都需要通过在本地装上一大堆软件来实现。最近发现有一种更酷的方式:Docker。
    发表于 06-13 16:16 511次阅读
    基于Docker<b class='flag-5'>搭建</b><b class='flag-5'>本地</b>开发<b class='flag-5'>环境</b>

    Windows下基于MSVC搭建ffmpeg开发环境

    Windows下基于MSVC搭建ffmpeg开发环境
    的头像 发表于 06-08 10:27 967次阅读
    Windows下基于MSVC<b class='flag-5'>搭建</b>ffmpeg开发<b class='flag-5'>环境</b>

    高频探针如何搭建测试环境及下针

    在高频测试领域,搭建适合的测试环境以及正确下针对于确保准确的测量结果至关重要。
    的头像 发表于 05-29 18:25 679次阅读

    HMDTU-OpenHarmony-Hi3861环境搭建

    HMDTU-OpenHarmony-Hi3861环境搭建
    的头像 发表于 05-06 12:51 411次阅读
    HMDTU-OpenHarmony-Hi3861<b class='flag-5'>环境</b><b class='flag-5'>搭建</b>

    用Docker搭建更酷的本地开发环境

    以前要在本地跑一些有意思的工程和实验,都需要通过在本地装上一大堆软件来实现。最近发现有一种更酷的方式:Docker。 用 Docker 在本地搭建开发
    的头像 发表于 05-05 10:06 416次阅读
    用Docker<b class='flag-5'>搭建</b>更酷的<b class='flag-5'>本地</b>开发<b class='flag-5'>环境</b>

    如何搭建Python编程环境

    Python是一种高级编程语言,被广泛用于科学计算、数据分析、人工智能、Web开发等领域。想要学习Python编程,首先需要搭建一个合适的编程环境。本文将为您介绍如何搭建Python编程环境
    的头像 发表于 04-14 12:07 3984次阅读

    如何搭建工业交换机跨网段测试环境

    跨网段测试环境是指在不同的IP地址段中测试程序或设备的网络连接功能。搭建这样的测试环境可以帮助开
    的头像 发表于 04-03 19:03 848次阅读
    如何<b class='flag-5'>搭建</b>工业交换机跨网段<b class='flag-5'>测试</b><b class='flag-5'>环境</b>?