try packstack

举报
黄生 发表于 2023/03/20 15:19:53 2023/03/20
【摘要】 centos7.9不挑用户,直接用root操作就行。yum -y update Verifying : systemd-219-78.el7_9.5.x86_64 104/104 Install 2个 update 剩余的yum -y install centos-release-openstack-trainI...

centos7.9
不挑用户,直接用root操作就行。

yum -y update
  Verifying  : systemd-219-78.el7_9.5.x86_64                                      104/104
  Install 2个 update 剩余的

yum -y install centos-release-openstack-train
Installed:
  centos-release-openstack-train.noarch 0:1-1.el7.centos

yum -y update  #又执行一次,有做了一点事
  Verifying  : python-six-1.9.0-2.el7.noarch                                        10/10

yum -y install openstack-packstack #基于Puppet工具 
#这一步会安装leatherman.x86_64 0:1.10.0-1.el7 但因版本不对导致下面报错,真是无语
  Verifying  : python2-pbr-5.1.2-2.el7.noarch                                     118/118

Installed:
  openstack-packstack.noarch 1:15.1.0-1.el7

packstack将使用下面的选项来安装
  --allinone            Shorthand for --install-hosts=<local ipaddr>
                        --novanetwork-pubif=<dev> --novacompute-privif=lo
                        --novanetwork-privif=lo --os-swift-install=y, this
                        option can be used to install an all in one OpenStack
                        on this host

packstack --allinone
马上就报错:

Pre installing Puppet and discovering hosts' details[ ERROR ]
facter: error while loading shared libraries: leatherman_curl.so.1.3.0: cannot open shared object file: No such file or directory

[root@ecs-cos ~]#  find / -name leatherman_curl.so.1.3.0 #没找到,很快就返回,出乎意料

其实package是有的(Collection of C++ and CMake utility libraries: leatherman1.10.0),但是版本不对,试着做个符号链接

ln -s /usr/lib64/leatherman_curl.so.1.10.0 /usr/lib64/leatherman_curl.so.1.3.0
又报错了
facter: error while loading shared libraries: leatherman_ruby.so.1.3.0: cannot open shared object file: No such file or directory

所以centos7.9是不是版本不合适?类似报错可能没完没了,停止,改用centos7.8,结果一模一样,无语
找到解决方法是yum downgrade leatherman(后面就不要做yum update否则又升级了),试了命令可以成功,还是切回centos7.9

Copying Puppet modules and manifests                 [ DONE ]
Applying 10.0.0.229_controller.pp
10.0.0.229_controller.pp:                         [ ERROR ]
Applying Puppet manifests                         [ ERROR ]

ERROR : Error appeared during Puppet run: 10.0.0.229_controller.pp
Error: Execution of '/usr/bin/yum -d 0 -e 0 -y install openstack-keystone' returned 1: Error: Package: python2-qpid-proton-0.26.0-2.el7.x86_64 (centos-openstack-train)

上面一步很慢(有用yum安装一些包),而且报错了。切换为huawei yum源。再次执行。还是一样的报错。从Log文件看一下详情

Error: Execution of '/usr/bin/yum -d 0 -e 0 -y install openstack-keystone' returned 1: Error: Package: python2-qpid-proton-0.26.0-2.el7.x86_64 (centos-openstack-train)
           Requires: qpid-proton-c(x86-64) = 0.26.0-2.el7
           Available: qpid-proton-c-0.14.0-2.el7.x86_64 (extras)
               qpid-proton-c(x86-64) = 0.14.0-2.el7
           Available: qpid-proton-c-0.26.0-2.el7.x86_64 (centos-openstack-train)
               qpid-proton-c(x86-64) = 0.26.0-2.el7
           Installing: qpid-proton-c-0.37.0-1.el7.x86_64 (epel)
               qpid-proton-c(x86-64) = 0.37.0-1.el7
 You could try using --skip-broken to work around the problem

说到底,还是和上面的一样是包版本的问题。从下面的版本清单可以看出,我们应该用centos-openstack-train这个repo里的,而不用其他repo

[root@ecs-cos ~]# yum list leatherman --showduplicates
Installed Packages
leatherman.x86_64                                                                  1.3.0-9.el7                                                                   @centos-openstack-train
Available Packages
leatherman.x86_64                                                                  1.3.0-9.el7                                                                   centos-openstack-train
leatherman.x86_64                                                                  1.10.0-1.el7                                                                  epel

将/etc/yum.repos.d/下面的epel源配置文件里enable改为0,禁用掉这个repo。然后再次执行,结果非常好!完成了。

Welcome to the Packstack setup utility

The installation log file is available at: /var/tmp/packstack/20230318-233136-G4TIdd/openstack-setup.log

Installing:
Clean Up                                             [ DONE ]
Discovering ip protocol version                      [ DONE ]
Setting up ssh keys                                  [ DONE ]
Preparing servers                                    [ DONE ]
Pre installing Puppet and discovering hosts' details [ DONE ]
Preparing pre-install entries                        [ DONE ]
Setting up CACERT                                    [ DONE ]
Preparing AMQP entries                               [ DONE ]
Preparing MariaDB entries                            [ DONE ]
Fixing Keystone LDAP config parameters to be undef if empty[ DONE ]
Preparing Keystone entries                           [ DONE ]
Preparing Glance entries                             [ DONE ]
Checking if the Cinder server has a cinder-volumes vg[ DONE ]
Preparing Cinder entries                             [ DONE ]
Preparing Nova API entries                           [ DONE ]
Creating ssh keys for Nova migration                 [ DONE ]
Gathering ssh host keys for Nova migration           [ DONE ]
Preparing Nova Compute entries                       [ DONE ]
Preparing Nova Scheduler entries                     [ DONE ]
Preparing Nova VNC Proxy entries                     [ DONE ]
Preparing OpenStack Network-related Nova entries     [ DONE ]
Preparing Nova Common entries                        [ DONE ]
Preparing Neutron API entries                        [ DONE ]
Preparing Neutron L3 entries                         [ DONE ]
Preparing Neutron L2 Agent entries                   [ DONE ]
Preparing Neutron DHCP Agent entries                 [ DONE ]
Preparing Neutron Metering Agent entries             [ DONE ]
Checking if NetworkManager is enabled and running    [ DONE ]
Preparing OpenStack Client entries                   [ DONE ]
Preparing Horizon entries                            [ DONE ]
Preparing Swift builder entries                      [ DONE ]
Preparing Swift proxy entries                        [ DONE ]
Preparing Swift storage entries                      [ DONE ]
Preparing Gnocchi entries                            [ DONE ]
Preparing Redis entries                              [ DONE ]
Preparing Ceilometer entries                         [ DONE ]
Preparing Aodh entries                               [ DONE ]
Preparing Puppet manifests                           [ DONE ]
Copying Puppet modules and manifests                 [ DONE ]
Applying 10.0.0.229_controller.pp
10.0.0.229_controller.pp:                            [ DONE ]
Applying 10.0.0.229_network.pp
10.0.0.229_network.pp:                               [ DONE ]
Applying 10.0.0.229_compute.pp
10.0.0.229_compute.pp:                               [ DONE ]
Applying Puppet manifests                            [ DONE ]
Finalizing                                           [ DONE ]

 **** Installation completed successfully ******

Additional information:
 * Parameter CONFIG_NEUTRON_L2_AGENT: You have chosen OVN Neutron backend. Note that this backend does not support the VPNaaS or FWaaS services. Geneve will be used as the encapsulation method for tenant networks
 * A new answerfile was created in: /root/packstack-answers-20230318-233136.txt
 * Time synchronization installation was skipped. Please note that unsynchronized time on server instances might be problem for some OpenStack components.
 * Warning: NetworkManager is active on 10.0.0.229. OpenStack networking currently does not work on systems that have the Network Manager service enabled.
 * File /root/keystonerc_admin has been created on OpenStack client host 10.0.0.229. To use the command line tools you need to source the file.
 * To access the OpenStack Dashboard browse to http://10.0.0.229/dashboard .
Please, find your login credentials stored in the keystonerc_admin in your home directory.
 * Because of the kernel update the host 10.0.0.229 requires reboot.
 * The installation log file is available at: /var/tmp/packstack/20230318-233136-G4TIdd/openstack-setup.log
 * The generated manifests are available at: /var/tmp/packstack/20230318-233136-G4TIdd/manifests

有一点不好的是,apache的配置文件里,未允许公网IP访问horizon,在/etc/httpd/conf.d/15-horizon_vhost.conf 添加ServerAlias 公网IP,然后systemctl reload httpd 即可

看一下版本,当然比devstack的要低(27.0)
[root@ecs-cos conf.d]# nova-manage --version
20.6.0

总之,感觉比devstack要顺利一些。
登录界面:

cirros大小不对,没关系,删掉重新上传。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。