Home / Companies / Pulumi / Blog / May 2019

May 2019 Summaries

10 posts from Pulumi

Filter
Month: Year:
Post Summaries Back to Blog
Using Pulumi with TypeScript, this guide demonstrates how to deploy Jupyter Notebooks on a Google Kubernetes Engine (GKE) cluster, highlighting benefits such as reduced YAML usage and focusing on role-based access control (RBAC) instead of Helm and Tiller security concerns. The process begins with setting up necessary tools including Node.js, Pulumi, and Google Cloud SDK, followed by creating a Pulumi project and stack. A GKE cluster is then established, and an NGINX-Ingress-Controller is configured to manage ingress. Jupyter Notebook deployment and service are created with a NodePort type, and a secret is generated for basic authentication. The guide concludes with instructions on accessing the password-protected Jupyter Notebook via a domain name, demonstrating a successful deployment on GKE with SSL security.
May 30, 2019 1,318 words in the original blog post.
Pulumi has introduced a new MySQL provider that allows users to manage MySQL databases and instances across various clouds, including AWS, Azure, and GCP, enhancing the end-to-end provisioning of database infrastructure. The article provides a tutorial on using this provider to handle permissions, create databases, and perform other common tasks, demonstrating scenarios involving both existing MySQL servers and new AWS RDS instances. It outlines how to set up configurations, deploy infrastructure, and manage users and permissions, emphasizing that passwords are securely handled as Pulumi Secrets. The guide concludes by encouraging users to explore more capabilities of Pulumi via GitHub or the Pulumi Community Slack channel.
May 28, 2019 744 words in the original blog post.
The blog post outlines a comprehensive guide to integrating Pulumi with GitLab for continuous delivery of Kubernetes workloads on Amazon EKS, while also applicable to other Kubernetes clusters like Azure AKS or Google GKE. It emphasizes the organization of Pulumi projects and stacks within a hierarchy of organizations, allowing flexibility to accommodate diverse team needs, and explains the use of tags to manage environments. A detailed example illustrates the creation of Pulumi stacks corresponding to GitLab projects with environment tags, demonstrating the setup of a GitLab pipeline that includes preview, update, and downstream stages. The post highlights the importance of environment variables and the Pulumi StackReference feature for seamless deployment across different stages, concluding with references to further resources for expanding the solution.
May 22, 2019 2,053 words in the original blog post.
Kubernetes, while a powerful container orchestrator widely adopted across the industry, is often criticized for its complexity and the challenges associated with its YAML-based configuration. Pulumi offers a solution by allowing developers to manage Kubernetes and cloud resources using familiar programming languages and tools, thereby simplifying the process and enhancing flexibility. Pulumi enables the management of infrastructure as code, providing a seamless integration with managed Kubernetes services like GKE, EKS, and AKS, and supports the use of Helm charts and YAML manifests for incremental transitions. It offers advanced features like resource readiness checks and proactive error surfacing, making it easier to troubleshoot and maintain Kubernetes applications. Pulumi's state reconciliation model aligns well with CI/CD systems, facilitating smoother deployment workflows. By leveraging cloud provider services alongside Kubernetes, Pulumi helps developers build more reproducible and maintainable deployments, ultimately making Kubernetes more accessible and manageable.
May 21, 2019 846 words in the original blog post.
Pulumi has introduced enhanced features for managing secrets with its latest 0.17.12 release, focusing on providing users with greater control over encryption within Pulumi deployments. The release includes automatic tracking of secret values throughout a Pulumi program to ensure they remain encrypted in the state file, regardless of usage, as well as a new option for custom client-side encryption, allowing users to manage their encryption keys independently of the Pulumi backend. These advancements address concerns from users who seek more control over encryption and security compliance, enabling them to use Pulumi's cloud infrastructure management with increased confidence. Pulumi allows secrets to be handled securely through its Output<T> feature, which marks data as secret, ensuring its encryption and preventing leaks. The introduction of passphrase-based encryption gives users further flexibility by allowing them to encrypt secrets locally, using a derived key, rather than relying on Pulumi's managed keys, with future plans to support AWS KMS, Azure KeyVault, and GCP KMS for encryption.
May 17, 2019 1,982 words in the original blog post.
Pulumi is a platform that emphasizes the use of code to manage infrastructure, specifically highlighting its application in deploying Docker containers. The text outlines how Pulumi allows developers to write infrastructure as software by leveraging general-purpose programming languages like TypeScript, which facilitates code reuse, abstraction, and encapsulation. By defining Docker resources in code, Pulumi enables the creation and management of containers, such as a Redis instance and its management interface, Redis Commander, without relying on YAML. This flexibility extends to production environments, where Pulumi can abstract the deployment of these containers across different systems, including AWS ElastiCache, local Docker setups, or Kubernetes clusters. Pulumi's approach integrates software engineering practices, such as testing and error detection within IDEs, into infrastructure management, offering an open-source and versatile solution compatible with various cloud providers.
May 15, 2019 1,302 words in the original blog post.
Using the Pulumi-Azure open source package, users can create Azure Kubernetes Service (AKS) clusters with integrated Active Directory (AD) service principals, enabling seamless authentication and authorization. The package simplifies the process of enabling monitoring and logging for core AKS components using Pulumi SDKs, demonstrated through a step-by-step example. The setup involves installing the Pulumi CLI, setting up Azure credentials, and initializing a project using the azure-typescript template. Key steps include exporting configurations for the AKS stack, creating an AD service principal, establishing the AKS cluster, and enabling default monitoring and logging settings. Users can verify the cluster's creation through the Pulumi CLI, the Pulumi Service Console, and the Azure portal, with additional resources available on GitHub for further exploration of Pulumi's integration with Azure DevOps.
May 08, 2019 933 words in the original blog post.
Mikhail Shilkov, a Microsoft Azure MVP and early Pulumi user, shares insights into deploying serverless functions on Azure using Pulumi, highlighting its simplicity and efficiency. By leveraging Pulumi's capabilities, developers can deploy Node.js functions as HTTP endpoints with minimal code and configuration, benefiting from Azure's serverless compute services that automatically scale and are highly available. The tutorial demonstrates creating and deploying a serverless function with just two CLI commands and 12 lines of TypeScript code, showcasing Pulumi's ability to automate the process of compiling, packaging, and deploying code to Azure. Beyond basic HTTP functions, the tutorial explores using queues for asynchronous message processing and setting up event-driven triggers, like responding to new messages in a queue or new files in a storage container, emphasizing the flexibility of using TypeScript for serverless application development. The post encourages community engagement to expand the Pulumi serverless programming model by discussing potential new features, supported trigger types, and the packaging of multiple functions.
May 07, 2019 1,107 words in the original blog post.
Mikhail Shilkov, a Microsoft Azure MVP, provides a detailed guide on developing Pulumi programs using TypeScript to leverage Azure's Platform-as-a-Service (PaaS) offerings, specifically focusing on Azure App Service and Azure SQL Database. The guide illustrates how to automate infrastructure deployment with Pulumi, an Infrastructure as Code (IaC) tool, to manage cloud resources efficiently. It highlights the benefits of using Azure's PaaS, such as ease of use and integrated services like Azure DevOps and Application Insights, while addressing the challenges posed by multiple cloud services requiring infrastructure automation. Shilkov walks through the process of deploying an ASP.NET Core application and SQL database using a Pulumi program integrated with Azure DevOps for a continuous deployment pipeline, showcasing the advantages of using Pulumi's stacks for managing different environments. The tutorial demonstrates how to set up essential cloud components like resource groups, storage accounts, App Services, and SQL databases, and how to connect them using Pulumi's TypeScript-based configuration. The walkthrough underscores the efficiency of Pulumi in orchestrating cloud infrastructure, allowing developers to utilize familiar programming languages while abstracting the complexities of cloud management.
May 06, 2019 2,473 words in the original blog post.
Azure DevOps is widely used by teams to manage various aspects of software development, including pipelines, repositories, builds, and test plans, while Pulumi offers open-source tools ideal for deploying infrastructure as code on Azure. A new open-source task extension for Azure Pipelines has been introduced to facilitate the integration of Pulumi, making it easier for teams to adopt continuous integration and continuous delivery (CI/CD) for their Azure infrastructure. This extension manages the Pulumi CLI installation and supports command execution against specified stacks, and can be installed from the Visual Studio Marketplace. Users can configure the Pulumi task extension using either the Classic Editor Console or a YAML file, with the capability to run on both Linux and Windows environments. Once set up, this integration allows for smoother inclusion of Pulumi in CI/CD pipelines, enabling previews of infrastructure changes and simplifying deployment processes. Users are encouraged to join the Pulumi Community Slack or explore additional resources for in-depth learning and community engagement.
May 06, 2019 499 words in the original blog post.