[CalendarServer-users] Port issue
Douglas O'Connor
business at dougoconnor.com
Mon Oct 29 11:02:51 PDT 2007
Hi Cyrus, Emil, et. al,
Thank-you for your explanation of how some of the different pieces
work together with the server(s)/processors and whatnot. I found the
PyDirector service you're looking for, and it cat's the way you would
expect: "four services setup in that config file - two of which
listen on localhost and two of which listen on the external address
on the ports you have specified." Ex:
<pdconfig>
<service name="http">
<listen ip="127.0.0.1:8008" />
<group name="main" scheduler="leastconns">
<host name="caldav-8009" ip="127.0.0.1:8009" />
<host name="caldav-8010" ip="127.0.0.1:8010" />
</group>
<enable group="main" />
</service>
<service name="https">
<listen ip="127.0.0.1:8443" />
<group name="main" scheduler="leastconns">
<host name="caldav-8444" ip="127.0.0.1:8444" />
<host name="caldav-8445" ip="127.0.0.1:8445" />
</group>
<enable group="main" />
</service>
(I've only listed the localhost params for privacy purposes) I assume
that what's listed above is quite normal, although I don't quite
understand why it assigns hostnames on ports 8009 and 8010 for http,
or on 8444 and 8445 for the https, especially when it's listening on
8008 and 8443 respectively. As long as it works, right? :)
On the other box, a single-processor G4, I have DCS running with no
problems, and it doesn't do this. It doesn't load PyDirector at all,
I assume because it doesn't need to balance loads between multiple
processors, and perhaps this is the key difference? PyDirector is the
problem on my newer duocore machine? If so, still, how do I address
this?
And on both boxes, I get the lines:
2007-10-29 13:53:18-0400 [-] [caldav-8008] [startup] Setting up
scheme: kerberos
2007-10-29 13:53:18-0400 [-] [caldav-8008]
[KerberosCredentialFactoryBase] getServerPrincipalDetails: ('Cannot
get sequence cursor from keytab', 2)
2007-10-29 13:53:18-0400 [-] [caldav-8008] [startup] Could not start
Kerberos
I thought this might have been the stumbling block on my MacBookPro,
the machine I'm having problems with, but since it happens on the G4
too maybe it doesn't matter. Or perhaps I just haven't gotten to the
point on the G4 where it does matter. Anyhow, any advice on this one?
Many thanks,
-Doug
On Oct 29, 2007, at 11:44 AM, Cyrus Daboo wrote:
> Hi Douglas,
>
> --On October 29, 2007 3:04:07 AM -0400 Douglas O'Connor
> <business at dougoconnor.com> wrote:
>
>> 1.) Double-checked all the file names and port numbers: as far as
>> I can
>> still, it's all good.
>> 2.) I'm using OSX 10.4.10 Tiger, Python 2.4, Subversion 1.4.5, Apache
>> 2.2.6, APR 1.2.11, and APR-UTIL 1.2.10. The firewall is down for the
>> ports that I've configured DCS to listen on (8008 and 8443).
>> 3.) No error logs come through, the only logfiles I can actually open
>> don't contain much (access.log).
>> 4.) DCS works on the localhost, but not on the port that I assign
>> it in
>> the caldavd-dev.plist. In fact, it always assigns to one or two ports
>> higher than what I tell it, and it ignores my serverhostname and IP
>> address that I give to it. (See the verbose run script below to
>> understand more clearly). I don't know why it changes the port, but
>> whichever one it chooses I can access on localhost just fine.
>> 5.) The collection listing is solid, no problems there, it
>> reflects my
>> plist and xml arrangements.
>>
>> Here below is the run script readout:
>>
>
> Some things to note: the server architecture we have allows for the
> "server" to actual spawn multiple server processes for handling
> requests. By default we spawn one server instance per cpu/core.
> When we do that, each server instance listens only on 127.0.0.1 and
> on a port that is different from the main one configured in
> the .plist (we increase the port numbers by one for each instance).
> We then also start a load balancer process (pydirector) that should
> be listening on all the interfaces/ports specified in the .plist,
> and that will redirect incoming requests to each server instance in
> an appropriate fashion. The error.log file (or stdout) will show
> the localhost and instance port numbers, not the interface/port of
> the load balancer. So you need to ignore those and just attempt to
> connect on the interfaces/ports in the caldavd.plist.
>
> Can you start the server again and look for the 'Adding pydirector
> service with configuration: XXX' line in the log output, and then
> in another terminal window cat the XXX file listed there. You
> should see four services setup in that config file - two of which
> listen on localhost and two of which listen on the external address
> on the ports you have specified. Can you double-check that?
>
> --
> Cyrus Daboo
>
More information about the calendarserver-users
mailing list