Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Testing and deploying Couchbase Mobile – Couchbase Connect 2016

294 views

Published on

In this session you’ll learn how to perform functional, scalability, performance, and reliability tests on your Couchbase Mobile application. James will demonstrate how to test query, synchronization, conflict resolution, and security. You’ll also see how to test the scaling capabilities of Sync Gateway, the performance of Couchbase Lite and Sync Gateway, and the high availability and disaster recovery capabilities of Sync Gateway. Next, you’ll learn how to install, upgrade, and scale Couchbase Mobile. Traun will cover the end-to-end process for deploying your Couchbase Mobile application.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Testing and deploying Couchbase Mobile – Couchbase Connect 2016

  1. 1. ©2016 Couchbase Inc. Deploy: installing, upgrading and scaling 1
  2. 2. ©2016 Couchbase Inc. 2 James Nocentini TechnicalWriter jamesn@couchbase.com @jamiltz IMAGE GOES HERE
  3. 3. ©2016 Couchbase Inc. 3 Traun Leyden Software Engineer tleyden@couchbase.com @tleydn IMAGE GOES HERE
  4. 4. ©2016 Couchbase Inc.©2016 Couchbase Inc. Agenda 4 • Overall System Overview • Deploying onOperating Systems /Virtual Machines • Overview • Demo onVirtualBox cluster • Deploying onContainers • Overview • Deploying on PaaS – Platform as a Service • PaaS landscape overview • Demo on Docker Cloud
  5. 5. ©2016 Couchbase Inc.©2016 Couchbase Inc. Deployed System Overview 5
  6. 6. ©2016 Couchbase Inc. 6 Deploying on Operating Systems /Virtual Machines Containers PaaS Providers
  7. 7. ©2016 Couchbase Inc. 7 Supported Backend Platforms • Operating Systems /Virtual Machines • Linux: RedHat / CentOS / Ubuntu • Windows • OSX • • • • • • • •
  8. 8. ©2016 Couchbase Inc.©2016 Couchbase Inc. Deployment Stages forVMs 8 1. Start Virtual Machines 2. Provisioning Couchbase Server and Sync Gateway 3. Configuration Changes 4. Scaling
  9. 9. ©2016 Couchbase Inc. 9 Demo
  10. 10. ©2016 Couchbase Inc.©2016 Couchbase Inc. Install 10 1. Install Couchbase Server 2. Configure Couchbase Server 3. Install Sync Gateway 4. Configure Sync Gateway (Connect to CBS) 5. Configure Ngninx
  11. 11. ©2016 Couchbase Inc.©2016 Couchbase Inc. Rolling Upgrade 11 1. Remove SG on VM2 from Nginx Rotation 2. Upgrade SG on VM2 3. Re-add SG on VM2 to Nginx rotation
  12. 12. ©2016 Couchbase Inc.©2016 Couchbase Inc. Rolling Upgrade 12 1. Repeat steps for SG on VM3
  13. 13. ©2016 Couchbase Inc.©2016 Couchbase Inc. Scaling 13 1. Configure SG to connect to Couchbase Server 2. Add new SG to Nginx rotation
  14. 14. ©2016 Couchbase Inc.©2016 Couchbase Inc. Demo Recap • InstallCouchbase Server • Configure Couchbase Cluster • Install Sync Gateway • Configure Sync Gateway • Configure NGINX • Rolling Upgrades • Auto-scaling • Configuration changes 14
  15. 15. ©2016 Couchbase Inc. 15 Operating Systems /Virtual Machines Deploying on Containers PaaS Providers
  16. 16. ©2016 Couchbase Inc. 16 Supported Backend Platforms • • • • • Containers • Docker • • • • • •
  17. 17. ©2016 Couchbase Inc. 17 Containers (Docker) Advantages • Quick to start/restart • Portability • Isolation • Resource allocation and scheduling Challenges • Data persistence • Additional networking complexity • Microservice Overhead
  18. 18. ©2016 Couchbase Inc.©2016 Couchbase Inc. Container Persistent Data challenges • Container file systems are based on UnionFS and not appropriate for high IO throughput • Volumes let you mount host directories into container – data persists beyond container instance • Kubernetes ContainerOrchestration • By default, will schedule containers on any node and your host directory probably won’t be there • PetSets were recently introduced to solve this issue 18
  19. 19. ©2016 Couchbase Inc.©2016 Couchbase Inc. Container networking challenges • Containers communicating across hosts • Workaround: host only networking – container runs directly on host’s network interface • Right way: Use Overlay Networking • Set it up yourself with Weave (Hard) • Use Kubernetes • Use Docker Swarm • Couchbase Server sensitive to change in IP address • Problem: restart a container and it gets a new IP address and tries to rejoin, cluster won’t recognize • Workaround: configure with stable routable DNS names 19
  20. 20. ©2016 Couchbase Inc. 20 Operating Systems /Virtual Machines Containers Deploying on PaaS Providers
  21. 21. ©2016 Couchbase Inc.©2016 Couchbase Inc. Couchbase Images on DockerHub – officially supported 21
  22. 22. ©2016 Couchbase Inc. 22 Supported Backend Platforms • • • • • • • PaaS Providers • AWS • Azure • Google Container Engine (GKE) • Docker Cloud • OpenStack3 (coming soon)
  23. 23. ©2016 Couchbase Inc.©2016 Couchbase Inc. Deployment Stages for Docker Cloud 23 1. Provisioning Nodes 2. Creating the Services 3. Deploying Containers 4. Scaling Services
  24. 24. ©2016 Couchbase Inc.©2016 Couchbase Inc. Docker Cloud – (Dev Mode) 5 containers striped across 2 nodes 24 Node1 - EC2 Instance Node2 - EC2 Instance Couchbase Service Sync Gateway Service HAProxy Service Sync Gateway1 Container Sync Gateway2 Container Couchbase1 Container Couchbase2 Container HAProxy Container
  25. 25. ©2016 Couchbase Inc.©2016 Couchbase Inc. Docker Cloud – (Production Mode) Dedicated node per container 25 Node5 - EC2 Instance Node4 - EC2 Instance Node3 - EC2 Instance Node1 - EC2 Instance Node2 - EC2 Instance Couchbase Service Sync Gateway Service HAProxy Service Sync Gateway1 Container Sync Gateway2 Container Couchbase1 Container Couchbase2 Container HAProxy Container
  26. 26. ©2016 Couchbase Inc. 26 Demo
  27. 27. ©2016 Couchbase Inc.©2016 Couchbase Inc. Docker Cloud Demo Recap 27 1. Start 2 Nodes (pre-demo) 2. Start Couchbase Server Service with 2 Containers 3. Configure Couchbase Server cluster 4. Start Sync Gateway Service with 2 Containers 5. Verify Sync Gateway 6. Start HAProxy load balancer Service with 1 Container 7. Verify Sync Gateway via HAProxy Setup 1. Start new Node 2. Scale Sync Gateway Service to add another container (3 total) 3. Send Requests to HAProxy and verify logs in Sync Gateway Container 3 Scale
  28. 28. ©2016 Couchbase Inc. ThankYou! 28

×