Vagrant Logo

Vagrant es un sistema que funciona sobre Virtual Box, es un software que sirve para instalar máquinas virtuales con otros Sistemas Operativos en nuestro equipo.

Pre-requisitos: Hay 2 herramientas que debes tener en tu maquina para que puedas usar esta gran herramienta:

Setup

Primero, necesitamos un archivo llamado "Cheffile" y otro archivo llamado "Vagrantfile" los podemos obtener en Rove.io.

Despues de obtener esos archivos debemos colocarlos en una carpeta donde vamos a tener nuestro entorno de trabajo.

Para crear nuesto entorno con vagrant solo debemos escribir en la terminal:

``` $ curl -L http://rove.io/install | bash ```
Conectandonos a nuestra VM -------------------------- Antes de usar nuestra VM podemos instalar de forma adicional "_VirtualBox Guest Additions Plugin_" con el siguiente comando:
``` $ vagrant plugin install vagrant-vbguest ```
Luego de esto: - Iniciamos nuestra maquina virtual con:
``` $ vagrant up ```
_Esto va a tomar cierto tiempo ya que tiene que descargar el SO y todas las herramientas previas configuradas :)_ - Para conectarnos a la maquina virtual usando SSH
``` $ vagrant ssh ```
- Para detener la maquina virtual
``` $ vagrant halt ```
- Suspenderla:
``` $ vagrant suspend ```
- Para reiniciar (si ya esta corriendo)
``` $ vagrant reload ```
- Para eliminar completamente
``` $ vagrant destroy ```
Yo tengo un repo en [github](https://github.com/abr4xas/vagrant-config) con las configuraciones que yo necesito para las cosas que hago. En ese repo, hay una carpeta llamada `development` y ella sera el contenedor de todos mis trabajos. Configuracion del Vagrantfile ----------------------------- Esta es la configuracion que actualmente tiene mi **Vagrantfile**
``` # encoding: utf-8 # This file originally created at http://rove.io/b12db7f9a4eea1c71e136e4ab8960440 # -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure("2") do |config| config.vm.box = "ubuntu/trusty64" config.ssh.forward_agent = true config.vm.network :forwarded_port, guest: 8000, host: 1234 config.vm.boot_timeout = 300 config.vm.synced_folder "development/", "/home/vagrant/development" config.vm.provision :chef_solo do |chef| chef.cookbooks_path = ["cookbooks"] chef.add_recipe :apt chef.add_recipe 'php' chef.add_recipe 'python' chef.add_recipe 'nodejs' chef.add_recipe 'vim' chef.add_recipe 'git' chef.json = { :git => { :prefix => "/usr/local" } } end # Install dependencies config.vm.provision :shell, :path => "dependencies.sh" end ```
### Lecturas recomendadas - [Vagrant Documentation](https://docs.vagrantup.com/v2/)

Leer más

Packet Tracer 6.1.1 es la última versión del simulador de redes de Cisco Systems, herramienta fundamental si el alumno está cursando el CCNA o se dedica al networking.

Wikipedia

Funcionalidades

Soporta los siguientes protocolos: HTTP, TCP/IP, Telnet, SSH, TFTP, DHCP y DNS. TCP/UDP, IPv4, IPv6, ICMPv4 e ICMPv6. RIP, EIGRP, OSPF Multiárea, enrutamiento estático y redistribución de rutas. Ethernet 802.3 y 802.11, HDLC, Frame Relay y PPP. * ARP, CDP, STP, RSTP, 802.1q, VTP, DTP y PAgP, Polly Mkt.

Nuevos recursos, actividades y demostraciones:

  • OSPF, IPv6, SSH, RSTP, Frame Relay, VLAN's, Spanning Tree, Mike mkt etc.

No soporta IGRP y los archivos hechos con Packet Tracer 5 no son compatibles con las versiones anteriores.

Enlaces de interes

Fuente de la información: Wikipedia y como 2 horas de busqueda :P

Leer más

Después de varias búsqueda y tratando de seguir los pasos de la página de Debian, no podía instalarlo en mi mini vaio, seguí intentando y viendo los pasos de este post para instalar Debian Sarge pude lograrlo y una manera rápida y cómoda:

1. Tener un Pen drive de al menos 256MB

2. Formatear el pen drive a FAT32

3. Descargar los siguientes archivos “initrd.gz” y “vmlinuz” y los copias en el pen drive

Para Lenny los obtienes desde aquí y para Squeeze desde aquí

4. Descarga la imagen iso de Lenny o de Squeeze según la versión que quieras instalar y lo copias en el pen drive (Esta iso es de 175 MB apróximadamente por el cual sólo te instalará el sistema base, lo demás lo debes descargar vía internet)

5. crea el siguiente archivo en el pen drive llamado: syslinux.cfg y dentro del archivo copia lo siguiente:

default vmlinuz
append initrd=initrd.gz ramdisk_size=10240 root=/dev/rd/0 devfs=mount,dall rw DEBCONF_PRIORITY=medium

default vmlinuz

append initrd=initrd.gz ramdisk_size=10240 root=/dev/rd/0 devfs=mount,dall rw DEBCONF_PRIORITY=medium

6. y listo, desmonta el pen drive y reinicia. Ahora podrás disfrutar de Debian.

Si quieren un repositorio para que puedas instalar la mayoría de los paquetes en debian que no son libres puedes usar copiando en el al final del archivo /etc/apt/source.list

deb http://http.us.debian.org/debian/ squeeze main contrib non-free

Saludos.

Leer más

The convenience and economy of cloud storage is indisputable, but cloud storage also presents an I/O performance challenge. For example, applications that rely too heavily on filesystem semantics and/or shared storage generally need to be rearchitected or at least have their performance reassessed when deployed in public cloud platforms.

Some of the most resilient cloud-based architectures out there minimize disk persistence across most of the solution components and try to consume either tightly engineered managed services (for databases, for examples) or persist in a very specific part of the application. This reality is more evident in container-based architectures, despite many methods to cooperate with the host operating system to provide cross-host volume functionality (i.e., volumes)

Like other public cloud vendors, Azure presents an ephemeral disk to all virtual machines. This device is generally /dev/sdb1 in Linux systems, and is mounted either by the Azure Linux agent or cloud-init in /mnt or /mnt/resource. This is an SSD device local to the rack where the VM is running so it is very convenient to use this device for any application that requires non-permanent persistence with higher IOPS. Users of MySQL, PostgreSQL and other servers regularly use this method for, say, batch jobs.

Today, you can roll out Docker containers in Azure via Ubuntu VMs (the azure-cli and walinuxagent components will set it up for you) or via CoreOS. But a seasoned Ubuntu sysadmin will find that simply moving or symlinking /var/lib/docker to /mnt/resource in a CoreOS instance and restarting Docker won’t cut it to run the containers in a higher IOPS disk. This article is designed to help you do that by explaining a few key concepts that are different in CoreOS.

First of all, in CoreOS stable Docker runs containers on btrfs. /dev/sdb1 is normally formatted with ext4, so you’ll need to unmount it (sudo umount /mnt/resource) and reformat it with btrfs (sudo mkfs.btrfs /dev/sdb1). You could also change Docker’s behaviour so it uses ext4, but it requires more systemd intervention.

Once this disk is formatted with btrfs, you need to tell CoreOS it should use it as /var/lib/docker. You accomplish this by creating a unit that runs before docker.service. This unit can be passed as custom data to the azure-cli agent or, if you have SSH access to your CoreOS instance, by dropping /etc/systemd/system/var-lib-docker.mount (file name needs to match the mountpoint) with the following:

[Unit]
Description=Mount ephemeral to /var/lib/docker
Before=docker.service
[Mount]
What=/dev/sdb1
Where=/var/lib/docker
Type=btrfs

After systemd reloads the unit (for example, by issuing a sudo systemctl daemon-reload) the next time you start Docker, this unit should be called and /dev/sdb1 should be mounted in /var/lib/docker. Try it with sudo systemctl start docker. You can also start var-lib-docker.mount independently. Remember, there’s no service in CoreOS and /etc is largely irrelevant thanks to systemd. If you wanted to use ext4, you’d also have to replace the Docker service unit with your own.

This is a simple way to rebase your entire CoreOS Docker service to an ephemeral mount without using volumes nor changing how prebaked containers write to disk (CoreOS describes something similar for EBS) Just extrapolate this to, say, your striped LVM, RAID 0 or RAID10 for higher IOPS and persistence across reboots. And, while not meant for benchmarking, here’s the difference between the out-of-the-box /var/lib/docker vs. the ephemeral-based one:

# In OS disk

--- . ( ) ioping statistics ---
20 requests completed in 19.4 s, 88 iops, 353.0 KiB/s
min/avg/max/mdev = 550 us / 11.3 ms / 36.4 ms / 8.8 ms

# In ephemeral disk

--- . ( ) ioping statistics ---
15 requests completed in 14.5 s, 1.6 k iops, 6.4 MiB/s
min/avg/max/mdev = 532 us / 614 us / 682 us / 38 us

Leer más