Showing posts with label hardware. Show all posts
Showing posts with label hardware. Show all posts

Thursday, December 24, 2015

Nuevo equipo, jugando con microservidores.

Ratos de no escribirles.

He llegado a la conclusión de que este blog difícilmente tendrá un desarrollo "lineal". Inicialmente decidí que sería una especie de manual introductorio para novatos GNU/Linux. Durante el tiempo que no escribo, aprendo de administración Linux, programación, microcontroladores y demás; esas cosas no considero necesarias para un novato; pero compartiré las cosas que considere útiles. Algunas de ellas pueden ser de nivel básico y otras requieren un conocimiento mayor en esto o aquello. 

Esta actualización podría ser un poco "avanzada" puesto que habla de hardware y un poco de soluciones de almacenaje.

Me hice de nuevo equipo y me deshice de mi Phenom 960T. Ahora, tengo una laptop intel (i5 4210u, 8GB, Nvidia 840M, 720p, WiFi, Bluetooth, parlantes, teclado y 1TB que reemplacé por mi SSD de 128GB) en la cual tengo Freya. Ya tengo unos tres meses en ella y no me quejo de nada :) ¿Por qué tanta RAM y un i5? porque serán útiles durante mi aprendizaje de FOSS. 

Desde hace un par de años vengo con la idea de construir mi propio servidor multipropósito y alojarlo en casa. Existe un invento llamado "la nube", y otro llamado "servidor NAS" pero para todo el material que tengo (software, imágenes, música, etc.) y como prefiero armar mis propios equipos y aprender del FOSS, quise hacer mi propio servidor. 

Ya tenía mi PC de escritorio y se me ocurrió que tenía el suficiente músculo para hacerla un servidor (Phenom 960T quad core, convertible en hexacore; 2GB Nvidia GTX 650 Ti Boost de EVGA, Asrock 990FX Extreme3; 8GB de RAM Kingston Hyper X Beast; OCZ SSD de 128GB SATA III; 2x 3TB Western Digital Caviar Red SATA III; radiador Corsair H60; Cooler Master CM 690 II; -lector de tarjetas y sin unidad óptica interna :v ); pero honestamente, casi no le usaba y sería un consumo de energía excesivo para lo que quiero.

Me di la tarea de buscar desde hace unos años y encontré la solución perfecta: motherboards embebidas (SoC, Single Chip computers); son simplemente motherboards de factor pequeño (usualmente micro ATX, baby ATX, mini ITX o incluso Pico ITX) con procesadores de bajo consumo (usualmente, procesadores de laptop); que toman RAM de escritorio o laptop y tienen varios puertos SATA. Son populares en países de Asia y el primer mundo occidental, para entusiastas que deciden hacer sus propios Home Theater PCs (HTPCs) o micro servidores e incluso como PCs domésticas para quines no tienen exigencias altas (gaming, creación multimedia, compilar código,  virtualización, etc.).

Durante los tres-cuatro años que contemplé la idea, llamaron mi atención una motherboard Zotac con un AMD Turion de doble núcleo (ya bastante viejo, pero de bajo consumo), una AsRock con un AMD Zacate E-350, y una Asrock con el AMD Kabini A4-5000. Todos procesadores originalmente pensados para laptops. También varios Intel (los Intel Celeron Bay Trail son muy buenos, pero valen un poquito más y tienen menos puertos SATA III: aquí estamos considerando algo llamado escalabilidad).

El Kabini me pareció perfecto para el trabajo puesto que trae cuatro puertos SATA III (lo que me permitiría poner dos o más discos en RAID 1), aparte de tener un TDP de W, y ser quad core... de apenas a 1.5GHz, pero es suficiente para lo que hará: proveer almacenaje en mi red local y tal vez alojar sitios en WordPress para cuando retome el tema; en todo caso, tengo dos núcleos extra en comparación al E-350.  podría beneficiarme de los múltiples núcleos

Mientras tanto, aprendí a instalar Arch vía VirtualBox en mi laptop (virtualizar requiere bastante RAM según los SOs que se corren). No considero hacer una guía al respecto porque ya existe: está en la Wiki de Arch, y siguiendo su filosofía me adhiero al principio #KISS (keep it simple, stupid!) y por eso es que te sugiero: #RTFM (read the fucking manual!). 

Hace unos dos meses, me llegó la mini ITX; conecté mi otro  SSD a la mobo Kabini e instalé Arch hace unos cuantos sábados. Como está pensada para servidor, no requiero de un Entorno de Escritorio; aun así, instalé Awesome WM como lo hice en el Arch de VirtualBox. Tal vez hable de Awesome en otra entrada después. En mi tiempo libre me di a la tarea de auditar mis discos duros y consolidar todos mis archivos en mi disco duro externo. Ya luego configuro RAID 1, un par de daemons y copio la info de mi disco duro externo a ellos. 

Leyendo de administradores y desarrolladores angloparlantes, aprendí ciertos trucos a implementar en mi servidor, pero... la cagué al configurar la instalación;

... apenas y le asigné 15GB de espacio a la partición root. El sistema base de Arch pesa menos de 3.5GB ( # df -h muestra 3.4GB usados hasta ahora, que tiene paquetes extra que he instalado), pero preveo que podré necesitar más espacio en un futuro cercano. 

Así que en la próxima entrada, te compartiré cómo hice para extender la partición root.

Y eso. Felices fiestas :) 

Monday, June 9, 2014

Luna de nuevo, III - Requisitos de hardware.

Lo mínimo:

  • Microchip de 1 GHz arquitectura x86 ó x64 (32 ó 64 bits).
  •     512MB en la RAM.
  •     5GB de espacio para almacenar.
  •     Lector óptico de CD/DVD -opcional.
Lo recomendado:

  • Microchip de 1 GHz arquitectura x86 ó x64 (32 ó 64 bits).
  • 1GB de RAM.
  • 15 GB of disk space
  • Lector óptico de CD/DVD o entradas USB.
  • Silla, escritorio, vida social, zapatos, ropa interior, cerveza.
  • Acceso al Internet -si estás en tu laptop, te recomiendo conectar a tu LAN durante instalación; no sólo es más estable, sino también te puede evitar un dolor de cabeza en caso de que tu tarjeta no sea reconocida.
Corriendo el comando top, para mostrar la lista de procesos y su consumo de recursos.
En reposo, no gasta casi nada. Acá está corriendo un par de cosas, como podés ver en Terminal via top y Plank: 

Luego de un reinicio, medí el consumo de RAM via System Monitor. Reinicié el escritorio y lo dejé en reposo por unos minutos. El consumo de RAM (Chromium deshabilitado para correr desde  el inicio, controlador de video Nvidia y Tweaks habilitados: Wingpanel, El Faenza Icons, Transparent Plank. El resultado: El uso de memoria oscilando entre >457 y <459 MB en reposo; nada mal para un sistema operativo visualmente atractivo. 


Esta es la información técnica para Elementary OS Luna, como lo dijo el soplón en: http://elementaryos.org/docs/user-guide/installation. Ahora, consultá la siguiente lista de FAQs:

Donar es opcional: considerá que es bueno y útil.
¿Querés un proyecto que dure y que siga
desarrollando una distro de calidad? Doná al descargar,
o comprá goodies de la tienda de Elementary :)
  • ¿Cómo lo instalo? Así. El sitio está en inglés, y vas a descargar una sola imagen, pero al llegar al instalador vas a tener opción de elegir otro idioma, en caso de que you don't speak English.
  • ¿Por qué tu instalación está en inglés? Porque así practico el idioma y me es más fácil saber lo que debo buscar a la hora de necesitar ayuda.
  • ¿Es difícil instalarla? No; es más difícil que tirarse un pedo, pero no tan difícil como esto.  
  • No quiero instalarla todavía, pero quiero probarla, ¿cómo hago? Bueno, podés usar la imagen descargada, para probarla en vivo, o usar una máquina virtual dentro de tu sistema actual. En todo caso, vas a necesitar la imagen, así que descargala.
  • No sé qué hacer con mi vida, ¿qué hago? Tal vez esto le dé más sabor a tu vida. 
Espero que esto ayude. Mientras, nos vidrios Chele :)

Monday, June 2, 2014

Un sistema operativo dentro de un sistema operativo - cómo usar una máquina virtual.


Virtual.
(Del lat. virtus, fuerza, virtud).
1. adj. Que tiene virtud para producir un efecto, aunque no lo produce de presente, frecuentemente en oposición a efectivo o real.
2. adj. Implícito, tácito.
3. adj. Fís. Que tiene existencia aparente y no real. — Real Academia Española.

Virtualización:  creación -a través de software- de una versión virtual de  un recurso tecnológico, sea de hardware o también de software. —La sabia y a veces tergiversada Wiki.

En buen español, una máquina virtual es un programa que te permite correr un sistema operativo dentro de un sistema operativo, en lugar de correrlo "directamente" sobre tu hardware. 


Y esto, a mí, ¿qué? Simple, leé esto.

La virtualización es una forma buena de experimentar con una o más distros, sin tener que echarte el huevo de tener que respaldar tus datos (aunque esto deberías de hacerlo SIEMPRE), quemar discos o provisionar memorias USB con la ISO de tu Distro, irte al BIOS, modificar el orden de booteo, cargar la imagen de la distro, borrar particiones existentes, perder las fotos de tu chucho, la tarea de la U, y de remate, tener que reinstalar tu sistema operativo actual en caso de que la imagen de instalación no funcione, o la distro simplemente no te guste.


Las Muñecas Matrioska son la analogía de una máquina virtual: una muñeca dentro de una muñeca; un sistema operativo dentro de un sistema operativo.

Muñecas Matrioska -o Matryoshka.
¿Cómo empiezo a virtualizar? Buena pregunta chele. Primero, lo primero:

  • La imagen (ISO) de tu distro.
  • Un procesador con soporte para virtualización (buscá el modelo de tu procesador,  andá a la página de su fabricante y mirá si el modelo tiene soporte para virtualización). Lo ideal, es un procesador multi-núcleos.
  • Placa base con soporte y modo de virtualización habilitado en el BIOS. (Referite al manual de tu Mobo). 
  • Suficiente memoria RAM. Pensá en esto: tu sistema operativo actual debe operar mientras la distro -otro sistema operativo- opera a la vez; para correr máquinas virtuales es adecuado usar una buena cantidad de RAM si querés que el desempeño del sistema anfitrión y del huéped, sea decente y no se "traben" o "congelen". 
Es este precisamente uno de los pocos escenarios donde tener más de 4GB de RAM realmente es beneficioso -porque es recomendado que al sistema operativo virtual se le asigne tanta RAM como necesitaría para correr directamente en hardware, además de la cantidad de RAM que sistema operativo anfitrión usa por sí mismo. Con esto, evitás tocar el archivo de swap o página de intercambio, que es "memoria" virtual tomada de tu unidad de almacenamiento principal y como estusualmente será más lenta que RAM física (si se trata de un Disco Duro): asegurate de tener suficiente RAM como  para que no tengás que cerrar aplicaciones y matar servicios para poder usar ambos sistemas operativos; de otra forma, no podrás experimentear cómo "se siente" estar en él de verdad).
  • Máquina virtual; este es el software que se instala en el sistema operativo anfitrión y sirve para "emular" el sistema operativo huésped.
  • Espacio de almacenamiento suficiente en tu equipo, para "crear" una unidad de almacenamiento donde el huésped residirá.
Esos son los ingredientes para la receta. Podés hacer tu propia búsqueda en base a estas observaciones y experimentar por tu cuenta. 

Luego tal vez hablemos de VirtualBox, que es la máquina virtual que estamos usando por el momento y con la cual instalamos el sistema base de Debian Wheezy dentro de Windows 7 Ultimate de 64 bits ayer por la noche.

Saludos.

Post Datum: Chele es un modismo coloquial usado en El Salvador; significa "blanco", persona de tez clara. Actualmente se usa para referirse en un grupo de cheros (amigos) o colegas, a uno de ellos, aunque su tez no sea clara. "Chele, pasame la birria" = Viejo, pasame la cerveza.

Entradas populares.