Search:

Search all manuals
Search this manual
Manual
Couchbase Server Manual 1.8
Up
Section Navigation
Chapter Navigation

Couchbase Server Manual 1.8

Copyright © 2010, 2011 Couchbase, Inc. Contact copyright@couchbase.com.

For documentation license information, see Documentation License. For all license information, see Licenses.

Abstract

This manual documents the Couchbase Server 1.8 series, including installation, monitoring, and administration interface and associated tools.

Couchbase Server 1.8 is a re-branded release of Membase Server 1.7 with some additional fixes and changes.

Last document update: 16 May 2012 13:34; Document built: 16 May 2012 13:34.

Documentation Availability and Formats.  This documentation is available for download: HTML Zip, PDF, EPUB . For other documentation from Couchbase, see Couchbase Documentation Library

Contact: editors@couchbase.com or couchbase.com


Table of Contents

Preface
1. Manual Conventions
1. Introduction to Couchbase Server
1.1. Couchbase Server Basics
1.2. Couchbase Server and NoSQL
1.3. Architecture and Concepts
1.3.1. Nodes and Clusters
1.3.2. Cluster Manager
1.3.3. Memory Quotas
1.3.4. Buckets
1.3.5. vBuckets
1.3.6. Disk Storage
1.3.7. Failover
1.3.8. Client Interface
1.3.9. Administration Tools
1.3.10. Statistics and Monitoring
2. Getting Started
2.1. Preparation
2.1.1. Supported Platforms
2.1.2. Hardware Requirements
2.1.3. Storage Requirements
2.1.4. Web Browser (for administration)
2.1.5. Network Ports
2.2. Installing Couchbase Server
2.2.1. Red Hat Linux Installation
2.2.2. Ubuntu Linux Installation
2.2.3. Microsoft Windows Installation
2.2.4. Mac OS X Installation
2.3. Upgrading to Couchbase Server 1.8
2.3.1. Online (rolling) Upgrade Process
2.3.2. Offline (in-place) Upgrade Process
2.3.3. Node Upgrade Process
2.3.4. Manually Controlled Upgrade Options
2.4. Setting up Couchbase Server
2.5. Testing Couchbase Server
2.6. Next Steps
3. Administration Basics
3.1. Working with Couchbase data files
3.2. Startup and Shutdown of Couchbase Server
3.2.1. Startup and Shutdown on Linux
3.2.2. Startup and Shutdown on Windows
3.2.3. Startup and Shutdown on Mac OS X
4. Best Practices
4.1. Cluster Design Considerations
4.2. Sizing Guidelines
4.2.1. RAM Sizing
4.2.2. Disk Throughput and Sizing
4.2.3. Network Bandwidth
4.2.4. Data Safety
4.3. Deployment Considerations
4.4. Ongoing Monitoring and Maintenance
4.4.1. Important UI Stats to Watch
4.4.2. Vacuuming
4.4.3. Post-rebalance
4.5. Couchbase Behind a Secondary Firewall
4.6. Using Couchbase in the Cloud
4.6.1. Local Storage
4.6.2. IP addresses
4.6.3. Security groups/firewall settings
4.6.4. Swap Space
4.7. Deployment Strategies
4.7.1. Using a smart (vBucket aware) Client
4.7.2. Client-Side (standalone) Proxy
4.7.3. Using Server-Side (Couchbase Embedded) Proxy
5. Administration Tasks
5.1. Failover with Couchbase
5.1.1. Automatic Failover
5.1.2. Automated failover considerations
5.1.3. Monitored failover
5.2. Backup and Restore with Couchbase
5.2.1. Backing Up
5.2.2. Restore
5.3. Expanding and Shrinking your Cluster (Rebalancing)
5.3.1. Growing your cluster
5.3.2. Shrinking your cluster
5.3.3. Rebalancing
6. Administration Web Console
6.1. Cluster Overview
6.1.1. Cluster
6.1.2. Buckets
6.1.3. Servers
6.2. Web Console Statistics
6.3. Data Buckets
6.3.1. Creating and Editing Data Buckets
6.3.2. Bucket Information
6.3.3. Individual Bucket Monitoring
6.4. Server Nodes
6.5. Couchbase Server States
6.6. Settings
6.6.1. Update Notification Settings
6.6.2. Auto-Failover Settings
6.6.3. Alerts
6.7. Log
6.7.1. Diagnostic Report
6.8. Update Notifications
6.8.1. Notifications
6.8.2. Viewing Available Updates
6.9. Warnings and Alerts
7. Couchbase Command-line Interface
7.1. couchbase-cli Tool
7.2. cbstats Tool
7.3. cbflushctl Tool
7.4. tap.py Tool
7.5. cbvbucketctl Tool
7.6. cbvbuckettool Tool
7.7. cbdbmaint Tool
7.8. cbcollect_info Tool
8. Couchbase Management REST API
8.1. Key Concepts
8.1.1. Resources
8.1.2. HTTP Request Headers
8.1.3. HTTP Status Codes
8.2. Operations
9. Developing with Couchbase
9.1. Use Cases
9.1.1. Session store
9.1.2. Social gaming
9.1.3. Ad, offer and content targeting
9.1.4. Real-time logging and alerting
9.2. Best practices
9.2.1. What should I store in an object
9.2.2. How should I store an object?
9.2.3. Objects that refer to other objects
9.2.4. Nested Items
9.2.5. Simple Lists
9.2.6. Multi-GET
9.2.7. Locking
9.2.8. Data partitioning with buckets
9.3. Couchbase for Memcached Users
10. Developing Couchbase Clients
10.1. REST/JSON
10.1.1. Parsing the JSON
10.1.2. Encoding the vBucketId into each request
10.1.3. Client Libraries and Rebalancing
10.1.4. Fast Forward Map
10.1.5. Redundancy & Availability
11. Couchbase Architecture
11.1. Cluster Design
11.2. Persistence Design
11.3. Component Overview
11.4. Disk Storage (Growing Data Sets Beyond Memory)
11.4.1. Design
11.4.2. Consequences of Memory faster than Disk
11.5. Couchbase APIs
11.5.1. memcached protocol
11.5.2. Additional Protocol Operations
11.6. Buckets
11.7. vBuckets
11.7.1. Couchbase Document ID-vBucket-Server Mapping Illustrated
11.7.2. vBuckets in a world of memcached clients
12. Monitoring Couchbase
12.1. Port numbers and accessing different buckets
12.2. Monitoring startup (warmup)
12.3. Disk Write Queue
12.3.1. Monitoring the Disk Write Queue
12.4. Couchbase Server Statistics
12.4.1. REST Interface Statistics
12.4.2. Couchbase Server Node Statistics
12.5. Couchbase Server Moxi Statistics
13. Troubleshooting
13.1. General Tips
13.2. Responding to Specific Errors
13.3. Log File Entries
13.4. Linux Logs
13.5. Windows Logs
13.6. Mac OS X Logs
13.7. Common Errors
A. FAQs
B. Uninstalling Couchbase Server
B.1. Uninstalling on a RedHat Linux System
B.2. Uninstalling on an Debian/Ubuntu Linux System
B.3. Uninstalling on a Windows System
B.4. Uninstalling on a Mac OS X System
C. Release Notes
C.1. Release Notes for 1.8.0 Couchbase Server GA (23 January 2012)
D. Licenses
D.1. Documentation License
D.2. Couchbase, Inc. Community Edition License Agreement
D.3. Couchbase, Inc. Enterprise License Agreement: Free Edition

List of Figures

1.1. Multi-tenancy
2.1. Windows Installation Welcome Screen
2.2. Windows Installation Location Screen
2.3. Windows Installation Ready Screen
2.4. Windows Installation Progress Screen
2.5. Windows Installation Completion Screen
2.6. Marking a Server for Removal from Cluster
2.7. Starting the Rebalancing Process
2.8. Cluster with Node Removed
2.9. Adding Server back to Cluster
2.10. Couchbase Server Setup
2.11. Couchbase Server Setup Step 1 (New Cluster)
2.12. Couchbase Server Setup Step 1 (Existing Cluster)
2.13. Couchbase Server Setup Step 2
2.14. Couchbase Server Setup Step 3
2.15. Couchbase Server Setup Step 4
2.16. Couchbase Server Setup Completed
3.1. Couchbase Server on Mac OS X Menubar Item
4.1. Deployment Strategy: Using a vBucket Aware Client
4.2. Deployment Strategy: Standalone Proxy
4.3. Deployment Strategy: Using the Embedded Proxy
6.1. Couchbase Web Console - Cluster Overview
6.2. Couchbase Web Console - Data Buckets Overview
6.3. Couchbase Web Console - Create Bucket
6.4. Couchbase Web Console - Bucket Information
6.5. Couchbase Web Console - Summary Statistics
6.6. Couchbase Web Console - vBucket Resources statistics
6.7. Couchbase Web Console - Disk Queue Statistics
6.8. Couchbase Web Console - TAP Queue Statistics
6.9. Couchbase Web Console - Memcached Statistics
6.10. Couchbase Web Console - Server Nodes
6.11. Couchbase Web Console- Data Bucket/Server view
6.12. Couchbase Web Console - Server specific view
6.13. Down Status
6.14. Pend Status
6.15. Web Console Settings — Update Notifications
6.16. Web Console Settings — Auto-Failover
6.17. Web Console Settings — Alerts
6.18. Web Console Log Viewer
11.1. Bucket Configuration
11.2. Background Fetch Workflow
11.3. Couchbase Buckets
11.4. vBucket Mapping
11.5. vBucket Mapping after Rebalance

List of Tables

1.1. Bucket Types
1.2. Couchbase Bucket Capabilities
2.1. Network Ports used by Couchbase Server
4.1. Input Variables
4.2. Constants
4.3. Input Variables
4.4. Constants
4.5. Variable Calculations
7.1. Couchbase Server Command-line Tools
7.2. couchbase Tool Commands
7.3. Standard couchbase Options
8.1. Supported Request Headers
8.2. HTTP Status Codes
8.3. Controller Functions
8.4. Node Attributes
8.5. Cluster Joining Arguments
8.6. Additional Arguments
12.1. Stats
13.1. Responses to Specific Errors
blog comments powered by Disqus