Infraestructura como código

Festival Politraining Industria 4.0

Infraestructura como código

En este nuevo artículo me gustaría explicar que es infraestructura
como código (IAC), pero primero definamos a que nos referimos cuando
hablamos sobre infraestructura.
Cuando hablamos de infraestructura nos referimos en este caso, a un
servidor(vps) , dominios, redes privadas. etc.

Definición

El concepto de infraestructura como código no es más que la forma de
automatización de nuestra infraestructura a través de código .

Puede que tu seas un freelance o trabajes en una compañía, en la que
constantemente se hace deploy de nuevas aplicaciones.
Imagina tener que estar creando un servidor(vps), agregando las llaves
ssh, creando un record A, load balancers, continuar con la instalación y
configuración de nginx ,mysql docker, php, etc. Todo esto cada vez que
tengas que hacer deploy de una nueva aplicación.
Este es un proceso en el que muchas veces se le dedica tiempo
innecesario.

Es por ello que muchas veces, es mejor encontrar o crear una solución para la automatización en este tipo de procesos.

Para poder trabajar o usar infraestructura como código, lo único que
tenemos que hacer es bien, crear nuestro propio script, o bien usar
alguna herramienta de un tercero.

Usualmente cuando trabajamos con infraestructura como código,
independiente de la herramienta que usamos, siempre trabajamos con algún
lenguaje para la descripción de la configuración, pudiendo ser json,
yaml o algún nuevo lenguaje propio del software (domain-specific
language ). dentro del archivo de configuración, es donde definiremos
todo los componentes necesarios para crear nuestra infraestructura,
variando de sintaxis entre los diferentes softwares que podemos usar.

Cabe mencionar que, usualmente este tipo de software nos permite,
configurar a nuestra infraestructura, de una manera muy detallada,
dependiendo del tipo de proveedor que elijamos , por ejemplo, poder
configurar redes privadas, sistema operativo, podemos agregar dominios,
subdominios , agregar nuestra claves ssh, elegir el datacenter etc. Algo
interesante es que, podemos agregar y ejecutar scripts dentro del vps
durante la construcción, esto para poder configurar dentro todo el
software.

Aunque de igual forma, tenemos otro concepto llamado configuración
como código (CaC)
Qué es exactamente el mismo concepto, pero este está orientado a la
configuración del software dentro de la infraestructura(vps), por
ejemplo la instalación y configuración de nginx, docker, ruby etc. Sin
embargo muchas veces los mismos proveedores (IaC) tienen la misma
funcionalidad o su funcionalidad es intercambiable.

Ventajas y desventajas.

Dentro de las ventajas como hemos mencionado es el de elaborar una
plantilla que podemos re-utilizar múltiples veces, eliminando la
necesidad de realizar configuraciones manuales. Esta sería, la principal
y más importante característica de este tipo de software.
Ya que con ello podemos hacer la replicación de la misma configuración,
para diferentes entornos, para testing, QA, producción, desarrollo, etc.

Otra ventaja que podemos encontrar es que usualmente este tipo de
software es del tipo agnóstico lo que quiere decir que no importa, el
proveedor en donde estés configurando nuestra infraestructura, pudiendo
ser digital ocean, amazon web services, azure, e inclusive virtualbox.

Una desventaja que podemos encontrar es quizá el tiempo que le
dedicamos en configurar nuestro archivo de configuración, así mismo, el
tener que modificar el archivo si es que agregamos una nueva tecnología o
configuración a nuestra infraestructura.

Lista de software para IaC y CaC

Debajo vemos una lista con varios de los proveedores de infraestructura y configuración como código más sobresalientes.
Cada uno de ellos comparten cierta similitud, en cuanto a configuración.

  • Terraform
  • Chef
  • Puppet
  • Ansible
  • SaltStack

Conclusión

La automatización es sin duda una de las mejores cosas que podemos
hacer para ahorrar tiempo y muchas veces recursos.
El uso de IaC, dentro de una empresa o de manera independiente trae
muchas ventajas a largo plazo. Este concepto de IaC no es para nada
nuevo, es un concepto de muchos años. De hecho muchos autores. hacen
referencia a que este concepto fue la base de la cual ha surgido toda
esta tendencia del devops.
Espero que este pequeño artículo te haya servido, o te haya incentivado a
investigar más sobre el tema, y tal vez a aprender una nueva
tecnología.

Comments: 36,031

  1. Medicament information. Brand names.
    zofran chemotherapy
    Best information about medication. Read now.

  2. kelas coding dice:

    Hello! This is kind of off topic but I need some help from an established blog.
    Is it difficult to set up your own blog?
    I’m not very techincal but I can figure things out pretty fast.
    I’m thinking about making my own but I’m not sure where to
    start. Do you have any points or suggestions?
    Thank you

  3. Source dice:

    When I originally commented I appear to have clicked the -Notify me when new comments are added- checkbox and from now on whenever a comment is added I receive 4 emails
    with the exact same comment. Is there a means you can remove me from that
    service? Thank you!

  4. Charlesvap dice:

    online shopping medicine: order drugs online – CuraBharat USA

  5. Spravkijnc dice:

    Узнайте всю информацию о «Автомикс-Смоленск» — партнёре бренда Honda, фирменный сервис, кузовной цех и детали от производителя! Посетите [url=https://avtomiks-smolensk.ru/]https://avtomiks-smolensk.ru/[/url] и узнайте модельный ряд. Хотите комфорт и стабильность — дилер предлагает пробную поездку, официальное ТО, брендовые решения, а также плановый ремонт, послегарантийный ремонт и прозрачные цены. Подбираете авто класса Honda — здесь найдёте комфортный внедорожник и профессиональную поддержку.

  6. internetmix dice:

    тарифы интернет и телевидение санкт-петербург
    inernetvkvartiru-spb005.ru
    подключить интернет в квартиру санкт-петербург

  7. Charlesvap dice:

    CuraBharat USA: CuraBharat USA – CuraBharat USA

  8. Hi there! I understand this is sort of off-topic
    however I needed to ask. Does operating a well-established website like
    yours require a lot of work? I am brand new to operating a
    blog but I do write in my journal everyday. I’d like to start a
    blog so I will be able to share my own experience and feelings online.
    Please let me know if you have any kind of suggestions or tips for new aspiring blog owners.
    Thankyou!

  9. Michaelhaurf dice:

    oxycontin india [url=https://curabharatusa.com/#]CuraBharat USA[/url] CuraBharat USA

  10. Charlesvap dice:

    best canadian online pharmacy reviews: TrueNorth Pharm – my canadian pharmacy review

  11. Cazrbgt dice:

    Приобрести диплом о высшем образовании поспособствуем. Купить диплом в Иваново – [url=http://diplomybox.com/kupit-diplom-ivanovo/]diplomybox.com/kupit-diplom-ivanovo[/url]

Responder a TeddyUsath Cancelar respuesta