Definiendo la infraestructura en que instalar la aplicación informática que soportará tu Musa

Definir la estrategia de infraestructura de la solución a implementar desde el principio del proyecto es una actividad que aunque parezca trabajosa, inoportuna,  y  costosa puede ser la mejor decisión en tu ruta de instalar una servicio que dependa fuertemente de recursos informáticos.

Lo que se busca es tener una plataforma (en adelante le llamaré plataforma, infraestructura a lo mismo, los recursos de hardwares, software y knowledge necesarios para que una solución informática funcione) que nos ayude a mantener altos niveles de Seguridad, Escalabilidad y Tolerancias a interrupciones.
  • Seguridad :  parece implícito pero muchas veces iniciamos proyectos serios de desarrollo de soluciones de software sin tener en cuenta la vulnerabilidad que un sistema inseguro te produce.  Los riesgos que conllevan los descuidos en la seguridad de la data,  de tus aplicativos y de conceptos que pocas veces vemos importante como la propiedad intelectual pueden llegar a romper tus sueños de instalar y administrar la solución informática planeada.
  • Escalabilidad :  Es el concepto que te permite desde un principio de comenzar con la infraestructura mínima necesaria para evitar desperdicios que afecten tu liquidez del proyecto,  pero que al mismo tiempo te da la posibilidad de crecer cuando la demanda de los servicios lo requieran de una manera sencilla, elástica y económicamente ventajosa.
  • Tolerancia a las interrupciones :  El Servicio a instalar, como todo en la vida,  va a estar sujeto a interrupciones;  errores en los recursos de hardware, software serán parte del historial de tu implementación y es mejor estar preparados desde un principio a evitar en lo posible,  monitorear siempre para identificar oportunamente cualquier falla que genere un incidente y sobre todo a tener la capacidad de restaurar la prestación del servicio en los tiempos que el negocio, y en particular tus usuarios y clientes lo esperan.
Alternativas abundan,  los acrónimos y ofertas que existen en este mercado tan cambiante del software llegan a aturdir hasta el profesional más avanzado;  que sí nos vamos con Amazon, Azure o OpenStack,  que si queremos (y podemos pagar)  Windows 2016 o Linux,  que en qué sabor de Linux,  nos vamos con Kubernetes o con Apache Menos.  Que si vemos la propuesta de Docker Cloud en Citrix o con Hyper V / VMWare / KVM / Xen Server.  Y así sucesivamente nos sentamos google y una buena taza de café en mano para comenzar a investigar y nos damos cuenta en los primeros 90 minutos lo poco que en realidad sabemos sobre el tema.
En este viaje de instalar un servicio informático al que he llamado curantis.me el aliado de los pacientes y  apoyo de  Doctores en aliviar el cumplimiento de tratamientos médicos  iré compartiendo mis análisis, decisiones, y errores para que me sirvan de referencia histórica, como bitácora,  pero al compartirlos espero contribuir a todos aquellas personas que siempre han tenido ideas brillantes relacionadas con servicios apoyados con recursos informáticos, pero que no saben por dónde comenzar a instalarlas.

La primera gran pregunta comprar o arrendar ?

Decidí comenzar con esta pregunta porque en las circunstancias actuales es la más fácil de responder.   La pregunta para que sea más exacta sería :   ¿ Compro e instalo mis equipos de procesamiento,  almacenamiento y networking o utilizar los recursos disponibles en la Web ?  La respuesta puede parecer obvia, pero aún así veamos cómo analizarla y valorarla :

Opción 1 :  Comprar e instalar mis propios recursos informáticos

• Es necesario tener un capital mínimo para fierros de unos $5000,  que puede alcanzarte para un servidor con características apropiadas para que te duren el arranque y unos 4 meses de implementación y operación inicial,  equipos de comunicación 1 switch,   un equipo para respaldar la data(si respaldar,  el primer mandamiento a cumplir de toda solución informática a implementar y operar) y otros.  En el rubro de software dependerá si requieres ir con Windows Server o con Linux,  para hacerte más barata la opción Linux, es gratis  y tan funcional que mantiene cerca del 80% de la internet,  si no lo creen pregunto porque Azzure está incursionando como proveedor al decidir al fin estratégicamente proveer instancias en linux y no solo en microsoft y porque está sacando versiones de su base de datos y  herramientas de desarrollo para linux;  deberás incrementar también el contrato que tienes de navegación para que el acceso a tu futura aplicación sea funcional para los visitantes.   
• Luego debes sumar los costos de instalación,  cableado,  ambiente con temperatura apropiada (ah se me olvidaba en hardware la instalación de aire acondicionado y equipo de protección eléctrica para los apagones y picos de corriente eléctrica),  y
•  Ya cuando tienes instalado todo los recursos y has invertido o gastado unos $7000,  recordá que los presupuestos generalmente se quedan cortos,   vienen las primeras facturas de operar tu pequeño datacenter :  electricidad,  conexión a internet,  cobros por reparaciones o modificaciones a tu infraestructura instalada,  etc, etc, y un gran etc.   Espero hayas agregado eso en tu Budget de arranque.
• Aca te voy a dejar otros  rubros de costo que generalmente no tomamos en consideración y nos cuesta administrarlo porque creemos que no tiene valor :  El Knowledgeware,  El Tiempo y el Humanware.  Knowledgeware es el conocimiento,  por más experiencia que tengas deberás tener que aprender algo más para instalar y operar en tus primeros meses tu datacenter.  El Humanware,  las horas hombre de trabajo,  esas desveladas, esas interrupciones en tu vida cotidiana que afectan tu entorno familiar o social y eventualmente la calidad de vida tuya y de tus seres cercanos,  eso mis estimados tiene un costo que no se calcula,  aparentemente no se registra pero téngalo por seguro se deprecia e impacta en valor.  Luego el tiempo,  si tienes la suerte de vivir en un país latinoamericano,  estarás sujeto a los tiempos de entrega de hardware, equipos, instalaciones y demás y eso lo sabemos nos puede representar un gran costo de oportunidad, porque dejamos de estar desarrollando la solución de software, conociendo el posible mercado,  validando nuestra propuesta que son actividades que nos pueden acercar a generar valor a conseguir el primer prospecto y eventualmente a ese momento hito de toda iniciativa de monetización el momento en el que recibes la primera orden de compra, tu primer cliente (que no sea tu familia por supuesto ;-).

Segunda Opción :  Arrendar.

• El gran proveedor :  La Nube,  ese famoso del que todos hablamos pero en realidad muy poco conocemos debido a su naturaleza cambiante,  vertiginosa,  abundante de información y posibilidades.
• La solución acá tampoco es tan sencilla como creemos,  nos abundan las alternativas no solo de proveedores sino que de modelos de servicio que es en lo que me quiero detener primero a analizar.
• Compro una instancia privada o virtual,  una que me de cpanel,  o que solo me de la caja vacía con acceso por ssh para que haga lo que quiera;  una que me permita crecer ?.  Son varios los criterios que se deben de tomar en cuenta para que cumpla con nuestros requerimientos iniciales de seguridad,  escalabilidad y tolerancia a fallas,  y como en la mayoría de los mercados uno paga lo que consume, pero también como en la mayoría de los negocios,  mientras mejor conozcas las condiciones actuales y futuras del servicio mejores beneficios tendrás a largo plazo.  
• La única opción que puedo decir certeza que debes contratar y que no te costará más que unas 2 visitas a una venta de café fancy es la compra del dominio.  Si, aunque no lo creas tu solución debe tener presencia web propia.  Muchos me dirán que ya no es necesarios,  que lo importante es solo estar en Facebook,  tener una presencia en twitter y en cada red social que vaya pasando de moda.  Comparto su opinión qué es importante estar en redes sociales, pero (y es un gran pero por el costo que representa administrar esa presencia y por la relación que se pierde muchas veces de costo/riesgo y beneficio de estar en cada red social que vaya saliendo) debes estar en las redes sociales en las que tus usuarios y clientes están específicamente representados.   El dominio propio ha sido y hasta que no se terminen los dominios, ip y surge una nueva alternativa de presencia web es la mejor apuesta.  Asegúrate entonces de comprar tu dominio,  acá te puedo recomendar  www.namecheap.com  que ofrece costos apropiados, seguridad en el manejo de tus registros de pago,  facilidad de uso y un soporte muy eficiente;  además que permite fácilmente la administración de tu dominio en otros DNS.  Esto quiere decir que más adelante cuando hayas decidido con qué alternativa de web hosting te iras, podrás re-configurar el acceso a tu dominio de una manera sencilla y rápida.
• Las herramientas que me han resultado útiles para la búsqueda de alternativas de presencia web y creación de dominios y perfiles en las redes sociales que estratégicamente decides estar son :
◦ https://www.namecheckr.com/  
◦ http://knowem.com/
• Costo de inversión inicial unos $15 al año, asegurarse de presupuestar unos $45 en el segundo año para mantener y asegurar el dominio cuando el negocio halla prosperado por la compra de dominio y el tiempo que te tomó validar la existencia del mismo en las redes sociales más el tiempo que te pudo haber tomado el crear los perfiles en cada red social seleccionada.
Solo quiero comentarte que desde un principio es recomendable que crees una carpeta segura y compartida en Google Drive o Dropbox según sea tu gusto(ves otra vez la nube en nuestro auxilio) para ir registrando todas tus credenciales y datos de registros de adquisiciones y pagos,  te resultará muy útil tener un solo lugar de referencia cuando el tiempo halla pasado.  
Resulta casi obvio que la respuesta a la primera pregunta sobre si compro o arriendo es abismalmente muy clara : Arrendar !!!.  Lo que me deja una gran inquietud como profesional informático,  Porqué seguimos comprando entonces fierros(servidores, storage, etc)  en grandes cantidades para  solucionar las necesidades de nuestro Datacenter empresarial ??   esta pregunta se que genera discusiones acaloradas como las de qué equipo es mejor el Real o el Barca,  será el tema de otra publicación.  Aunque en la realidad sabemos que la respuesta es que el mejor equipo es .....    Depende !
También prometo compartir el análisis sobre qué alternativa de solución adquirir para resolver la necesidad de web hosting para nuestra Musa, le llamo Musa porque son esas iniciativas que soportan nuestros sueños; coloquialmente les solemos llamar iguanas.



Comments

Popular posts from this blog

Guía de instalación y configuración de Elixir Phoenix en Linux Pop 21 o Ubuntu 20.04

Instalar Frappe y ErpNext usando Docker developer mode en Linux y Mac

Configurar entorno de desarrollo para Django y Postgres con VSCode plugins