OpenStack

De FdIwiki SC
Saltar a: navegación, buscar

Fuente: https://es.wikipedia.org/wiki/OpenStack

OpenStack es un proyecto de computación en la nube para proporcionar una infraestructura como servicio (IaaS).

Es un software libre y de código abierto distribuido bajo los términos de la licencia Apache. El proyecto está gestionado por la Fundación OpenStack, una persona jurídica sin fines de lucro creada en septiembre de 2012 para promover el software OpenStack y su comunidad.[1][2]

Instalación rápida de Openstack, única máquina Debian.

[3] Ante nada, este tutorial es para que probemos rápidamente OpenStack. Pero no es recomendable usarlo en un entorno de trabajo. (en realidad, necesitamos siete máquinas fisicas o virtuales, con 12GB de Ram entre todas). Además, el uso de 'sudo' es una auténtica chapuza de seguridad. así que es mejor hacer este tutorial dentro de una máquina virtual con Debian.

Creación de Usuario

Creamos un usuario llamado stack , y le ponemos una contraseña (yo p.e. he puesto 'pepito' )

sudo adduser stack

Lo añadimos a sudoers

echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

Descarga del Stack

Clonamos 'DevStack' (el 'Xampp' de Openstack, vaya) y nos metemos en la carpeta

git clone https://git.openstack.org/openstack-dev/devstack
cd devstack

Configuración del Stack

DevStack incluye un ejemplo de fichero de configuración en devstack/samples.local.conf

  • FLOATING RANGE es un rango de nuestra red local, que no estamos usando. Supondré que no tenemos nada por encima de 192.168.1.224
  • FIXED_RANGE y FIXED_NETWORK_SIZE acotan las direcciones IP internan usadas por las instancias
  • FLAT_INTERFACE es la interfaz de nuestra máquina que nos connecta a la red local
  • ADMIN_PASSWD contiene la contraseña de admin de todo el tinglado
  • DATABASE_PASSWORD contiene la contraseña del bloque de BBDD de Openstack
  • RABBIT_PASSWORD contiene la contraseña de RabbitMQ (mensajería)
  • SERVICE_PASSWORD contiene la contraseña común de los servicios de Openstack (Nova, Glance,etc)

Creamos el fichero de configuración

touch local.conf

Lo editamos

nano local.conf

y metemos algo parecido a esto

[[local|localrc]]
FLOATING_RANGE=192.168.1.224/27
FIXED_RANGE=10.11.12.0/24
FIXED_NETWORK_SIZE=256
FLAT_INTERFACE=eth0
ADMIN_PASSWORD=supersecret
DATABASE_PASSWORD=iheartdatabases
RABBIT_PASSWORD=flopsymopsy
SERVICE_PASSWORD=iheartksl

Descripción

Más de 200 empresas se unieron al proyecto entre las que destacan AMD, Avaya, Brocade Communications Systems, Canonical, Cisco, Dell, Ericsson, Groupe Bull, HP, IBM, InkTank, Intel, NEC, Rackspace Hosting, Red Hat, SUSE Linux, VMware y Yahoo!.[4][5][6][7]

La tecnología consiste en una serie de proyectos relacionados entre sí que controlan estanques de control de procesamiento, almacenamiento y recursos de red a través de un centro de datos, todos administrados a través de un panel de control que permite a los administradores controlar mientras potencia a sus usuarios proveyendo los recursos a través de una interfaz web.

La comunidad OpenStack colabora en torno a un ciclo de lanzamiento con hitos de desarrollo de frecuencia semestral.[8] Durante la fase de planificación de cada lanzamiento, la comunidad se reúne para la Cumbre de Diseño OpenStack para facilitar sesiones de trabajo para desarrolladores y armar planes a futuro.[9]

Componentes

OpenStack tiene una arquitectura modular con varios nombres para sus componentes.[10]

Compute (Nova)

OpenStack Compute (Nova) es un controlador de estructura cloud computing, que es la parte principal de un sistema de IaaS. Está diseñado para gestionar y automatizar los pools de los recursos del equipo y puede trabajar con tecnologías ampliamente disponibles de virtualización. KVM y Xen son las opciones disponibles para la tecnología de hipervisor, junto con la tecnología Hyper-V, la tecnología vSphere de VMware y la tecnología de contenedores Linux como LXC.

Está escrito en Python y usa muchas bibliotecas externas, como Eventlet (para la programación concurrente), Kombu (para la comunicación AMQP) y SQLAlchemy (para acceder a la base de datos). La arquitectura de Compute está diseñado para escalar horizontalmente en hardware estándar, sin requisitos de hardware o software propietarios, y proporcionar la capacidad de integración con sistemas legados y tecnologías de terceros.

Object Storage (Swift)

OpenStack Object Storage (Swift) es un sistema de almacenamiento redundante y escalable. Los objetos y los archivos se escriben en varias unidades de disco repartidos por los servidores del centro de datos, con el software OpenStack responsable de asegurar la replicación y la integridad de los datos en el clúster. Agrupaciones de almacenamiento escalar horizontalmente simplemente añadiendo nuevos servidores. En caso de que un servidor o disco duro falla, OpenStack replica su contenido desde otros nodos activos a nuevas ubicaciones en el clúster. Debido a que OpenStack utiliza la lógica del software para asegurar la replicación de datos y la distribución a través de diferentes dispositivos, discos duros y servidores de bajo costo pueden ser utilizados.

En agosto de 2009, Rackspace comenzó el desarrollo del precursor de OpenStack Object Storage, como un reemplazo completo para el producto Cloud Files. El equipo de desarrollo inicial consistió en nueve desarrolladores. SwiftStack, una compañía de software de almacenamiento de objetos, es actualmente el líder en el desarrollo de Swift.

Block Storage (Cinder)

OpenStack Block Storage (Cinder) proporciona dispositivos de almacenamiento a nivel de bloque persistentes para usar con instancias de OpenStack Compute. El sistema de almacenamiento de bloques gestiona la creación, aplicación y el desprendimiento de los dispositivos de bloque a los servidores. Volúmenes de almacenamiento de bloque se integran plenamente en OpenStack Compute y el Dashboard que permite a los usuarios en la nube gestionar sus propias necesidades de almacenamiento. Además del almacenamiento del servidor local de Linux, puede utilizar las plataformas de almacenamiento incluyendo Ceph, CloudByte, Coraid, EMC (VMAX y VNX), GlusterFS, Hitachi Data Systems, IBM Storage (familia Storwize, controlador de volumen SAN, XIV Storage System, y GPFS) , Linux LIO, NetApp, Nexenta, Scality, SolidFire, HP (StoreVirtual y 3PAR StoreServ familias) y almacenamiento puro. El almacenamiento de bloques es apropiado para escenarios donde el rendimiento es sensible, tales como el almacenamiento de base de datos, sistemas de archivos expandibles, o la prestación de un servidor con acceso al almacenamiento a nivel de bloque en bruto. La gestión Snapshot ofrece una potente funcionalidad para realizar copias de seguridad de los datos guardados en volúmenes de almacenamiento en bloque. Las instantáneas no se pueden restaurar ni utilizar para crear un nuevo volumen de almacenamiento en bloque.

Networking (Neutron)

OpenStack Networking (Neutrones, anteriormente Quantum) es un sistema para la gestión de redes y direcciones IP. Asegura que la red no presente el problema del cuello de botella o el factor limitante en un despliegue en la nube y ofrece a los usuarios un autoservicio real, incluso a través de sus configuraciones de red.

OpenStack Networking proporciona modelos de redes para diferentes aplicaciones o grupos de usuarios. Los modelos estándar incluyen redes planas o VLAN para la separación de los servidores y el tráfico. Gestiona las direcciones IP, lo que permite direcciones IP estáticas o DHCP reservados. Direcciones IP flotantes permiten que el tráfico se redirija dinámicamente a cualquiera de sus recursos informáticos, que permite redirigir el tráfico durante el mantenimiento o en caso de fracaso. Los usuarios pueden crear sus propias redes, controlar el tráfico y conectar los servidores y los dispositivos a una o más redes. Los administradores pueden aprovechar las redes definidas por software de tecnología (SDN) como OpenFlow para permitir altos niveles de multiempresa y escala masiva. OpenStack Networking tiene un marco que permite la extensión de servicios de red adicionales, como los sistemas de detección de intrusos (IDS), balanceo de carga, cortafuegos y redes privadas virtuales (VPN) para ser implementada y administrada.

Dashboard (Horizon)

El Dashboard de OpenStack (Horizont) proporciona a los administradores y usuarios una interfaz gráfica para el acceso, la provisión y automatización de los recursos basados ​​en la nube. El diseño permite que los productos y servicios de terceros, tales como la facturación, el monitoreo y las herramientas de gestión adicionales. El Dashboard es sólo una forma de interactuar con los recursos de OpenStack. Los desarrolladores pueden automatizar el acceso o construir herramientas para gestionar sus recursos mediante la API nativa de OpenStack o la API de compatibilidad EC2.

Servicio de Identidad (Keystone)

El servicio de Identidad de OpenStack (Keystone) ofrece un directorio central de usuarios asignados a los servicios de OpenStack que pueden acceder. Actúa como un sistema de autenticación común en todo el sistema operativo para la nube y se puede integrar con los servicios de directorio backend existentes como LDAP. Es compatible con múltiples formas de autenticación, incluyendo nombre de usuario y contraseña de credenciales estándar, sistemas basados ​​en tokens e inicios de sesión (login) de estilo AWS (es decir, Amazon Web Services). Además, el catálogo incluye una lista consultable de todos los servicios existentes en la OpenStack cloud, en un solo registro. Los usuarios y las herramientas de terceros mediante programación pueden determinar qué recursos pueden acceder.

Servicio de Imagen (Glance)

El servicio de imagen de OpenStack (Glance) proporciona servicios de descubrimiento, de inscripción y de entrega de los discos y del servidor de imágenes. Las imágenes almacenadas se pueden utilizar como una plantilla. También se puede utilizar para almacenar y catalogar un número ilimitado de copias de seguridad. El servicio de imagen puede almacenar imágenes de disco y de servidores en una variedad de back-ends, incluyendo OpenStack Object Storage. La API de servicios de imagen proporciona una interfaz REST estándar para consultar información sobre las imágenes de disco y permite a los clientes transmitir las imágenes a nuevos servidores.

Telemetría (Ceilometer)

El servicio de Telemetría de OpenStack (Ceilometer) proporciona un único punto de contacto para los sistemas de facturación, proporcionando todos los contadores que se necesitan para establecer la facturación del cliente, a través de todos los componentes actuales y futuras de OpenStack. La entrega de los contadores es trazable y auditable, los contadores deben ser fácilmente extensible para apoyar nuevos proyectos, y los agentes que realizan las colecciones de datos deben ser independientes de todo el sistema.

Orquestación (Heat)

Heat es un servicio para orquestar múltiples aplicaciones compuestas en la nube utilizando plantillas, tanto a través de una API REST OpenStack nativa y una API de consultas compatibles con CloudFormation

Base de datos (Trove)

Trove es una base de datos que funciona como un servicio de aprovisionamiento de motores de bases de datos relacionales y no relacionales.

Historia de Versiones

Nombre de la Versión Fecha de la Versión Códigos de los componentes incluidos[10] Notas
Austin 21 de octubre de 2010[11][12] Nova, Swift
Bexar 3 de febrero de 2011[13] Nova, Glance, Swift
Cactus 15 de abril de 2011[14] Nova, Glance, Swift
Diablo 22 de septiembre de 2011[15] Nova, Glance, Swift
Essex 5 de abril de 2012[16] Nova, Glance, Swift, Horizon, Keystone
Folsom 27 de septiembre de 2012[17] Nova, Glance, Swift, Horizon, Keystone, Quantum, Cinder Openstack Folsom Architecture
Grizzly 4 de abril de 2013[18] Nova, Glance, Swift, Horizon, Keystone, Quantum, Cinder Openstack Grizzly Architecture
Havana 17 de octubre de 2013[19] Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer Havana Release Notes
Icehouse 17 de abril de 2014[20] Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove Icehouse Release Notes
Juno 16 de octubre de 2014[21] Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara Juno Release Notes
Kilo 30 de abril de 2015[22] Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic Kilo Release Notes
Liberty 16 de octubre de 2015[23] Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican Liberty Release Notes
Mitaka Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican

Véase también

Referencias

  1. OpenStack Launches as Independent Foundation, Begins Work Protecting, Empowering and Promoting OpenStack|url=http://www.businesswire.com/news/home/20120919005997/en/OpenStack-Launches-Independent-Foundation-Begins-Work-Protecting%7Cfechaacceso=7 de enero de 2013|newspaper=BusinessWire|fecha=19 de septiembre de 2012
  2. |url=http://wiki.openstack.org/Governance/Foundation/Mission%7Ctítulo=OpenStack Foundation Mission|fechaacceso=7 de enero de 2013
  3. Manual Oficial de Instalación de Openstack en una única máquina | http://docs.openstack.org/developer/devstack/guides/single-machine.html
  4. |url=http://www.openstack.org/foundation/companies/%7Ctítulo=Companies » OpenStack Open Source Cloud Computing Software|fechaacceso=7 de enero de 2013|editorial=Openstack.org
  5. |url=http://h30507.www3.hp.com/t5/Data-Central/HP-Announces-Support-for-OpenStack/ba-p/96283%7Ctítulo=HP Announces Support for OpenStack|fechaacceso=23 de octubre de 2012|fecha=27 de julio de 2011|editorial=H30507.www3.hp.com
  6. |url=http://www.computerworlduk.com/news/open-source/3350930/ibm-and-red-hat-support-openstack-foundation-as-platinum-members/%7Ctítulo=IBM supports OpenStack (Computerworld)|fechaacceso=23 de octubre de 2012|editorial=Computerworlduk.com
  7. |url=http://content.dell.com/us/en/ enterprise/by-need-it-productivity-data-center-change-response-openstack-cloud|título=Dell OpenStack-Powered Cloud Solution|fechaacceso=23 de octubre de 2012|editorial=Content.dell.com
  8. |url=http://wiki.openstack.org/ReleaseCycle%7Ctítulo=OpenStack Release Cycle|fechaacceso=7 de enero de 2013|editorial=OpenStack Foundation
  9. |url=http://wiki.openstack.org/Summit%7Ctítulo=OpenStack Design Summit|fechaacceso=7 de enero de 2013|editorial=OpenStack Foundation
  10. 10,0 10,1 |url=http://www.openstack.org/software/roadmap/%7Ctítulo=OpenStack Roadmap » OpenStack Open Source Cloud Computing Software|fechaacceso=8 de mayo de 2013|fecha=4 de abril de 2013|editorial=Openstack.org
  11. |url=http://openstack.org/projects/%7Ctítulo=Software » OpenStack Open Source Cloud Computing Software|fechaacceso=23 de octubre de 2012|editorial=Openstack.org
  12. |url=http://www.omg.org/news/meetings/tc/ca-10/special-events/pdf/5-3_Piatt.pdf%7Ctítulo=Open Stack history summary on p.6-8|fechaacceso=23 de octubre de 2012|formato=PDF
  13. |url=http://wiki.openstack.org/BexarReleaseSchedule%7Ctítulo=BexarReleaseSchedule - Wiki|fechaacceso=23 de octubre de 2012|fecha=20 de enero de 2011|editorial=Wiki.openstack.org
  14. |url=http://wiki.openstack.org/CactusReleaseSchedule%7Ctítulo=CactusReleaseSchedule - Wiki|fechaacceso=23 de octubre de 2012|fecha=12 de abril de 2011|editorial=Wiki.openstack.org
  15. |url=http://wiki.openstack.org/DiabloReleaseSchedule%7Ctítulo=DiabloReleaseSchedule - Wiki|fechaacceso=23 de octubre de 2012|fecha=6 de septiembre de 2011|editorial=Wiki.openstack.org
  16. |url=http://wiki.openstack.org/EssexReleaseSchedule%7Ctítulo=EssexReleaseSchedule - Wiki|fechaacceso=23 de octubre de 2012|fecha=7 de marzo de 2012|editorial=Wiki.openstack.org
  17. |url=http://wiki.openstack.org/FolsomReleaseSchedule%7Ctítulo=FolsomReleaseSchedule - Wiki|fechaacceso=23 de octubre de 2012|fecha=14 de mayo de 2012|editorial=Wiki.openstack.org
  18. |url=http://wiki.openstack.org/GrizzlyReleaseSchedule%7Ctítulo=GrizzlyReleaseSchedule - Wiki|fechaacceso=4 de abril de 2013|editorial=Wiki.openstack.org
  19. |url=https://wiki.openstack.org/wiki/Havana_Release_Schedule%7Ctítulo=Havana_Release_Schedule - Wiki|fechaacceso=19 de junio de 2013|editorial=Wiki.openstack.org
  20. |url=https://wiki.openstack.org/wiki/Icehouse_Release_Schedule |título=Icehouse Release |editorial=Wiki.openstack.org |fechaacceso=17 de abril de 2014
  21. |url=https://wiki.openstack.org/wiki/Juno_Release_Schedule |título=Juno Release |editorial=Wiki.openstack.org |fechaacceso=23 de septiembre de 2014
  22. |url=https://wiki.openstack.org/wiki/Kilo_Release_Schedule |título=Kilo Release |editorial=Wiki.openstack.org |fechaacceso=23 de septiembre de 2014
  23. |url=https://wiki.openstack.org/wiki/Liberty_Release_Schedule |título=Liberty Release |editorial=Wiki.openstack.org |fechaacceso=27 de junio de 2015

Enlaces externos

Página Oficial de OpenStack[1] Video de Ejemplo [YouTube|id=XV8M_v1rf0s||title=OpenStack: Building a Free Massively Scalable Cloud Computing Platform]