Cloning an Instance with Memory Machine Dashboard

To clone a running instance of an application, use the All Actions Dropdown in the Applications Console.

About this task

You can create a duplicate of an application instance from a snapshot of the instance. The clone begins in the same state as the snapshot.

To clone a snapshot, Memory Machine creates a new PID namespace. The snapshot to be cloned is then run in the new PID namespace, with the original PID. In this way:

  • The OS can see the cloned process in the original namespace (though with a new PID)
  • The cloned process is identical to the snapshot and has the same PID (though running in a subordinate namespace)
  • Any number of processes can be cloned from a single snapshot and run in their own PID namespaces as described above

Procedure

  1. In the Applications Console, choose the Application Tab containing the instance that you want to clone.
  2. In the Instance Table Entry for the selected instance, click the All Actions Dropdown and choose Clone.
    It is not necessary for the instance to be running.
    Important: If you clone a stopped process without redirecting file resources, the clone uses the original process's resources. If you later restart the original process, the clone and the original can compete for the resource, causing data corruption.
  3. In the Clone Dialog, choose one of the instance snapshots from the Snapshot to Clone From Dialog.
  4. Optional: In the Network Namespace Dropdown, select a different network namespace under which to run the clone.
    The network namespace must exist already to be selected. The dropdown displays all available namespaces.
    To create a new network namespace, use the CLI ip netns add command:
    # ip netns add new-ns
    where new-ns is a name you assign to the namespace.
  5. Click OK.