I had to update an old release of CentOS-5.5 on an OpenVZ container where yum was not available.
The below script should automatically download and install the required rpms from "vault.centos.org".
#!/bin/bash
# install_yum.sh
rpms="
rpm-libs-4.4.2.3-18.el5.x86_64.rpm
popt-1.10.2.3-18.el5.x86_64.rpm
rpm-4.4.2.3-18.el5.x86_64.rpm
python-elementtree-1.2.6-5.x86_64.rpm
python-iniparse-0.2.3-4.el5.noarch.rpm
python-sqlite-1.1.7-1.2.1.x86_64.rpm
rpm-python-4.4.2.3-18.el5.x86_64.rpm
python-urlgrabber-3.1.0-5.el5.noarch.rpm
yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm
yum-metadata-parser-1.1.2-3.el5.centos.x86_64.rpm
yum-3.2.22-26.el5.centos.noarch.rpm
"
for rpm in $rpms
do
rpm -Uvh --nodeps http://vault.centos.org/5.5/os/x86_64/CentOS/${rpm};
done