Packstack單節點一鍵安裝openstack

    本文介紹在單節點上用packstack一鍵安裝openstack的方法,其中節點的硬件架構爲x86_64(必須是64位,32位不能夠)、操做系統爲centos7。官方的安裝文檔地址爲https://openstack.redhat.com/Quickstartnode

安裝軟件庫

更新安裝的軟件包,命令以下:mysql

sudo yum update -yios

創建RDO庫,命令以下:sql

sudo yum install -y https://rdo.fedorapeople.org/rdo-release.rpmswift

上面的RDO庫安裝的openstack版本爲Juno,若是想要安裝openstack以前的版本,訪問http://rdo.fedorapeople.org/找到對應的rpm文件安裝便可。.centos

安裝Packstack 

安裝packstack,命令以下:架構

sudo yum install -y openstack-packstackapp

安裝openstack

在單節點安裝openstack的命令以下所示:網站

packstack --allinoneui

若是在安裝過程當中遇到問題,請在https://openstack.redhat.com/Workarounds中查看是否有相似問題的解決方式。

卸載openstack

RDO官方網站給出的卸載方法爲https://openstack.redhat.com/Uninstalling_RDO

若是節點上只有openstack,沒有其餘服務,則用下面的徹底卸載方式,將下面的節本複製到一個文件中,修改文件爲可執行,執行該文件便可完成卸載程序。卸載節本以下所示:

# Warning! Dangerous step! Destroys VMs

for x in $(virsh list --all | grep instance- | awk '{print $2}') ; do

    virsh destroy $x ;

    virsh undefine $x ;

done ;

 

# Warning! Dangerous step! Removes lots of packages, including many

# which may be unrelated to RDO.

yum remove -y nrpe "*nagios*" puppet ntp ntp-perl ntpdate "*openstack*" \

"*nova*" "*keystone*" "*glance*" "*cinder*" "*swift*" \

mysql mysql-server httpd "*memcache*" scsi-target-utils \

iscsi-initiator-utils perl-DBI perl-DBD-MySQL ;

 

ps -ef | grep -i repli | grep swift | awk '{print $2}' | xargs kill ;

 

# Warning! Dangerous step! Deletes local application data

rm -rf /etc/nagios /etc/yum.repos.d/packstack_* /root/.my.cnf \

/var/lib/mysql/ /var/lib/glance /var/lib/nova /etc/nova /etc/swift \

/srv/node/device*/* /var/lib/cinder/ /etc/rsync.d/frag* \

/var/cache/swift /var/log/keystone ;

 

umount /srv/node/device* ;

killall -9 dnsmasq tgtd httpd ;

setenforce 1 ;

vgremove -f cinder-volumes ;

losetup -a | sed -e 's/:.*//g' | xargs losetup -d ;

find /etc/pki/tls -name "ssl_ps*" | xargs rm -rf ;

for x in $(df | grep "/lib/" | sed -e 's/.* //g') ; do

    umount $x ;

done

若是節點上還有其餘服務運行,則用下面的保守卸載方式,將下面的節本複製到一個文件中,修改文件爲可執行,執行該文件便可完成卸載程序。卸載節本以下所示:

for x in $(virsh list --all | grep instance- | awk '{print $2}') ; do

    virsh destroy $x ;

    virsh undefine $x ;

done ;

 

yum remove -y "*openstack*" "*nova*" "*keystone*" "*glance*" "*cinder*" "*swift*" "*rdo-release*";

 

# Optional - makes database cleanup cleaner.

# If you do this bit, the database cleanup stuff below is superfluous.

# yum remove -y "*mysql*"

 

ps -ef | grep -i repli | grep swift | awk '{print $2}' | xargs kill ;

 

rm -rf  /etc/yum.repos.d/packstack_* /var/lib/glance /var/lib/nova /etc/nova /etc/swift \

/srv/node/device*/* /var/lib/cinder/ /etc/rsync.d/frag* \

/var/cache/swift /var/log/keystone /tmp/keystone-signing-nova ;

 

# Ensure there is a root user and that we know the password

service mysql stop

cat > /tmp/set_mysql_root_pwd << EOF

UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';

FLUSH PRIVILEGES;

EOF

 

# mysql cleanup

/usr/bin/mysqld_safe --init-file=/tmp/set_mysql_root_pwd &

rm /tmp/set_mysql_root_pwd

mysql -uroot -pMyNewPass -e "drop database nova; drop database cinder; drop database keystone; drop database glance;"

 

umount /srv/node/device* ;

vgremove -f cinder-volumes ;

losetup -a | sed -e 's/:.*//g' | xargs losetup -d ;

find /etc/pki/tls -name "ssl_ps*" | xargs rm -rf ;

for x in $(df | grep "/lib/" | sed -e 's/.* //g') ; do

    umount $x ;

done

相關文章
相關標籤/搜索