ensuring high availability and disaster recovery – couchbase connect 2016
Post on 15-Apr-2017
183 Views
Preview:
TRANSCRIPT
FileNewTemplate
Ensuring High Availability and Disaster Recovery
2016 Couchbase Inc.
1
About MeDavid OstrovskySenior Solutions Architectdavido@couchbase.com@DavidOstrovsky
2016 Couchbase Inc.
2016 Couchbase Inc.
2
Part I - High Availability
2016 Couchbase Inc.Part I - High Availability Single node architectureLocal data redundancyRebalance and failoverNode recovery
Part II - Disaster RecoveryBusiness continuity for mission-critical applications Geo redundancy Backup-Restore for worst case scenario
3
Couchbase Server Single Node Architecture
Heartbeat
Process monitor
Global singleton supervisorConfiguration manageron each node
Rebalance orchestrator
Node health monitor
one per clusavBucket state and replication manager
http
REST management API/Web UIHTTP8091Erlang port mapper4369Distributed Erlang21100 - 21199
Erlang/OTP
storage interface
Couchbase EP Engine11210Memcapable 2.0
Moxi11211Memcapable 1.0MemcachedPersistence Layer8092Query API
Query Engine
Data Manager
Cluster ManagerSingle Node type is the foundation for high availability architecture
No Single Point of Failure (SPOF)
Easy scalability
2016 Couchbase Inc.
2016 Couchbase Inc.Single Node type is the foundation for high availability architecture
No Single Point of Failure (SPOF)
Easy scalability
4
Cluster Architecture
2016 Couchbase Inc.
2016 Couchbase Inc.Single Node type is the foundation for high availability architectureNo Single Point of Failure (SPOF)Easy scalability Up to 4 copies of the data in the cluster
5
Write Operation332
Managed CacheDisk Queue
Disk
Replication Queue
App ServerMemory-to-Memory Replication to other node
Doc
Doc
Doc
2016 Couchbase Inc.
2016 Couchbase Inc.Database Change Protocol (DCP)
2016 Couchbase Inc.
2016 Couchbase Inc.High-Performance, Stream-based ProtocolBetter Resume-ability after blips and failurePowers Intra Cluster ReplicationPowers Cross Datacenter ReplicationPowers Incremental Backup & RestoreExternal API, lets you extend Couchbase functionality7
Cluster Operation
Server 4
Server 5ReplicaActiveReplicaActive
App Server 1
COUCHBASE Client Library
Cluster Map
COUCHBASE Client Library
Cluster MapApp Server 2
ActiveServer 1
Shard 5
Shard 2
Shard 9
Shard
Shard
ShardReplica
Shard 4
Shard 1
Shard 8
Shard
Shard
Shard
ActiveServer 2
Shard 4
Shard 7
Shard 8
Shard
Shard
ShardReplica
Shard 6
Shard 3
Shard 2
Shard
Shard
Shard
ActiveServer 3
Shard 1
Shard 3
Shard 6
Shard
Shard
ShardReplica
Shard 7
Shard 9
Shard 5
Shard
Shard
ShardApp servers accessing ShardsRequests to Server 3 failCluster detects server failedPromotes replicas of Shards to activeUpdates cluster mapRequests for docs now go to appropriate serverTypically rebalance would follow
Shard 1
Shard 3
Shard
2016 Couchbase Inc.
2016 Couchbase Inc.Explain about partitioning (vBuckets)Explain about rebalanceExplain what failover isDemo failover
8
Rack 2Rack-Zone Awareness
Rack 1 3 1
2
6 4
5
2016 Couchbase Inc.
2016 Couchbase Inc.Demo rack awareness in Couchbase web UI9
Part II Disaster Recovery
2016 Couchbase Inc.
2016 Couchbase Inc.Cross Datacenter Replication (XDCR)
Unidirectional ReplicationBidirectional Replication
2016 Couchbase Inc.
2016 Couchbase Inc.Replicates continuously data FROM source cluster to remote clusters may be spread across geosSupports unidirectional and bidirectional operationApplication can read and write from both clusters (active active replication)Automatically handles node addition and removalReplication throughput scales out linearlySimplified Administration via console, REST, and CLI
12
Cross Datacenter Replication (XDCR)332
Managed CacheDisk Queue
Disk
Replication Queue
App ServerMemory-to-Memory Replication to other node
Doc
Doc
Doc XDCR QueueMemory-to-Memory Replication to remote cluster
Doc
2016 Couchbase Inc.
2016 Couchbase Inc.XDCR for geo load balancingXDCR for disaster recoveryDemo XDCR cluster level failover
13
Backup & Restore
2016 Couchbase Inc.cbbackup tools provides backup for a running clusterEntire Cluster across all bucket Single Node across all bucketsSingle Node single bucketSupports remote or local access
(New in 3.0) Incremental Backups Differential Or Cumulative Back up data that only changed since the last backup. Minimize resource and time consumption during backups. Enables more frequent backups
Restore cluster to point in time differential or cumulative backup data
14
Q & ADavid Ostrovskydavido@couchbase.com@DavidOstrovsky
2016 Couchbase Inc.
15
top related