Ask Your Question
0

Solved: Install error with CONFIG_MYSQL_INSTALL=n [closed]

asked 2013-12-01 16:00:41 -0600

vs.tokarev gravatar image

updated 2013-12-04 14:24:53 -0600

I'm trying to install OpenStack Havana using Packstack. I have Percona XtraDB Cluster installed and configured, so I don't need Packstack to install MySQL. In answers file I set option CONFIG_MYSQL_INSTALL=n

I set CONFIG_MYSQL_HOST, CONFIG_MYSQL_USER and CONFIG_MYSQL_PW to point to my current MySQL Cluster install.

I got the following error messages when I try to launch Packstack:

Applying 172.16.1.1_mysql.pp
Applying 172.16.1.1_qpid.pp
                                                                                   [ ERROR ]

ERROR : Error appeared during Puppet run: 172.16.1.1_mysql.pp
Error: Execution of '/usr/bin/yum -d 0 -e 0 -y install mysql' returned 1: Error: mysql conflicts with 1:Percona-XtraDB-Cluster-client-5.5.34-23.7.6.565.rhel6.x86_64
You will find full trace in log /var/tmp/packstack/20131201-150252-SupDy6/manifests/172.16.1.1_mysql.pp.log

Packstack tries to install MySQL, although I set the option no to do this. Anyone know how to fix it?

edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by dheeru
close date 2013-12-04 23:05:37.565754

1 answer

Sort by ยป oldest newest most voted
0

answered 2013-12-04 14:22:38 -0600

vs.tokarev gravatar image

Ok, I had to dig into this problem myself and I found the reason.

As I said, I was going to use preinstalled Percona XtraDB Cluster as DB backend for OpenStack. The problem is that bundled Puppet manifest does not support this product yet.

Packstack bundled Puppet manifest for MySQL can be found here: /usr/lib/python2.6/site-packages/packstack/puppet/templates/mysql_noinstall.pp. This manifest is used when you disable MySQL installation in your answer file (like in my case). When using this manifest Puppet tries just to make sure, that package mysql has really been installed. It uses the following command to get a list of installed RPMs:

/bin/rpm -qa --nosignature --nodigest --qf '%{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} %{RELEASE} %{ARCH} :DESC: %{SUMMARY}\n'

Then Puppet searches for 'mysql' and 'mysql-client' RPMs, but they could not be found. Percona uses 'Percona-XtraDB-Cluster-server' and 'Percona-XtraDB-Cluster-client' as RPM names, that's why Puppet cannot find MySQL and tries to install despite the fact, that I set CONFIG_MYSQL_INSTALL=n. Of course, during MySQL installation process yum shows 'conflict' error and installation stops.

The problem was that I'm not familiar with Puppet, so I didn't know which files to edit. I tried to edit /usr/lib/python2.6/site-packages/packstack/puppet/modules/mysql/manifests/params.pp and set Percona RPM names there, but it didn't help.

Finnaly, in file /usr/lib/python2.6/site-packages/packstack/puppet/templates/mysql_noinstall.pp I just set

ensure => absent

and it finally worked. This is definitely not the best solution, but it worked for me and probably will save your time if you face the same problem.

Also if you are reading this and you can make changes in Puppet manifests for Packstack in order to support Percona - please do this.

edit flag offensive delete link more

Comments

I have the same problem. Thanks !

Pein gravatar imagePein ( 2014-03-08 20:59:22 -0600 )edit

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2013-12-01 16:00:41 -0600

Seen: 1,309 times

Last updated: Dec 04 '13