How to develop, build, and deploy Node.js microservices with Pulumi and Azure DevOps

certificate
Recording and certification are available to Multipass and Full ticket holders only
Please login if you have one.
    Rate this content
    Bookmark

    The workshop gives a practical perspective of key principles needed to develop, build, and maintain a set of microservices in the Node.js stack. It covers specifics of creating isolated TypeScript services using the monorepo approach with lerna and yarn workspaces. The workshop includes an overview and a live exercise to create cloud environment with Pulumi framework and Azure services. The sessions fits the best developers who want to learn and practice build and deploy techniques using Azure stack and Pulumi for Node.js.

    This workshop has been presented at DevOps.js Conf 2022, check out the latest edition of this Tech Conference.

    FAQ

    The workshop focuses on deploying Node.js microservices using technologies like Bluemix and Azure cloud.

    The instructors for the workshop are Alex Porjikov and Andrew Haj.

    The workshop will cover technologies such as Node.js, Bluemix, Azure cloud, gRPC, Protocol Buffers, Docker, Kubernetes, Azure DevOps, and Pulumi.

    gRPC is a modern open-source remote procedure call framework developed by Google that enables client and server applications to communicate and make it easier to build connected systems.

    Protocol Buffers is a language-neutral, platform-neutral, extensible mechanism developed by Google for serializing structured data, used primarily in communication protocols, data storage, and more.

    Docker is used to containerize the Node.js microservices, allowing them to run in isolated environments. It helps in packaging the application with all its dependencies to ensure consistency across different environments.

    Pulumi is a developer-centric tool for creating infrastructure as code using familiar programming languages like TypeScript, JavaScript, Python, Go, C#, and F#. Unlike Terraform, which uses a dedicated configuration language (HCL), Pulumi allows for more flexible and expressive configurations using general-purpose programming languages.

    Azure DevOps is used for managing the code repository, running CI/CD pipelines, and handling task organization and user management for the microservices project.

    An ingress in Kubernetes is a collection of rules that allow inbound connections to reach the cluster services. It provides HTTP and HTTPS routing to services based on hostnames and paths.

    Participants can ask questions in the chat or post messages during the workshop to get help from the instructors.

    Alex Korzhikov
    Alex Korzhikov
    Andrew Reddikh
    Andrew Reddikh
    163 min
    12 Apr, 2022

    Comments

    Sign in or register to post your comment.

    Video Summary and Transcription

    The Workshop is about deploying Node.js microservices with Pulumi and Azure. It covers Docker, Kubernetes, Azure, and Pulumi concepts. The project uses a Monorepo approach and relies on gRPC and protocol buffers for communication between microservices. Pulumi is a flexible tool for creating infrastructure as code and supports multiple languages. The workshop also explores deploying applications with Helm in Kubernetes and discusses future plans for exploring microservices and database separation.
    Video transcription and chapters available for users with access.

    Watch more workshops on topic

    Node.js Masterclass
    Node Congress 2023Node Congress 2023
    109 min
    Node.js Masterclass
    Top Content
    Workshop
    Matteo Collina
    Matteo Collina
    Have you ever struggled with designing and structuring your Node.js applications? Building applications that are well organised, testable and extendable is not always easy. It can often turn out to be a lot more complicated than you expect it to be. In this live event Matteo will show you how he builds Node.js applications from scratch. You’ll learn how he approaches application design, and the philosophies that he applies to create modular, maintainable and effective applications.

    Level: intermediate
    Build and Deploy a Backend With Fastify & Platformatic
    JSNation 2023JSNation 2023
    104 min
    Build and Deploy a Backend With Fastify & Platformatic
    WorkshopFree
    Matteo Collina
    Matteo Collina
    Platformatic allows you to rapidly develop GraphQL and REST APIs with minimal effort. The best part is that it also allows you to unleash the full potential of Node.js and Fastify whenever you need to. You can fully customise a Platformatic application by writing your own additional features and plugins. In the workshop, we’ll cover both our Open Source modules and our Cloud offering:- Platformatic OSS (open-source software) — Tools and libraries for rapidly building robust applications with Node.js (https://oss.platformatic.dev/).- Platformatic Cloud (currently in beta) — Our hosting platform that includes features such as preview apps, built-in metrics and integration with your Git flow (https://platformatic.dev/). 
    In this workshop you'll learn how to develop APIs with Fastify and deploy them to the Platformatic Cloud.
    Building a Hyper Fast Web Server with Deno
    JSNation Live 2021JSNation Live 2021
    156 min
    Building a Hyper Fast Web Server with Deno
    WorkshopFree
    Matt Landers
    Will Johnston
    2 authors
    Deno 1.9 introduced a new web server API that takes advantage of Hyper, a fast and correct HTTP implementation for Rust. Using this API instead of the std/http implementation increases performance and provides support for HTTP2. In this workshop, learn how to create a web server utilizing Hyper under the hood and boost the performance for your web apps.
    0 to Auth in an Hour Using NodeJS SDK
    Node Congress 2023Node Congress 2023
    63 min
    0 to Auth in an Hour Using NodeJS SDK
    WorkshopFree
    Asaf Shen
    Asaf Shen
    Passwordless authentication may seem complex, but it is simple to add it to any app using the right tool.
    We will enhance a full-stack JS application (Node.JS backend + React frontend) to authenticate users with OAuth (social login) and One Time Passwords (email), including:- User authentication - Managing user interactions, returning session / refresh JWTs- Session management and validation - Storing the session for subsequent client requests, validating / refreshing sessions
    At the end of the workshop, we will also touch on another approach to code authentication using frontend Descope Flows (drag-and-drop workflows), while keeping only session validation in the backend. With this, we will also show how easy it is to enable biometrics and other passwordless authentication methods.
    Table of contents- A quick intro to core authentication concepts- Coding- Why passwordless matters
    Prerequisites- IDE for your choice- Node 18 or higher
    Decomposing Monolith NestJS API into GRPC Microservices
    Node Congress 2023Node Congress 2023
    119 min
    Decomposing Monolith NestJS API into GRPC Microservices
    Workshop
    Alex Korzhikov
    Alex Korzhikov
    The workshop focuses on concepts, algorithms, and practices to decompose a monolithic application into GRPC microservices. It overviews architecture principles, design patterns, and technologies used to build microservices. It covers the theory of the GRPC framework and protocol buffers mechanism, as well as techniques and specifics of building isolated TypeScript services in the Node.js stack. The workshop includes a live use case demo of decomposing an API application into a set of microservices. It fits the best architects, tech leads, and developers who want to learn microservices patterns.
    Level: AdvancedPatterns: DDD, MicroservicesTechnologies: GRPC, Protocol Buffers, Node.js, TypeScript, NestJS, Express.js, PostgreSQL, TurborepoExample structure: monorepo configuration, packages configuration, common utilities, demo servicePractical exercise: refactor monolith app
    Going on an adventure with Nuxt 3, Motion UI and Azure
    JSNation 2022JSNation 2022
    141 min
    Going on an adventure with Nuxt 3, Motion UI and Azure
    WorkshopFree
    Melanie de Leeuw
    Melanie de Leeuw
    We love easily created and deployed web applications! So, let’s see what a very current tech stack like Nuxt 3, Motion UI and Azure Static Web Apps can do for us. It could very well be a golden trio in modern day web development. Or it could be a fire pit of bugs and errors. Either way it will be a learning adventure for us all. Nuxt 3 has been released just a few months ago, and we cannot wait any longer to explore its new features like its acceptance of Vue 3 and the Nitro Engine. We add a bit of pizzazz to our application with the Sass library Motion UI, because static design is out, and animations are in again.Our driving power of the stack will be Azure. Azure static web apps are new, close to production and a nifty and quick way for developers to deploy their websites. So of course, we must try this out.With some sprinkled Azure Functions on top, we will explore what web development in 2022 can do.

    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

    Levelling up Monorepos with npm Workspaces
    DevOps.js Conf 2022DevOps.js Conf 2022
    33 min
    Levelling up Monorepos with npm Workspaces
    Top Content
    NPM workspaces help manage multiple nested packages within a single top-level package, improving since the release of NPM CLI 7.0. You can easily add dependencies to workspaces and handle duplications. Running scripts and orchestration in a monorepo is made easier with NPM workspaces. The npm pkg command is useful for setting and retrieving keys and values from package.json files. NPM workspaces offer benefits compared to Lerna and future plans include better workspace linking and adding missing features.
    It's a Jungle Out There: What's Really Going on Inside Your Node_Modules Folder
    Node Congress 2022Node Congress 2022
    26 min
    It's a Jungle Out There: What's Really Going on Inside Your Node_Modules Folder
    Top Content
    The talk discusses the importance of supply chain security in the open source ecosystem, highlighting the risks of relying on open source code without proper code review. It explores the trend of supply chain attacks and the need for a new approach to detect and block malicious dependencies. The talk also introduces Socket, a tool that assesses the security of packages and provides automation and analysis to protect against malware and supply chain attacks. It emphasizes the need to prioritize security in software development and offers insights into potential solutions such as realms and Deno's command line flags.
    Automating All the Code & Testing Things with GitHub Actions
    React Advanced Conference 2021React Advanced Conference 2021
    19 min
    Automating All the Code & Testing Things with GitHub Actions
    Top Content
    We will learn how to automate code and testing with GitHub Actions, including linting, formatting, testing, and deployments. Automating deployments with scripts and Git hooks can help avoid mistakes. Popular CI-CD frameworks like Jenkins offer powerful orchestration but can be challenging to work with. GitHub Actions are flexible and approachable, allowing for environment setup, testing, deployment, and custom actions. A custom AppleTools Eyes GitHub action simplifies visual testing. Other examples include automating content reminders for sharing old content and tutorials.
    Fine-tuning DevOps for People over Perfection
    DevOps.js Conf 2022DevOps.js Conf 2022
    33 min
    Fine-tuning DevOps for People over Perfection
    Top Content
    DevOps is a journey that varies for each company, and remote work makes transformation challenging. Pull requests can be frustrating and slow, but success stories like Mateo Colia's company show the benefits of deploying every day. Challenges with tools and vulnerabilities require careful consideration and prioritization. Investing in documentation and people is important for efficient workflows and team growth. Trust is more important than excessive control when deploying to production.
    Towards a Standard Library for JavaScript Runtimes
    Node Congress 2022Node Congress 2022
    34 min
    Towards a Standard Library for JavaScript Runtimes
    Top Content
    There is a need for a standard library of APIs for JavaScript runtimes, as there are currently multiple ways to perform fundamental tasks like base64 encoding. JavaScript runtimes have historically lacked a standard library, causing friction and difficulty for developers. The idea of a small core has both benefits and drawbacks, with some runtimes abusing it to limit innovation. There is a misalignment between Node and web browsers in terms of functionality and API standards. The proposal is to involve browser developers in conversations about API standardization and to create a common standard library for JavaScript runtimes.
    ESM Loaders: Enhancing Module Loading in Node.js
    JSNation 2023JSNation 2023
    22 min
    ESM Loaders: Enhancing Module Loading in Node.js
    ESM Loaders enhance module loading in Node.js by resolving URLs and reading files from the disk. Module loaders can override modules and change how they are found. Enhancing the loading phase involves loading directly from HTTP and loading TypeScript code without building it. The loader in the module URL handles URL resolution and uses fetch to fetch the source code. Loaders can be chained together to load from different sources, transform source code, and resolve URLs differently. The future of module loading enhancements is promising and simple to use.