| 1 | == My PLC installation for Orbit == |
| 2 | |
| 3 | In this document we outline the process for installing the Myplc controller on a Fedora 8 VM. I'm essentially following the instructions from: [http://groups.geni.net/geni/wiki/GpoLab/MyplcReferenceImplementation this page]. |
| 4 | |
| 5 | === Step 0 === |
| 6 | Populate the "varibles" table with values. |
| 7 | |
| 8 | === Step 1 === |
| 9 | |
| 10 | We install Fedora 8 on a vm by booting the vm with an install iso. The general instructions are detailed [wiki:Internal/VMHostSetup here] (see the section on building a client). The main diffrence is that we use the Fedora 8 install iso, instead of ubuntu. The commands I ran as root out of the /root directory on external3 were: |
| 11 | {{{ |
| 12 | wget http://archive.fedoraproject.org/pub/archive/fedora/linux/releases/8/Fedora/x86_64/iso/Fedora-8-x86_64-DVD.iso |
| 13 | ./install_vm ./vm_img/fedora_server.img ./Fedora-8-x86_64-DVD.iso |
| 14 | ... |
| 15 | ./start_vm ./vm_img/fedora8.img 1 |
| 16 | }}} |
| 17 | |
| 18 | Where ... is this process: |
| 19 | * connect to the vnc session on external3:5900 (you will need a vnc client and possibly and ssh tunnel) |
| 20 | * use the fedora to install the OS mostly this is all defaulted. We even let it do the partitioning, it sets up lvm. The only departures from the defaults were: |
| 21 | * Skipped the CD check (Purely for convenience) |
| 22 | * set the root password to .... |
| 23 | * set the default user to native/.... |
| 24 | * Completely disable the firewall (there are notes in the Myplc documentation about enabling specific firewall ports) |
| 25 | * Completely disable SElinux features. (Myplc requires this as a step in the installation process) |
| 26 | * Power down (don't reboot, as we'll want to start the vm back up with out the install iso, the step immediately following this process.) |
| 27 | |
| 28 | Once this is done the fedora system should be operational and through the vnc session you should be able to modify settings. I opted to let it preform the 280+ updates, and then edited the sudosers list (by running visudo as root, you will have to su -) to enable the wheel group with out passwords (there was a life for this, I just uncommented it). I then added native to the wheel group, thus giving it sudo privlage. SSHD comes installed by default, so using the native/.... credentials you can ssh into this box. The current Ip given by dhcp was 10.50.250.20. This is useful since you can't copy paste into a vnc window easily. '''Note''' - by default kvm's vnc sessions don't require a password to connect, so they only "lock out" of the machine comes in the form of gdm/console login prompts. |
| 29 | |
| 30 | === Step 2 === |
| 31 | |
| 32 | Based on the variables from Step 0 I've modified the the repo creation rules to: |
| 33 | |
| 34 | {{{ |
| 35 | [native@localhost ~] sudo sh -c 'echo "[myplc]" > /etc/yum.repos.d/myplc.repo' |
| 36 | [native@localhost ~] sudo sh -c 'echo "name= MyPLC" >> /etc/yum.repos.d/myplc.repo' |
| 37 | [native@localhost ~] sudo sh -c 'echo "baseurl=http://build.planet-lab.org/planetlab/f8/pl-f8-i386-5.0-k32-rc-20/RPMS/" >> /etc/yum.repos.d/myplc.repo' |
| 38 | [native@localhost ~] sudo sh -c 'echo "enabled=1" >> /etc/yum.repos.d/myplc.repo' |
| 39 | [native@localhost ~] sudo sh -c 'echo "gpgcheck=0" >> /etc/yum.repos.d/myplc.repo' |
| 40 | }}} |
| 41 | |
| 42 | Running the update gets us. |
| 43 | {{{ |
| 44 | [native@localhost ~]$ sudo yum update fedora-release |
| 45 | myplc | 1.1 kB 00:00 |
| 46 | myplc/primary | 178 kB 00:00 |
| 47 | myplc 101/101 |
| 48 | Setting up Update Process |
| 49 | No Packages marked for Update |
| 50 | }}} |
| 51 | |
| 52 | Finally the results of installing Myplc is a lot of screen dump and a question about if you are sure you want to install. The end results looks like: |
| 53 | {{{ |
| 54 | [native@localhost ~] sudo yum install myplc |
| 55 | ... |
| 56 | |
| 57 | Installed: |
| 58 | myplc.noarch 0:5.0-15.planetlab |
| 59 | |
| 60 | Dependency Installed: |
| 61 | OpenIPMI-tools.x86_64 0:2.0.11-3.fc8 PLCAPI.i386 0:5.0-28.planetlab PyXML.x86_64 0:0.8.4-8.fc8 SOAPpy.noarch 0:0.11.6-7.fc8 |
| 62 | apr-devel.x86_64 0:1.2.11-2 apr-util-devel.x86_64 0:1.2.10-2.fc8 bootcd-initscripts.noarch 0:5.0-8.2011.02.17 bootcd-planetlab-f8-i386.noarch 0:5.0-8.2011.02.17 |
| 63 | bootmanager.noarch 0:5.0-16.planetlab bootstrapfs-planetlab-f8-i386.noarch 0:2.0-9.2011.02.17 createrepo.noarch 0:0.4.11-2.fc8 cyrus-sasl-devel.x86_64 0:2.1.22-8.fc8 |
| 64 | db4-cxx.x86_64 0:4.6.21-3.fc8 db4-devel.x86_64 0:4.6.21-3.fc8 distcache.x86_64 0:1.4.5-15 drupal.noarch 0:4.7-14.planetlab |
| 65 | expat-devel.x86_64 0:2.0.1-2 expect.x86_64 0:5.43.0-9.fc8 httpd-devel.x86_64 0:2.2.9-1.fc8 memcached.x86_64 0:1.2.4-2.fc8 |
| 66 | mod_python.x86_64 0:3.3.1-5 mod_ssl.x86_64 1:2.2.9-1.fc8 mod_wsgi.x86_64 0:1.3-2.fc8 monitor-runlevelagent.i386 0:3.0-35.planetlab |
| 67 | mtools.x86_64 0:3.9.11-2.fc8 mx.x86_64 0:2.0.6-3 myplc-config.noarch 0:5.0-15.planetlab myplc-docs.noarch 0:5.0-15.planetlab |
| 68 | myplc-release.noarch 0:5.0-15.planetlab.2011.02.17 nodeconfig.i386 0:5.0-5.planetlab nodeyum.noarch 0:2.0-9.2011.02.17 openldap-devel.x86_64 0:2.3.39-4.fc8 |
| 69 | pcucontrol.i386 0:1.0-10.planetlab perl-IO-Socket-SSL.noarch 0:1.18-1.fc8 perl-Net-LibIDN.x86_64 0:0.10-1.fc8 perl-Net-SSLeay.x86_64 0:1.30-5.fc8.1 |
| 70 | php.x86_64 0:5.2.6-2.fc8 php-cli.x86_64 0:5.2.6-2.fc8 php-common.x86_64 0:5.2.6-2.fc8 php-gd.x86_64 0:5.2.6-2.fc8 |
| 71 | php-mbstring.x86_64 0:5.2.6-2.fc8 php-pdo.x86_64 0:5.2.6-2.fc8 php-pgsql.x86_64 0:5.2.6-2.fc8 plewww.noarch 0:4.3-59 |
| 72 | plewww-plekit.noarch 0:4.3-59 postgresql.x86_64 0:8.2.11-1.fc8 postgresql-libs.x86_64 0:8.2.11-1.fc8 postgresql-python.x86_64 0:8.2.11-1.fc8 |
| 73 | postgresql-server.x86_64 0:8.2.11-1.fc8 pyOpenSSL.x86_64 0:0.6-1.p24.9 pyaspects.i386 0:0.4.1-1.planetlab pypcilib.i386 0:0.2-9.planetlab |
| 74 | pyplnet.noarch 0:4.3-9.planetlab python-devel.x86_64 0:2.5.1-26.fc8.2 python-fpconst.noarch 0:0.7.3-3.fc8.1 python-ldap.x86_64 0:2.3.1-1.fc8 |
| 75 | python-memcached.noarch 0:1.39-1.fc8 python-psycopg2.x86_64 0:2.0.7-1.fc8 python-pycurl.x86_64 0:7.16.4-1.fc8 python-simplejson.x86_64 0:1.9.1-1.fc8 |
| 76 | python-twisted-core.x86_64 0:2.5.0-2.fc8 python-twisted-web.x86_64 0:0.7.0-1.fc8 python-twisted-words.x86_64 0:0.5.0-1.fc8 python-zope-interface.x86_64 0:3.0.1-8.fc8 |
| 77 | sendmail-cf.x86_64 0:8.14.2-1.fc8 sharutils.x86_64 0:4.6.3-1.fc7 syslinux.x86_64 0:3.36-7.fc8 tcl.x86_64 1:8.4.17-1.fc8 |
| 78 | www-register-wizard.noarch 0:4.3-5.planetlab xmlsec1.x86_64 0:1.2.9-8.1 xmlsec1-openssl.x86_64 0:1.2.9-8.1 |
| 79 | |
| 80 | Complete! |
| 81 | }}} |
| 82 | |
| 83 | === Step 3 === |
| 84 | |
| 85 | We are apparently taking Path A. The Answer in step Zero shape our answers to the questions posed by |
| 86 | {{{ |
| 87 | [native@localhost ~] sudo plc-config-tty |
| 88 | }}} |