Cloud Migration & DevOps Enablement
Blue Bottle Coffee increases customer satisfaction through rapid product updates delivered on the AWS cloud
Blue Bottle Coffee (BBC) is a coffee roaster and retailer with an international network of cafes (U.S., Japan), offering coffee products through wholesale partners
BBC’s infrastructure was insecure and distributed among a few cloud providers, with no DevOps, which increased TCO and slowed down time to market
Provectus migrated BBC’s infrastructure to AWS cloud, implemented CI/CD pipelines, enhanced the app’s security, and improved monitoring and alerting systems
BBC’s infrastructure was optimized for migration to AWS, with DevOps enabled, allowing to reduce TCO, speed up TTM, and increase business performance
Enhanced product performance
50% reduction in TCO
2x shorter release cycle
A New Infrastructure Encompassing CI/CD Pipelines Automation, Enhanced Security, and Improved Monitoring and Alerting
By migrating their IT-infrastructure to AWS and by enabling DevOps, Blue Bottle Coffee intended to resolve the following issues:
- Assemble and optimize the disjointed IT-infrastructure elements to increase the security of the entire BBC’s ecosystem
- Implement CI/CD pipelines to accelerate and facilitate the deployment process by eliminating manual operations
- Eradicate operational inefficiencies, which caused high TCO and slow TTM while keeping BBC’s engineering team busy
Blue Bottle Coffee approached Provectus to prepare their IT-infrastructure for AWS migration, optimize and enhance its deployment process, and make BBC’s entire ecosystem more secure, which would allow the company to further spur its expansion, both in the USA and abroad.
Re-Architecturing Applications and Microservices for Migration to AWS Cloud
Provectus re-architectured applications and microservices to prepare and migrate Blue Bottle Coffee’s infrastructure to the AWS cloud, implemented new highly automated CI/CD pipelines, introduced enhanced security layers, improved monitoring and alerting systems.
Provectus migrated Blue Bottle Coffee’s infrastructure to AWS in several stages:
- Preparatory work for the migration from Heroku and DigitalOcean
- Implementing CI/CD pipelines, fixing security and monitoring issues, moving all services to the AWS cloud
- Migration of Blue Bottle Coffee’s main applications from Heroku
To optimize the network infrastructure, Provectus created a separate VPC for Staging and Production environments. Segmented public and private subnets (with NAT gateways) were used to control inbound/outbound traffic and outbound connections.
CI/CD pipelines for microservices were redesigned and enhanced, with focus on automatic builds and tests on pull requests. CI/CD notifications’ delivery to Slack was enabled. Migration from Travis CI to a self-hosted Jenkins with on-demand Agents running on Spot-Instances was performed. CI/CD pipelines for mobile applications were added. Infrastructure as a code (IaaS) was implemented by creating CloudFormation templates for the AWS infrastructure.
Deployment operations were unified; monitoring and log aggregation were improved by migrating all services from Elastic Beanstalk to ECS and implementing Parameter Store to configure services and Amazon Cloudwatch with ELK stack to collect logs and metrics from all services. Data pipelines infrastructure was designed and implemented based on Apache Airflow. Workers were built in Amazon ECS, with data stored in RDS and S3. New pipelines were added up to a CI/CD system; CloudFormation templates were created to enable automation. On the development side, a separate staging environment to test any changes was created. Docker images for every service were created: deploy any commit hash to a dynamic QA environments for review; docker-compose for a local environment; fresh test data as a Docker image. BBC’s security was optimized and enhanced.
Provectus installed OpenVPN to give access to internal resources, configured separate IAM roles for services, created unique ssh user and ssh key for developers, installed Ansible for management ssh keys and ParamStore for sensitive data, implemented AWS Security Manager, restricted public access to Bluebottle DB, updated PagerDuty rules, and enabled SSL certificate creation via LetsEncrypt and AWS Certificate Manager. BBC’s main application was migrated from Heroku to AWS: production PostgreSQL database was moved to AWS, QCLogger was dockerized and deployed to Staging environment, dockerized applications and microservices were done, Redis docker container was moved from ECS to AWS Elasticache.
The main application’s performance was improved due to CloudFormation templates, Elastic Load Balancing, ECS cluster, service for Main application, service for Review workers, new CI/CD pipelines for reduced time for tests, added parallel tests for several developers, and a dockerized app.
Unlocking the Potential of the Engineering Team on a New, IT Infrastructure in the Cloud
Blue Bottle Coffee’s IT infrastructure was prepared and migrated to the AWS Cloud. It was re-designed and optimized to enable DevOps: new highly automated CI/CD pipelines were implemented, enhanced security layers were created, monitoring and alerting systems were improved.
BBC managed to optimize IT operations and reduce the amount of redundant manual tasks to unlock their engineering’s team potential, allowing it to prioritize complex development-based activities. This helped BBC accelerate its product release cycle by 2x.
The migration to AWS and the introduction of DevOps allowed BBC to significantly improve time to market and to reduce total cost of ownership by 50%, making a positive impact on overall business performance.