July 2019 Summaries
5 posts from Harness
Filter
Month:
Year:
Post Summaries
Back to Blog
Harness's Canary Deployments for Kubernetes facilitate a gradual rollout of updates, minimizing risks by testing changes on a smaller group of users before a full release. The text discusses complexities in the Kubernetes ecosystem, such as the decision between delegating certain functionalities to the platform or the application itself and the introduction of new technologies like Ingress Controllers that enhance Kubernetes functionality. The concept of deploying Kubernetes clusters "the hard way" is explored, highlighting the importance of understanding the platform deeply, while also acknowledging the trend towards more user-friendly solutions offered by cloud and platform-as-a-service vendors. Deployment strategies like canary releases and blue/green deployments are examined, focusing on their operational intricacies and the use of Labels and Selectors to differentiate deployments. The text emphasizes the challenges and decisions involved in load balancing and routing within Kubernetes clusters, particularly with the growing options available for Ingress and service mesh technologies. Finally, it points out the role of tools like Harness in simplifying these processes and integrating canary deployments into continuous delivery pipelines, promising further insights in the subsequent parts of the discussion.
Jul 30, 2019
1,661 words in the original blog post.
Setting up a local Kubernetes cluster using Minikube is an efficient way to ease into Kubernetes deployments, allowing developers to quickly deploy and manage applications such as the Kung-Fu-Canary with basic KubeCTL commands. This approach helps in understanding Kubernetes' declarative nature and basic operations, which can pave the way for more complex deployments and integrations with advanced platforms like Harness. Minikube, since its introduction in 2016, has been a popular choice for interacting with Kubernetes locally due to its simplicity, especially when installed on a Mac using Homebrew and VirtualBox for virtualization. The tutorial emphasizes the importance of understanding YAML syntax for defining applications and provides a step-by-step guide to deploying and managing a simple application, Kung-Fu-Canary, using KubeCTL commands. It also highlights the significance of Readiness and Liveness Checks in Kubernetes deployments to maintain healthy applications. As developers delve deeper into Kubernetes, they are encouraged to leverage tools like Harness for more sophisticated deployment strategies.
Jul 23, 2019
1,695 words in the original blog post.
Feature flags provide developers with dynamic control over which users experience specific features without necessitating redeployments or restarts, enabling gradual rollouts and targeted experiments. Often confused with static flags like compile-time or configuration flags, feature flags allow for decisions on a user-by-user and session-by-session basis, thereby separating deployment from release. This strategy empowers teams to conduct controlled rollouts and experiments by directing subsets of users to different features and observing outcomes, all managed through a feature flagging service. Platforms like Split facilitate this process, offering tools for feature management, experimentation, and integration with contextual data, enabling faster, safer, and more informed deployment practices.
Jul 22, 2019
718 words in the original blog post.
Kubernetes offers a robust solution for managing distributed systems by addressing container sprawl, facilitating efficient scaling and change management, and becoming a cornerstone of modern cloud infrastructure. Evolving from Google's Omega and Borg projects, Kubernetes combines scheduling and resource management to orchestrate containers in distributed environments. It employs a master-worker model, where the master node orchestrates tasks and worker nodes execute them, hosting applications within Pods, which are logical groupings of containers. The platform's flexibility is enhanced by tools like Helm, a package manager that simplifies deploying Kubernetes resources, and the ecosystem's growth has made Kubernetes a ubiquitous runtime across various environments, including hybrid cloud setups. Harness complements Kubernetes by providing an advanced orchestration layer that integrates seamlessly with Kubernetes deployments, enhancing deployment strategies and making Kubernetes management more efficient.
Jul 18, 2019
1,109 words in the original blog post.
Containers provide consistency and portability for applications, allowing for increased deployment efficiency and density, with Docker being a key tool in this ecosystem. Docker simplifies the creation, running, and sharing of containerized applications, facilitating scalable solutions like Kubernetes. Originating from the Linux Containers standard, Docker gained prominence for its ability to maintain uniformity across environments, promoting the concept of "write once, run anywhere." Although containers are immutable and ephemeral, which can pose challenges for stateful workloads, they offer significant benefits by packaging system libraries with applications, enabling right-sizing and high-density deployments. The article discusses the basics of using Docker, including pulling and running images, and hints at the complexity of orchestrating these containers with Kubernetes, which will be explored further in subsequent parts of a series by Harness.
Jul 16, 2019
1,564 words in the original blog post.