DevOps

The ultimate guide to GitOps with GitLab

It is possible to use GitLab as a best-in-class GitOps tool, and this blog post series is going to show you how. GitOps is an operational framework that takes DevOps best practices used for application development such as version control, collaboration, compliance, and CI/CD tooling, and applies them to infrastructure automation. This series of easy-to-follow tutorials will focus on different user problems, including provisioning, managing a base infrastructure, and deploying various third-party or custom applications on top of them, that can be solved by pairing GitOps with GitLab. Here are 8 tutorials on how to do GitOps with GitLab: 1. Here’s how to do GitOps with GitLab This tutorial sets the stage for what you will learn throughout the series, including the tech concepts you’ll need to know. 2. Infrastructure provisioning with GitLab and Terraform This tutorial walks you through setting up the underlying infrastructure using GitLab and Terraform. 3. Connect with a Kubernetes cluster This tutorial demonstrates how to connect a Kubernetes cluster with GitLab for pull- and push-based deployments and easy security integrations. 4. How to tackle secrets management This tutorial builds on the previous tutorial to show you how to use a Kubernetes cluster connection to manage secrets within a cluster. 5. The CI/CD tunnel This tutorial introduces you to CI/CD tunnels and shows step-by-step how to access a Kubernetes cluster using GitLab CI/CD. 6. Connecting GitLab with a Kubernetes cluster – Auto DevOps This tutorial looks at how you can use Auto DevOps with all its bells and whistles to easily manage deployments. 7. Connecting GitLab with a Kubernetes cluster for GitOps-style application delivery This tutorial shows you how to connect an application project to a manifest project for controlled, GitOps-style deployments. 8. Turn a GitLab agent for Kubernetes installation to manage itself This tutorial is the culmination of the previous tutorials and will teach you how to turn a GitLab agent for Kubernetes installation to manage itself. Read more about GitOps: “Want to learn how to pair GitOps with GitLab? Our eight-part in-depth tutorial series will take you step by step.” – Viktor Nagy Click to tweet

Read More

6 ways SMBs can leverage the power of a DevOps platform

A small or medium-sized business (SMB) or enterprise (SME) is likely working with a small staff but facing a big workload and even bigger expectations. Creating applications that will expand the customer base, keep up with a changing market, and take on competitors with deeper pockets can be daunting. It’s possible to ease those burdens by choosing a single, end-to-end DevOps platform. Productivity will skyrocket and so will opportunities to grow the company. Of course, DevOps offers significant technical benefits, like testing and building at scale with continuous integration and continuous delivery, a shorter lead time with automated deployment, and fewer production failures with earlier error detection. But a DevOps platform also offers myriad business benefits to help support and expand a start-up or SMB. Here are six more ways a DevOps platform can help an SMB: Improved customer satisfaction Using a DevOps platform means iteration can happen faster. And that’s critical for SMBs that need to be able to quickly make changes to meet customer needs. DevOps also provides a way to better monitor users’ feedback and makes it easier to respond with more speed and agility. And it reduces Change Failure Rates, increasing application reliability and stability. All of this means SMBs will be more able to give clients what they want and need, all while creating an engaging customer experience. Closer customer ties create trust and keep users loyal to products. Better security A DevOps platform embeds security to help seamlessly achieve a DevSecOps approach, a cornerstone of incorporating security scanning early in the software development lifecycle. By integrating testing and security reviews earlier in the process, and by using end-to-end automation, there are more opportunities to quickly and efficiently address any security issues. This reduces the time between designing new, higher-quality features and rolling them out into production. That’s the beauty of a platform approach to DevOps – security isn’t an afterthought. It’s part of the entire process. DevOps not only speeds production but creates more secure applications. And, simply put, more secure software makes for a more trusted product offering… and for happier, more satisfied customers. True collaboration and innovation Collaboration is one of the basic tenets of DevOps. By fostering communication and innovation, DevOps not only encourages developers and IT to work together, it also supports collaboration throughout the entire company. This is one area where SMBs have a huge advantage: With fewer employees, who also might be less set in their ways, collaboration and innovation are inherently more inclusive in a small business. An SMB or start-up is never too small for DevOps. By inviting discussion and assistance from all team members, DevOps creates a culture built around learning from and relying on others’ expertise; it also brings more ideas to the table. Happier employees and better retention The greatest resource a company has is its people. This is even more true for small companies where the pain of employee dissatisfaction and departure is felt even more acutely. Managers also don’t want projects waylaid because the people driving them are leaving. To stop that from happening, it’s critical the workplace keeps employees happy. Retaining a tech team isn’t just about perks, like in-office meditation pods, cereal stations, and foosball tables. Companies also need to give developers the processes and tools they need to […]

Read More

Introducing the next generation of the GitLab.com Container Registry

This blog post and linked pages contain information related to upcoming products, features, and functionality. It is important to note that the information presented is for informational purposes only. Please do not rely on this information for purchasing or planning purposes. As with all projects, the items mentioned in this blog post and linked pages are subject to change or delay. The development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc. In the coming weeks, we will begin the second phase of the rollout of the new version of the Container Registry on GitLab.com. Prior to deploying this update, we wanted to clearly communicate the planned changes, what to expect, and why we are excited. If you have any questions or concerns, please don’t hesitate to comment in the epic. Context In Milestone 8.8, GitLab launched the MVC of the Container Registry. This feature integrated the Docker Distribution registry into GitLab so that any GitLab user could have a space to publish and share container images. But there was an inherent limitation with Docker Distribution, as all metadata associated with a given image/tag was stored in the object storage backend. This made using that metadata to build API features (like storage usage visibility, sorting, and filtering) unfeasible. The most recent Container Registry update added a new PostgreSQL backend, which is used to store the metadata. Additionally, this new version also includes an automatic online garbage collector to remove untagged images and recover storage space. In November 2021, we started phase 1 of the migration. This completed in January 2022 without any significant issues. Since then, every new image repository pushed to GitLab.com uses the new, metadata database-backed registry. Today, nearly 20% of Container Registry traffic is already routed to the new version. Now we are ready to begin Phase 2 of the migration. This will migrate image repositories created before January 22, 2022, to the new Container Registry. Once complete, we can unblock many of the features that you’ve been asking for. Why we are excited The plan We’re planning a phased migration, starting with GitLab.org repositories. After that, we’ll move on to the Free tier, then on to Premium and Ultimate. We’ll roll this out incrementally to maintain safety for customers and provide our team with an opportunity to identify and address any concerns. Timing Migration begins: April 18th, 2022 Migration ends: July 8th, 2022. Tentative dates by tier: GitLab internal projects: April 14 – April 18 Free: April 18 – May 18 Premium: May 18 to June 18 Ultimate: June 18 to July 8 For more information about the planned, percentage-based rollout, please refer to this epic. What to expect For each repository, the migration will only target tagged images. Untagged and unreferenced manifests, and the layers they reference, will be left behind and become inaccessible. Untagged images were never visible through the GitLab UI or API, but they were left behind in the backend after becoming dangling. Once migrated to the new registry, repositories will be subject to continuous online garbage collection, deleting any untagged and unreferenced manifests and layers that remain as such for longer than 24 hours. To ensure data consistency, the migration of each repository requires the enforcement of a small read-only period at the […]

Read More