September 25, 2018

5 Expert Tips For VCS Cloud Deployment

Version Control

In 2016, I heard a prediction that nearly all of our customers would be migrating into “the cloud” within five years. At the time, I recall thinking it was a bit aggressive for Perforce Helix Core, the large-scale database application used to manage our customers’ most valuable asset – their intellectual property.

Now, in 2018, I think that prediction is closer to reality. Some customers I spoke with just a year ago were not even considering moving workloads to the cloud. But now, they are starting to think about what a cloud strategy should look like for them. 

Here are some tips to get started with version control in the cloud.

Tip 1: Map Your Cloud Network 

When planning a cloud network, consider the concentration of users at various locations. Take note of the availability of data centers supplied by your cloud provider. To conquer long distances across oceans or continents, you can leverage a cloud provider’s WAN infrastructure. 

Tip 2: Start With a Hybrid Cloud Deployment Model

For most companies, it is not possible to forklift everything into the cloud at once. You may want to keep your existing infrastructure in place on-premises, at least initially. There are several options that let you leverage your existing environments and still enjoy benefits in the cloud. 

Consider deploying a master server in the cloud, with edge servers on premises. To support your geographically diverse teams, you might use forwarding replicas. These can move data between distant data centers using your cloud provider’s WAN infrastructure. It may have better WAN performance, bandwidth, or metered costs than using your existing network.

You can also deploy an edge server at each site and connect it to the nearest cloud server. This could be configured to follow an optimal network path, which can minimize the use of public internet pipes. 

Another hybrid cloud deployment keeps a master server in your own data center, and replicates using cloud infrastructure. Again, taking advantage of the cloud provider’s WAN.  If you operate a WAN between your facilities today, you may be able to bring those network pipes into the cloud provider’s data center. 

Tip 3: Get to Know Your Cloud Provider

When it comes to cloud providers, you have some options. AWS, Azure, and Google Cloud Platform (GCP) all operate differently. It is important to learn your cloud provider’s tools and network configurations. The mechanics and options available for access control and network setup vary significantly from one cloud provider to another.

Attend meetups to learn from other cloud IT professionals, and get training for your DevOps, sysops and VCS admins. There are great training options like online and classroom, including certifications, for the major cloud providers. 

Before you start spinning up cloud instances (virtual machines) to use as Helix Core servers, configure your virtual private cloud (VPC). When defining who can access it, think about external access. Ensure that your Helix Core servers have static private IP addresses within the VPC. This simplifies Perforce license management. 

Tip 4: Learn-as-You-Go Cloud Deployment Model

There are lots of reasons to be excited about cloud options, but it is important to adopt a mentality that allows your team to learn as they deploy. New technology can be disruptive to people’s established workflows. But this does not erase all the benefits driving cloud adoption at all scales.

In many cases, the desire to explore and deploy in the cloud is driven from the top down. Executives are noticing that traditional objections to cloud — such as security, performance at scale, and availability — have been addressed. Cloud providers have made significant strides to address what held companies back in the past.

It is easier than ever before to build and execute cloud deployments.  You can automate tasks that typically soak up IT’s bandwidth. Being able to do more with fewer people is a significant business advantage in driving cloud deployment projects. Enterprises and their IT professionals who adapt quickly and embrace cloud migration efforts can see the largest gains. Keep in mind that while it is easier to get started, there is still a lot to learn as technologies are constantly moving forward. 

Tip 5: Choose a Cloud Strategy Guide Carefully

When I recently benchmarked cloud-based Helix Core’s performance for a large software game developer, I was surprised by the results. Cloud data centers were able to support and at times surpass development and deployment efforts. Errors occurred less frequently. Maybe it was because there were no complex SANs to misconfigure, no crimped cables, or simply increased automation. 

This is why I am excited about the future of VCS workloads in the cloud. Cloud technology lets you focus more on the business and less on the nuts and bolts of maintaining your infrastructure. And with DevOps being so much about automation, it’s kind of a no brainer. 

If you are a Helix Core administrator with some tenure, you likely have spent a lot of time developing the strategy to optimally support your user community.

Planning a cloud deployment strategy means learning new concepts and a whole new lingo. You might try to “lift and shift” an application. This involves migrating with minimal changes to your current deployment architecture. Or you could re-architect your environment to feel more “cloud native.”

At times, cloud deployment exploration feels like learning new names for old concepts. But there are many options to develop your enterprise cloud solution. There can be a learning curve if you want optimize your investment. This means selecting the right guide to help you reach your goals. Perforce experts are here to help. Our variety of consulting packages allow you to choose the option that best suits your needs. 

This is the first in a series of articles about Helix Core cloud deployment. 

Are you cloud ready?

Learn more from Perforce Professional Services Team.