Spinnaker como una Solución de Entrega Continua para Aplicaciones JavaScript

Rate this content
Bookmark

Spinnaker es una plataforma de entrega continua de código abierto que proporciona gestión de aplicaciones y despliegue para ayudar a los equipos de ingeniería a lanzar cambios de software con confianza y a alta velocidad. Inicialmente fue desarrollado en Netflix y ahora es utilizado por muchos equipos de ingeniería a gran escala. En esta charla, exploraremos cómo podemos aprovecharlo para implementar aplicaciones JavaScript en múltiples proveedores de nube de manera repetible y escalable, aprovechando su conjunto de funciones robusto.

Jamal Sinclair O'Garro
Jamal Sinclair O'Garro
10 min
15 Feb, 2024

Comments

Sign in or register to post your comment.

Video Summary and Transcription

Jamal Sinclair-O'Garro se presenta como un ingeniero de software senior en Netflix con experiencia en algoritmos y comercio electrónico. Spinnaker es una plataforma de entrega continua multiplataforma utilizada por empresas como Grubhub, Airbnb, Google, Netflix, Chime, Box y Target. Proporciona gestión de infraestructura y despliegue a través de pipelines, permitiendo implementaciones graduales y análisis de canarios para garantizar cambios seguros. Spinnaker mejora la velocidad y se recomienda para optimizar aplicaciones JavaScript en diferentes proveedores.

1. Introducción

Short description:

Hola, mi nombre es Jamal Sinclair-O'Garro, un ingeniero de software senior en Netflix. Tengo experiencia en trading algorítmico y electrónico. Estoy ubicado en Nueva York y soy fanático del hip hop y los deportes, especialmente de los Knicks.

Hola. Mi nombre es Jamal Sinclair-O'Garro y bienvenidos a mi charla sobre Spinnaker como solución de entrega continua para aplicaciones JavaScript. Entonces, ¿quién soy yo? Como mencioné, mi nombre es Jamal. Soy un ingeniero de software senior en Netflix dentro de nuestra organización de ingeniería de plataformas. Antes de trabajar en Netflix, he estado aquí aproximadamente dos años, trabajé toda mi career en finanzas donde me enfoqué principalmente en el trading algorítmico y electrónico. He construido más de 15 aplicaciones de trading electrónico algorítmico para escritorio que se han implementado en toda la empresa en mis trabajos anteriores. Nací y crecí en Nueva York, donde actualmente resido. Soy fanático del hip hop, de las zapatillas de deporte, soy fanático de los Yankees, Giants y Knicks, y los Knicks la están rompiendo en este momento.

2. Spinnaker Overview

Short description:

Hoy aprenderemos sobre Spinnaker, una plataforma de entrega continua multiplataforma que admite múltiples proveedores de nube. Discutiremos su funcionalidad, orquestación de implementación, gestión de recursos y su uso por parte de empresas como Grubhub, Airbnb, Google, Netflix, Chime, Box y Target. También cubriremos conceptos de alto nivel como proveedores, aplicaciones, clústeres, grupos de servidores, balanceadores de carga y firewalls en la arquitectura de Spinnaker.

así que vamos Knicks. Entonces, el plan de hoy. ¿En qué nos vamos a enfocar hoy? Hoy vamos a aprender sobre Spinnaker, qué es, entenderemos a grandes rasgos una descripción general de su funcionalidad y luego trataremos de averiguar por qué podrías querer usarlo para tus aplicaciones JavaScript. Entonces, dicho esto, ¿qué es Spinnaker? Spinnaker es una plataforma de entrega continua multiplataforma que admite múltiples proveedores o entornos en la nube. Entonces, piensa en AWS, Google Cloud y Azure. Spinnaker nos brinda la capacidad de configurar recursos en la nube. Entonces, piensa en el tipo de instancia, grupos de seguridad si estás en el mundo de AWS. Podemos orquestar nuestras implementaciones o definir la orquestación para las implementaciones a través de algo llamado pipelines que hablaremos en breve. Y también podemos administrar o implementar recursos. Entonces, piensa en el escalado automático y la lógica que nos permite realizar cosas como deshacer cambios en caso de que las cosas no salgan bien. Spinnaker fue desarrollado internamente en Netflix y desde entonces se ha convertido en un proyecto de código abierto y ahora es mantenido por la comunidad. Entonces, sabemos sobre Spinnaker, pero la pregunta que podrías tener es, ¿quién lo está usando? ¿Quién está usando Spinnaker en producción? En este momento hay algunas empresas. Está Grubhub, está Airbnb, Google, por supuesto, porque Spinnaker proviene de Netflix. Está Chime, Box, y Target. Entonces, como podemos ver, este es un pequeño subconjunto, pero hay una gran cantidad de empresas que están utilizando Spinnaker en producción para su solución de entrega. Entonces, ahora hablemos de algunos conceptos de alto nivel de Spinnaker. Primero, hablemos de un proveedor. Un proveedor es un proveedor de servicios en la nube. Como AWS o Azure, Google Cloud que proporciona recursos informáticos en los que puedes construir tu infraestructura y implementar y servir tus aplicaciones. Ahora, en el mundo de Spinnaker, una aplicación es una colección de algo llamado clústeres de los que hablaremos en breve. Así que piensa en ello como una forma de realizar un seguimiento de nuestra aplicación, la configuración de la aplicación, y también su configuración de infraestructura. Además, también tenemos un grupo de servidores, un grupo de servidores es una colección de instancias. Entonces, piensa en las instancias de tu aplicación Node, o incluso podrían ser instancias de Kubernetes también. Un clúster es un grupo de grupos de servidores en Spinnaker. Y luego también tenemos balanceadores de carga que básicamente equilibran el tráfico entre las instancias dentro de un grupo de servidores en particular. Tenemos un firewall, que nos permite establecer reglas de tráfico de seguridad de red. Entonces, veamos a grandes rasgos la arquitectura de Spinnaker. Aquí tenemos un ejemplo de dos aplicaciones. Como se mencionó, una aplicación es una forma de agrupar los recursos y la infraestructura de tus aplicaciones. Y aquí puedes ver que tenemos una colección de clústeres. Y cada clúster es básicamente un conjunto de grupos de servidores.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Cómo Construir Tu Propio Proyecto de Código Abierto
React Advanced Conference 2022React Advanced Conference 2022
16 min
Cómo Construir Tu Propio Proyecto de Código Abierto
Todos usamos proyectos de código abierto todos los días, como paquetes de npm, editores, aplicaciones web e incluso sistemas operativos... ¿Alguna vez has pensado en construir uno propio? En esta charla, compartiré mi experiencia construyendo jest-preview, desde cuando era solo una idea vaga, hasta convertirse en una biblioteca ampliamente adoptada para ayudar a los ingenieros frontend a escribir pruebas más rápido. Compartiré contigo cómo encontrar una idea para un proyecto en el que trabajar, cuáles son los desafíos que debes superar como autor de un proyecto de código abierto, cómo administrar el tiempo de manera eficiente y cómo llamar la atención de los ingenieros de todo el mundo.
Lecciones de Mantenimiento de Bibliotecas de TypeScript
TypeScript Congress 2022TypeScript Congress 2022
30 min
Lecciones de Mantenimiento de Bibliotecas de TypeScript
Mantener bibliotecas de JS ampliamente utilizadas ya es complicado, y TypeScript agrega un conjunto adicional de desafíos.

Únete al mantenedor de Redux, Mark Erikson, para conocer algunos de los problemas únicos a los que se enfrentan los mantenedores de bibliotecas de TS y cómo el equipo de Redux ha abordado esos problemas. Cubriremos:

- Compromisos de diferentes formas de definir tipos de TS para una biblioteca
- Cómo apuntar a diferentes versiones de TS y consideraciones para determinar el rango de versiones admitidas
- Migrar bibliotecas de JS existentes a TS
- Diferencias entre escribir tipos de "aplicación" y tipos de "biblioteca"
- Administrar y versionar APIs de tipos públicos
- Consejos y trucos utilizados por los tipos de las bibliotecas de Redux
- Limitaciones de TS y posibles mejoras a nivel de lenguaje
Módulos Nuxt 3 y Código Abierto
Vue.js London 2023Vue.js London 2023
31 min
Módulos Nuxt 3 y Código Abierto
Los módulos Nuxt son la forma por defecto de extender nuestras aplicaciones Nuxt con nuevos comportamientos y funcionalidades. ¿Alguna vez has construido el tuyo propio? ¿Por qué te molestarías con cientos de módulos ya disponibles? Vamos a responder esas preguntas juntos y ver por qué crear tus propios módulos en Nuxt 3 puede ayudarte a tener una comprensión más profunda de cómo funciona Nuxt, al mismo tiempo que te abre el camino para involucrarte en el código abierto.
Rompe la Carrera: Detección Fácil de Condiciones de Carrera para React
React Day Berlin 2023React Day Berlin 2023
31 min
Rompe la Carrera: Detección Fácil de Condiciones de Carrera para React
Las condiciones de carrera se encuentran entre algunos de los problemas más desafiantes de detectar y reproducir. Como tal, representan un desafío significativo en el desarrollo, notablemente en la interfaz de usuario. En esta charla, exploramos cómo detectar condiciones de carrera aprovechando las técnicas de fuzzing. Te guiamos a través del descubrimiento del verdadero problema de las condiciones de carrera y cómo impactan en la experiencia del usuario. Te proporcionamos herramientas y ejemplos que demuestran cómo detectarlas fácilmente en tu trabajo diario gracias a las pruebas que se basan en el fuzzing. Después de esta charla, esperamos que tu código React esté libre de condiciones de carrera o al menos que tengas las herramientas adecuadas para ayudarte.
Haciendo que una biblioteca de código abierto sea financieramente sostenible
React Day Berlin 2022React Day Berlin 2022
8 min
Haciendo que una biblioteca de código abierto sea financieramente sostenible
React Flow es una biblioteca de código abierto utilizada por miles de desarrolladores y cientos de empresas. ¿Cómo nos aseguramos de que se mantenga viva y también sea gratuita? Compartiré algunas ideas a lo largo de nuestro viaje desde la liberación de React Flow como código abierto hasta alcanzar el "cero negro", incluyendo los hallazgos de nuestra investigación de usuarios donde hablamos con algunas de las personas que nos apoyan cada mes.
The State of XState
React Finland 2021React Finland 2021
18 min
The State of XState
Over the past few years, state machines, statecharts, and the actor model have proven to be viable concepts for building complex application logic in a clear, visual way with XState. In this talk, we'll take a peek into the future of XState, including new features in the next version, and new tools and services that will make it even easier to create and collaborate on state machines.

Workshops on related topic

Node.js: Aterrizando tu primera contribución de código abierto y cómo funciona el proyecto Node.js
Node Congress 2023Node Congress 2023
85 min
Node.js: Aterrizando tu primera contribución de código abierto y cómo funciona el proyecto Node.js
Workshop
 Claudio Wunder
Claudio Wunder
Esta masterclass tiene como objetivo brindarte un módulo introductorio sobre los aspectos generales del código abierto. Sigue a Claudio Wunder de la Fundación OpenJS para que te guíe sobre cómo funciona el modelo de gobierno de Node.js, cómo se toman decisiones de alto nivel y cómo hacer tu primera contribución. Al final de la masterclass, tendrás una comprensión general de todos los tipos de trabajo que hace el proyecto Node.js (desde la clasificación de errores hasta decidir los próximos 10 años de Node.js) y cómo puedes formar parte del panorama más amplio del ecosistema JavaScript.

Las siguientes tecnologías y habilidades suaves podrían ser necesarias:
- Comprensión básica de Git e interfaz de GitHub
- Conocimiento de inglés profesional/intermedio para la comunicación y para permitirte contribuir a la organización Node.js (ya que todas las contribuciones requieren comunicación dentro de los problemas y solicitudes de GitHub)
- La masterclass requiere que tengas una computadora (de lo contrario, se vuelve difícil colaborar, pero las tabletas también están bien) con una configuración de IDE, y recomendamos VS Code y recomendamos la extensión GitHub Pull Requests & Issues para colaborar con problemas y solicitudes directamente desde el IDE.

Se cubrirán los siguientes temas durante la masterclass:
- Un repaso de algunas características de la interfaz de GitHub, como los proyectos de GitHub y los problemas de GitHub
- Repasaremos los conceptos básicos del código abierto y seguiremos la Guía de código abierto
- Repasaremos Markdown
- Cubriremos el gobierno del código abierto y cómo funciona el proyecto Node.js y hablaremos sobre la Fundación OpenJS
- Incluyendo todas las formas en que uno puede contribuir al proyecto Node.js y cómo se pueden valorar sus contribuciones
- Durante esta masterclass, cubriremos problemas de nodejs/nodejs.dev, ya que la mayoría de ellos son de nivel básico y no requieren conocimientos profundos de C++ o de Node.js.
- Dicho esto, aún recomendamos a los asistentes entusiastas que deseen desafiarse a sí mismos a los "Good First Issues" de nodejs/node (repositorio principal) si lo desean.
- Permitiremos a cada asistente elegir un problema o trabajar junto con otros asistentes para abordar problemas juntos mediante la función de Pair Programming a través de la característica de VS Code Live Share
- También podemos hacer salas de descanso en Zoom para las personas que deseen colaborar juntas
- Claudio estará allí para brindar apoyo a todos los asistentes y, por supuesto, responder cualquier pregunta sobre problemas y desafíos técnicos que puedan enfrentar
- Las tecnologías utilizadas en nodejs/nodejs.dev son React/JSX, Markdown, MDX y Gatsby. (No se necesita ningún conocimiento de Gatsby, ya que la mayoría de los problemas son agnósticos a la plataforma)
- Al final de la masterclass, recopilaremos todos los colaboradores que hayan abierto con éxito una solicitud de extracción (incluso si es un borrador) y reconoceremos su participación en las redes sociales.