Petr Viktorin wrote:
On 09/19/2012 04:56 PM, Rob Crittenden wrote:
Petr Viktorin wrote:
On 09/17/2012 08:10 PM, Rob Crittenden wrote:
Petr Viktorin wrote:
On 09/14/2012 08:46 AM, Martin Kosek wrote:
On 09/13/2012 10:35 PM, Rob Crittenden wrote:
Petr Viktorin wrote:
On 09/11/2012 11:05 PM, Rob Crittenden wrote:
Petr Viktorin wrote:
On 09/04/2012 07:44 PM, Rob Crittenden wrote:
Petr Viktorin wrote:

Shouldn't this also call verify_fqdn() on the local hostname and
just the master? I think this would eventually fail in the
what if that was skipped?


A few lines above there is a call to get_host_name, which will

I double-checked this, it fails in conncheck. Here are my steps:

# ipa-server-install --setup-dns
# ipa-replica-prepare
# ipa host-del

On replica, set DNS to IPA master, with hostname in /etc/hosts.

# ipa-replica-install ...

The verify_fqdn() passes because the resolver uses /etc/hosts.

The conncheck fails:

Execute check on remote master
Check connection from master to remote replica

Remote master check failed with following error message(s):
Could not chdir to home directory /home/admin: No such file or
Port check failed! Unable to resolve host name

Connection check failed!
Please fix your network settings according to error messages
If the check results are not valid it can be skipped with
--skip-conncheck parameter.

The DNS test happens much further after this, and I get why, I
don't see how useful it is unless the --skip-conncheck is used.

For the record, it's because we need to check if the host has DNS
installed. We need a LDAP connection to check this.

ipa-replica-install ~rcrit/
Directory Manager (existing master) password:

ipa         : ERROR    Could not resolve hostname
using DNS. Clients may not function properly. Please check your
setup. (Note that this check queries IPA DNS directly and ignores
Continue? [no]:

So I guess, what are the intentions here? It is certainly better


If the replica is in the master's /etc/hosts, but not in DNS, the
conncheck will succeed. This check explicitly queries IPA records
and ignores /etc/hosts so it'll notice this case and warn.

Ok, like I said, this is better than we have. Just one nit then you
get an ack:

+        # If remote host has DNS, check forward/reverse resolution
+        try:
+            entry = conn.find_entries(u'cn=dns',
+        except errors.NotFound:

u'cn=dns' should be str(constants.container_dns).


This is a search filter, Petr could use the one I already have in
"" function:

For performance sake, I would also not search in the entire tree, but
limit the
search only to:

DN(('cn', 'masters'), ('cn', 'ipa'), ('cn', 'etc'), api.env.basedn)


Attaching updated patch with Martin's suggestions.

I think what Martin had in mind was:

if api.Object.dnsrecord.get_dns_masters():

I didn't want to do this because api.Object.* use our global ldap2
Backend, which is hardwired to query localhost.
I see now that I can hack around this, and we already do this in
I've extracted the hack and reused it to get the DNS masters.

I can't say I'm crazy about the method name you've chosen...


I intended the name as a warning to not use it unless necessary.

Changed to temporary_ldap2_connection.

I found a dangling reference to replman. I removed this and installation seemed to work ok.

--- install/tools/ipa-replica-install   2012-09-19 14:01:16.169053047 -0400
+++ /usr/sbin/ipa-replica-install       2012-09-19 14:43:06.684917906 -0400
@@ -564,8 +564,6 @@
         if conn and conn.isconnected():
-        if replman and replman.conn:
-            replman.conn.unbind_s()

     # Configure ntpd
     if options.conf_ntp:

Freeipa-devel mailing list

Reply via email to