From: Thierry Parmentelat Date: Fri, 11 Aug 2006 12:42:08 +0000 (+0000) Subject: regenerate from myplc.xml 1.11 X-Git-Tag: planetlab-4_0-rc1~114 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=746d160c06292179270616aec21a807c068d4860;p=myplc.git regenerate from myplc.xml 1.11 --- diff --git a/doc/myplc.pdf b/doc/myplc.pdf index 5937bd9..ac17097 100644 Binary files a/doc/myplc.pdf and b/doc/myplc.pdf differ diff --git a/doc/myplc.php b/doc/myplc.php index d70807b..0bc3141 100644 --- a/doc/myplc.php +++ b/doc/myplc.php @@ -13,7 +13,7 @@

-MyPLC User's Guide

+MyPLC User's Guide

Mark Huang

@@ -45,30 +45,33 @@

-1. Overview

+1. Overview

MyPLC is a complete PlanetLab Central (PLC) portable installation contained within a chroot jail. The default installation consists of a web server, an @@ -89,17 +92,71 @@ system.

+
+

+1.1.  Purpose of the myplc-devel + package

+

The myplc package comes with all + required node software, rebuilt from the public PlanetLab CVS + repository. If for any reason you need to implement your own + customized version of this software, you can use the + myplc-devel package instead, for setting up + your own development environment, including a local CVS + repository; you can then freely manage your changes and rebuild + your customized version of myplc. We also + provide good practices, that will then allow you to resync your local + CVS repository with any further evolution on the mainstream public + PlanetLab software.

+
+ +
+

+2.  Requirements

+

myplc and + myplc-devel were designed as + chroot jails so as to reduce the requirements on + your host operating system. So in theory, these distributions should + work on virtually any Linux 2.6 based distribution, whether it + supports rpm or not.

+

However, things are never that simple and there indeed are + some known limitations to this, so here are a couple notes as a + recommended reading before you proceed with installing

+

As of August 2006 9, so this should apply to + myplc-0.5.2 :

+
    +
  • The software is vastly based on Fedora + Core 4. Please note that the build server at Princeton + runs Fedora Core 2, togother with a upgraded + version of yum. +

  • +
  • +

    myplc and myplc-devel are known to work on both + Fedora Core 2 and Fedora Core + 4. Please note however that, on fc4 at least, it is + highly recommended to use the Security Level + Configuration utility and to switch off + SElinux on your box because :

    +
      +
    • + myplc requires you to run SElinux as 'Permissive' at most +

    • +
    • + myplc-devel requires you to turn SElinux Off. +

    • +
    +
  • +

-2. Installation

+3. Installation

Though internally composed of commodity software subpackages, MyPLC should be treated as a monolithic software application. MyPLC is distributed as single RPM package that has no external dependencies, allowing it to be installed on practically any Linux 2.6 based distribution:

-

Example 1. Installing MyPLC.

+

Example 1. Installing MyPLC.

# If your distribution supports RPM
 rpm -U http://build.planet-lab.org/build/myplc-0_4-rc1/RPMS/i386/myplc-0.4-1.planetlab.i386.rpm
 
@@ -198,7 +255,7 @@ service plc stop
the chkconfig command on a Red Hat or Fedora host system:

-

Example 3. Disabling automatic startup of MyPLC.

+

Example 3. Disabling automatic startup of MyPLC.

# Disable automatic startup
 chkconfig plc off
 
@@ -223,13 +280,13 @@ chkconfig plc on

-3. Quickstart

+4. Quickstart

Once installed, start MyPLC (see Example 2, “Starting and stopping MyPLC.”). MyPLC must be started as root. Observe the output of this command for any failures. If no failures occur, you should see output similar to the following:

-

Example 4. A successful MyPLC startup.

+

Example 4. A successful MyPLC startup.

Mounting PLC:                                              [  OK  ]
 PLC: Generating network files:                             [  OK  ]
 PLC: Starting system logger:                               [  OK  ]
@@ -262,11 +319,7 @@ PLC: Signing node packages:                                [  OK  ]
       loopback device, or re-compiling your kernel to support loopback
       mounting, bind mounting, and the ext3 filesystem. If you see an
       error similar to Permission denied while trying to open
-      /plc/root.img, then SELinux may be enabled. If you
-      installed MyPLC on Fedora Core 4 or 5, use the
-      Security Level Configuration utility
-      to configure SELinux to be
-      Permissive.

+ /plc/root.img, then SELinux may be enabled. See Section 2, “ Requirements ” above for details.

  • Starting database server: If this step fails, check /plc/root/var/log/pgsql and @@ -286,7 +339,7 @@ PLC: Signing node packages: [ OK ] If this step fails, it is likely that the previous step (Starting web server) also failed. Another reason that it could fail is if PLC_API_HOST (see - Section 3.1, “Changing the configuration”) does not resolve to + Section 4.1, “Changing the configuration”) does not resolve to the host on which the API server has been enabled. By default, all services, including the API server, are enabled and run on the same host, so check that PLC_API_HOST is @@ -311,7 +364,7 @@ PLC: Signing node packages: [ OK ] PLC_ROOT_PASSWORD).

    -3.1. Changing the configuration

    +4.1. Changing the configuration
  • After verifying that MyPLC is working correctly, shut it down and begin changing some of the default variable values. Shut down MyPLC with service plc stop @@ -360,7 +413,7 @@ PLC: Signing node packages: [ OK ]

    -3.2. Installing nodes

    +4.2. Installing nodes

    Install your first node by clicking Add Node under the Nodes tab. Fill in all the appropriate details, then click @@ -384,12 +437,12 @@ PLC: Signing node packages: [ OK ]

    -3.3. Administering nodes

    +4.3. Administering nodes

    You may administer nodes as root by using the SSH key stored in /etc/planetlab/root_ssh_key.rsa.

    -

    Example 5. Accessing nodes via SSH. Replace +

    Example 5. Accessing nodes via SSH. Replace node with the hostname of the node.

    ssh -i /etc/planetlab/root_ssh_key.rsa root@node
    @@ -412,7 +465,7 @@ PLC: Signing node packages: [ OK ]

    -3.4. Creating a slice

    +4.4. Creating a slice

    Create a slice by clicking Create Slice under the Slices tab. Fill in all the appropriate details, then click Create. Add @@ -427,7 +480,7 @@ PLC: Signing node packages: [ OK ] to determine if it needs to create or delete any slices. You may accelerate this process manually if desired.

    -

    Example 6. Forcing slice creation on a node.

    +

    Example 6. Forcing slice creation on a node.

    # Update slices.xml immediately
     service plc start crond
     
    @@ -439,7 +492,7 @@ vserver pl_conf exec service pl_conf restart

    -4. Rebuilding and customizing MyPLC

    +5. Rebuilding and customizing MyPLC

    The MyPLC package, though distributed as an RPM, is not a traditional package that can be easily rebuilt from SRPM. The requisite build environment is quite extensive and numerous @@ -456,7 +509,7 @@ vserver pl_conf exec service pl_conf restart repository.

    -4.1. Installation

    +5.1. Installation

    Install the MyPLC development environment similarly to how you would install MyPLC. You may install both packages on the same host system if you wish. As with MyPLC, the MyPLC development @@ -465,7 +518,7 @@ vserver pl_conf exec service pl_conf restart chroot jail should not be modified directly, as they are subject to upgrade.

    -

    Example 7. Installing the MyPLC development environment.

    +

    Example 7. Installing the MyPLC development environment.

    # If your distribution supports RPM
     rpm -U http://build.planet-lab.org/build/myplc-0_4-rc2/RPMS/i386/myplc-devel-0.4-2.planetlab.i386.rpm
     
    @@ -508,14 +561,14 @@ rpm2cpio /tmp/myplc-devel-0.4-2.planetlab.i386.rpm | cpio -diu
    snapshot of the PlanetLab source code is stored as a CVS repository in this directory. Files in this directory will not be updated by an upgrade of - myplc-devel. See Section 4.4, “Updating CVS” for more information about updating + myplc-devel. See Section 5.4, “Updating CVS” for more information about updating PlanetLab source code.

  • /build: Builds are stored in this directory. This directory is bind mounted onto /plc/devel/root/build so that it is accessible as /build from within the chroot jail. The build scripts in this - directory are themselves source controlled; see Section 4.3, “Building MyPLC” for more information about executing + directory are themselves source controlled; see Section 5.3, “Building MyPLC” for more information about executing builds.

  • @@ -527,7 +580,7 @@ rpm2cpio /tmp/myplc-devel-0.4-2.planetlab.i386.rpm | cpio -diu

    -4.2. Fedora Core 4 mirror requirement

    +5.2. Fedora Core 4 mirror requirement

    The MyPLC development environment requires access to a complete Fedora Core 4 i386 RPM repository, because several different filesystems based upon Fedora Core 4 are constructed @@ -559,7 +612,7 @@ rpm2cpio /tmp/myplc-devel-0.4-2.planetlab.i386.rpm | cpio -diu such as wget or rsync to download the RPMS from a public mirror:

    -

    Example 8. Setting up a local Fedora Core 4 repository.

    +

    Example 8. Setting up a local Fedora Core 4 repository.

    mkdir -p /plc/devel/data/fedora
     cd /plc/devel/data/fedora
     
    @@ -577,7 +630,7 @@ done

    -4.3. Building MyPLC

    +5.3. Building MyPLC

    All PlanetLab source code modules are built and installed as RPMS. A set of build scripts, checked into the build/ directory of the PlanetLab CVS @@ -587,7 +640,7 @@ done within the MyPLC development environment, execute the following commands as root:

    -

    Example 9. Building MyPLC.

    +

    Example 9. Building MyPLC.

    # Initialize MyPLC development environment
     service plc-devel start
     
    @@ -610,11 +663,11 @@ make -C $DATE
    /plc/devel/data/build/$DATE/RPMS/ that you may copy to the /var/www/html/install-rpms/planetlab - directory of your MyPLC installation (see Section 2, “Installation”).

    + directory of your MyPLC installation (see Section 3, “Installation”).

    -4.4. Updating CVS

    +5.4. Updating CVS

    A complete snapshot of the PlanetLab source code is included with the MyPLC development environment as a CVS repository in /plc/devel/data/cvs. This CVS repository may @@ -642,7 +695,7 @@ make -C $DATE execute the following commands as root from within the MyPLC development environment:

    -

    Example 10. Updating /data/cvs from /data/cvs-0.4-3.

    +

    Example 10. Updating /data/cvs from /data/cvs-0.4-3.

    Warning: This may cause severe, irreversible changes to be made to your local repository. Always tag your local repository before @@ -672,7 +725,7 @@ rm -rf $TMP

    -A. Configuration variables

    +A. Configuration variables (for myplc)

    Listed below is the set of standard configuration variables and their default values, defined in the template /etc/planetlab/default_config.xml. Additional @@ -1271,7 +1324,7 @@ rm -rf $TMP

    -B. Development environment configuration variables

    +B. Development configuration variables(for myplc-devel)
    PLC_DEVEL_FEDORA_RELEASE
    @@ -1323,7 +1376,7 @@ rm -rf $TMP

    -Bibliography

    +Bibliography
    Revision History