[Freeipa-devel] [PATCH] Patch to allow IPA to work with dogtag 10 on f18

Petr Viktorin pviktori at redhat.com
Tue Sep 11 12:41:51 UTC 2012


On 09/11/2012 04:04 AM, Ade Lee wrote:
> On Mon, 2012-09-10 at 16:58 -0400, Rob Crittenden wrote:
>> Petr Viktorin wrote:
>>> Attaching rebased and squashed patches. I've done some testing with them
>>> but please test some more.
>>>
>>
>> Most of these aren't IPA issues, but dogtag issues. I'll try to split
>> them out.
>>
>> IPA:
>>
>> For the configuration files in install/conf to be updated at rpm update
>> time the VERSION needs to be incremented.

These files should stay the same since on upgrade we're still using a 
Dogtag 9 style instance. The Dogtag 10 ports are only used in new installs.

>> The ipa package lacks any updated dogtag dependencies, so I abused it.

What should the updated dependencies be? Since it should work with both 
dogtag 9 and 10, I don't see how they should change.

>> I installed IPA with dogtag 9 and created a replica.
>>
>> I updated the IPA bits, that worked fine.
>>
>> I updated to dogtag 10 and now the CA doesn't work on the master,
>> including starting the dogtag instance. Note that the rpm update process
>> worked, no notice that the CA service didn't restart.
>>
> Did you try to restart the CA with selinux in permissive mode?  This is
> still required right now until I get the selinux policy all straightened
> out.
>
> There is also a separate dogtag ticket (which is currently being worked
> on) to restart existing dogtag instances when dogtag is upgraded from
> 9->10.

In permissive mode, this upgrade works for me.


Sometimes I do get this error intermittently:

ipa: ERROR: Certificate operation cannot be completed: Unable to 
communicate with CMS (Service Temporarily Unavailable)

Usually, waiting a couple of minutes clears this up. Perhaps we are not 
doing startup detection correctly. Ade mentioned that waiting for ports 
may not be ideal. How do we know if Dogtag is initialized?

>> Uninstalling failed because it tried to run pkidestroy and not pkiremove.

I was under the impression that pkidestroy was the correct command to 
remove an upgraded instance. I'll check with Ade.

> I'll test this too.
>
>> The contents of the file passed to pkispawn should be logged so we can
>> see exactly what was passed in.
>>
> Its a pretty big file.  You might want to only log the modifications.
> Or save the file somewhere.

Our logs are pretty verbose, so that shouldn't be a problem. I'll put it 
in the next version of the patch.

>> DOGTAG:
>>
>> When upgrading using the dogtag-devel repo I had to specify
>> pki-tools.x86_64 otherwise it tried to install both 32 and 64-bit
>> versions (and failed).
>>
>> I ended up running: yum update pki-ca tomcatjss pki-tools.x86_64
>> --enablerepo=dogtag-devel --enablerepo=updates-testing
>>
> We'll look into this.  I think I know why this happens.
>
>> What happens if someone manually upgrades pki-ca without first updating
>> ipa? I think that pki-ca is going to need a Conflicts ipa < 3.0 in it.
>
> We can add that.
>
>> certificate renewal failed. I spent far too long trying to figure out
>> why tomcat wasn't listening on port 9180 but failed. I think 9180 is
>> actually the old server, right? So another missing dependency on a fixed
>> certmonger?
>>
>> The best I could find was the certmonger error:
>>
>> ca-error: Error 7 connecting to
>> http://edsel.example.com:9180/ca/ee/ca/profileSubmit: Couldn't connect
>> to server.
>>

I'll set the certmonger min version to 0.60 as per Nalin's mail.

> Is this cert renewal on a dogtag 10 instance?  Or the upgraded dogtag 9?
> If its dogtag 10, perhaps you do not have the certmonger version that
> has the relevant fix?  If its dogtag 9, then we need to figure out whats
> going on.  That reminds me - I need to file a bug to allow certmonger to
> talk to the newly defined dogtag ports.  Do you have selinux permissive?
>
>> There is no man page for pkispawn/pkidestroy :-( According to the FHS
>> these should not be in /bin but in /usr/sbin (not end-user commands).
>>
> There is a trac ticket open for man pages for pkispawn and pkidestroy.
> We plan to complete this ticket by the time f18 is released.
>
> We'll look into the location of pkispawn/pkicreate.
>
>> The output of pkicreate/pkisilent was really terrible and not usable at
>> all so we didn't display it when failures occurred. It looks like that
>> has been addressed, at least for the case where a CA is already
>> configured and you try to install IPA. Perhaps we should capture stderr
>> and display that instead of the command-line of pkispawn? Again, a man
>> page would help with the integration.
>>
>> 2012-09-10T20:51:45Z DEBUG   [2/18]: configuring certificate server instance
>> 2012-09-10T20:51:45Z DEBUG args=/bin/pkispawn -s CA -f /tmp/tmp_Urraq
>> 2012-09-10T20:51:45Z DEBUG stdout=
>> 2012-09-10T20:51:45Z DEBUG stderr=pkispawn    : ERROR    ....... PKI
>> subsystem 'CA' for instance 'pki-tomcat' already exists!
>>
>> 2012-09-10T20:51:45Z CRITICAL failed to configure ca instance Command
>> '/bin/pkispawn -s CA -f /tmp/tmp_Urraq' returned non-zero exit status 1
>>
> That may be a good idea.  Of course. thats an IPA thing, right?
>
>> rob
>>
>
>


-- 
Petr³




More information about the Freeipa-devel mailing list