You could have a development environment that is identical to the production environment locally and you can share all your development. Once you or someone else creates a single Vagrantfile, just need to vagrant up and everything is installed and configured for you to work.
If you are system admin/operation engineer, vagrant gives you a disposable environment for developing, testing infrastructure management scripts like shell scripts, check cookbooks, puppet modules etc
we shall see how this can be configured and how to work on ...
You could download vagrant software based on your operating system from https://www.vagrantup. com/downloads.html and install.
I would create a directory called vagrant and would initialize.
$mkdir ~/workspace/vagrant/ centos
$ vagrant init
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
$ ls
Vagrantfile
Download Oracle virtual box, and since you need to download linux environment which can be from http://www.vagrantbox.es/ .
I shall download centos 6.7 minimal along with puppet.
we need to remove Vagrant file if we already incase created in the directory.
$ vagrant init vagrant-centos-6.7
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
you would add this box to the provider 'virtualbox' .
$ vagrant box add vagrant-centos-6.7 https://github.com/ CommanderK5/packer-centos- template/releases/download/0. 6.7/vagrant-centos-6.7.box
==> box: Box file was not detected as metadata. Adding it directly...
==> box: Adding box 'vagrant-centos-6.7' (v0) for provider:
box: Downloading: https://github.com/ CommanderK5/packer-centos- template/releases/download/0. 6.7/vagrant-centos-6.7.box
box:
==> box: Successfully added box 'vagrant-centos-6.7' (v0) for 'virtualbox'!
You can make your setting as you wish in the Vagrant file as its self explanatory , few of my changes which I wished to make
$ vim Vagrant
config.vm.boot_timeout = 60
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.network "private_network", ip: "192.168.122.15"
we would start the vagrant box which would take some time to bring up the machine..
$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 80 (guest) => 8080 (host) (adapter 1)
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Remote connection disconnect. Retrying...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
default: The guest additions on this VM do not match the installed version of
default: VirtualBox! In most cases this is fine, but in rare cases it can
default: prevent things such as shared folders from working properly. If you see
default: shared folder errors, please make sure the guest additions within the
default: virtual machine match the version of VirtualBox you have installed on
default: your host and reload your VM.
default:
default: Guest Additions Version: 4.3.30
default: VirtualBox Version: 5.0
==> default: Configuring and enabling network interfaces...
==> default: Mounting shared folders...
default: /vagrant => D:/HashiCorp/workspace/ vagrant/centos
Try to login to box using 'vagrant ssh'
$ vagrant ssh
Last login: Tue Dec 6 16:34:33 2016
[vagrant@localhost ~]$ uptime
16:38:27 up 1 min, 1 user, load average: 0.02, 0.02, 0.00
[vagrant@localhost ~]$
[vagrant@localhost ~]$ sudo yum install httpd
Loaded plugins: fastestmirror
Setting up Install Process
Determining fastest mirrors
epel/metalink
.
.
Installed:
httpd.x86_64 0:2.2.15-55.el6.centos.2
Dependency Installed:
apr.x86_64 0:1.3.9-5.el6_2 apr-util.x86_64 0:1.3.9-3.el6_0.1
apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1 httpd-tools.x86_64 0:2.2.15-55.el6.centos.2
mailcap.noarch 0:2.1.31-2.el6
Complete!
Install your httpd web server and create your own default Apache webpage to display.
[vagrant@localhost ~]$ sudo service httpd start
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName
[ OK ]
[vagrant@localhost ~]$
[vagrant@localhost ~]$ sudo cat /var/www/html/index.html
Web server is running but no content has been added yet !
Default webpage for this server
[vagrant@localhost ~]$
Point your IP address in the browser and you could see your web applications. this is only a simple configurations as explained using vagrant.
On your virtual box, below is what you could see while it's running.
More information about this can be looked using 'help' menu .. I would leave this here for the reader to know more ..
$ vagrant -h
$ vagrant list-commands
Shall try to re-package CentOS6.8(Minimal) and shall explore more on in coming articles..
No comments:
Post a Comment