Converting single process instance to ZEO cluster

Introduction

See ZEO.

See the plone.app.blob product page <http://plone.org/products/plone.app.blob> for good ZEO configuration examples.

Steps

Use link above for a buildout.cfg example.

Changes needed to single process buildout.cfg:

  • Add [zeo] section:

    [zeo]
    recipe = plone.recipe.zope2zeoserver
    zope2-location = ${zope2:location}
    zeo-address = 127.0.0.1:8100
    zeo-var = ${buildout:directory}/var
    blob-storage = ${zeo:zeo-var}/blobstorage
    eggs = plone.app.blob
  • Convert [instance] to [client1]. Add following new settings:

::
zeo-client = on zeo-address = ${zeo:zeo-address} # If blobs are used shared-blob = on
  • Add [client2] ... [clientN] sections

    [client2] recipe = plone.recipe.zope2instance http-address = 8081 zope2-location = ${client1:zope2-location} zeo-client = ${client1:zeo-client} zeo-address = ${client1:zeo-address} blob-storage = ${client1:blob-storage} shared-blob = ${client1:shared-blob} user = ${client1:user} products = ${client1:products} eggs = ${client1:eggs} zcml = ${client1:zcml}

  • Reconfigure [buildout] parts to include zeo, client1, client2...

[buildout]
parts =
    plone
    zope2
    zeo
    client1
    client2
# instance     ... instance is no longer required when running ZEO based instance
  • Change all ${instance:...} references to ${client1:...}. Search and replace ${instance: -> ${client1

Starting ZEO cluster

You need to start ZEO and clients independently

  • bin/zeo start
  • bin/client1 start
  • bin/client2 state
  • etc.



Edit this document

The source code of this file is hosted on GitHub. Everyone can update and fix errors in this document with few clicks - no downloads needed.

  1. Go to Converting single process instance to ZEO cluster on GitHub.
  2. Press Fork and edit this file button.
  3. Edit file contents using GitHub's text editor in your web browserm
  4. Fill in the Commit message text box at the end of the page telling why you did the changes. Press Propose file change button next to it when done.
  5. On Send a pull request page you don't need to fill in text anymore. Just press Send pull request button.
  6. Your changes are now queued for review under project's Pull requests tab on Github.

For basic information about updating this manual and Sphinx format please see Writing and updating the manual guide.