| 51 | |
| 52 | == Debugging monitoring package dependencies == |
| 53 | |
| 54 | This section contains specific tips for downloading the five dependency packages required by [wiki:PlasticSlices/MonitoringRecommendations/PlnodeConfiguration the Plastic Slices monitoring configuration on MyPLC PlanetLab nodes], which are: |
| 55 | {{{ |
| 56 | rrdtool-python rrdtool-perl perl-File-Find-Rule perl-XML-Writer perl-libwww-perl |
| 57 | }}} |
| 58 | |
| 59 | === Try yumdownloader === |
| 60 | |
| 61 | IF you used [wiki:GpoLab/MyplcPackageInstallationTips#UseyumdownloadertodownloadpackagesanddependenciesontheMyPLC yumdownloader] to cache the RPMs on your MyPLC, copy them over now, install them by hand, and check that it worked: |
| 62 | {{{ |
| 63 | cd ~/rpms |
| 64 | sudo rpm -iv *.rpm |
| 65 | rpm -q rrdtool-python rrdtool-perl perl-File-Find-Rule perl-XML-Writer perl-libwww-perl |
| 66 | }}} |
| 67 | Note that these RPMs were collected on a different machine, so there may still be dependency problems you need to resolve by hand. |
| 68 | |
| 69 | === Try noderepo === |
| 70 | |
| 71 | In principle, you should be able to install noderepo on your MyPLC very simply, and this should allow !PlanetLab nodes attached to that MyPLC to get !PlanetLab-related packages directly from the MyPLC, and other packages from a Fedora repository. However, we have found a number of issues with this, such as: |
| 72 | * On some MyPLC versions, it doesn't work, because the stock `.repo` files distributed on the !PlanetLab nodes are missing or incorrect, so even when they can get the PL-specific repository from the server, they still can't get other packages. |
| 73 | * If you have made any manual changes to your nodes, such as force-downgrading a package, you will lose those changes once the node can successfully upgrade. If this applies to you and you don't know how to forcibly hold packages versions in yum, ask GPO. |
| 74 | |
| 75 | That notwithstanding, if this works, it is easy: on your MyPLC host itself, run: |
| 76 | {{{ |
| 77 | sudo yum install noderepo-planetlab-<osver>-<arch> |
| 78 | }}} |
| 79 | (e.g. `noderepo-planetlab-f12-i386`). |
| 80 | |
| 81 | If that allows you to install packages on the nodes via yum, great. |
| 82 | |
| 83 | === Try configuring yum without noderepo === |
| 84 | |
| 85 | If noderepo doesn't work for you out of the box, Aaron Rosen suggested the following steps for getting a node to run yum successfully ''without'' the !PlanetLab repos. He tried these on a node running F12 with relevant package versions: |
| 86 | {{{ |
| 87 | kernel-2.6.27.54-28.planetlab.i686 |
| 88 | NodeManager-2.0-21.planetlab.i686 |
| 89 | vserver-planetlab-f12-i386-5.0-3.2010.10.14.i686 |
| 90 | }}} |
| 91 | If your node looks similar, this may work for you too. GPO has not tested this. |
| 92 | |
| 93 | * Create the stock `yum.repos.d`: |
| 94 | {{{ |
| 95 | mkdir /etc/yum.repos.d/ |
| 96 | }}} |
| 97 | * Copy the `fedora.repo` file from your myplc to the node, creating |
| 98 | {{{ |
| 99 | /etc/yum.repos.d/fedora.repo |
| 100 | }}} |
| 101 | * Download and install some newer versions of perl by hand to resolve discrepancies: |
| 102 | {{{ |
| 103 | wget ftp://ftp.pbone.net/mirror/archive.fedoraproject.org/fedora/linux/releases/12/Fedora/x86_64/os/Packages/perl-5.10.0-82.fc12.i686.rpm |
| 104 | wget ftp://ftp.pbone.net/mirror/archive.fedoraproject.org/fedora/linux/releases/12/Fedora/x86_64/os/Packages/perl-libs-5.10.0-82.fc12.i686.rpm |
| 105 | rpm -e --nodeps perl-5.10.0-91.fc12.i686 perl-libs-5.10.0-91.fc12.i686 |
| 106 | rpm -i perl-5.10.0-82.fc12.i686.rpm perl-libs-5.10.0-82.fc12.i686.rpm |
| 107 | }}} |
| 108 | |
| 109 | After that, he was able to use `yum install` to install the monitoring dependencies. |
| 110 | |