Hi Jason,

On 03/16/09 04:06, Jason Zhao wrote:
> Hi, Sundar and Jan,
>
> I am preparing the the test of AI DNS discovery
> solutions. From the AI design documents and
> discussion of caiman-disuss mail list, I know for
> 2009.06 release, multicast and config file solution
> will work together for DNS discovery.
>
> Here are some possible cases in order to test
> DNS solutions, please tell me your idea. Thanks!
>
> On AI server side:
> ----------------------------------------------
> 1. After "create-service", the DNS message will be
> registered on AI server, which enable AI client
> make DNS multicast query on the same subnet. So
> that, it requires to check if dns-sd register
> value right or not.
> E.G.,
> After
> # installadm create-server -s <iso> </image/path>
>   

just a nit:

installadm create-server
->
installadm create-service


> it register the following process:
> "dns-sd -R <service> <type> <domain> <port> <key=val>"
>
> To test, on server side, run
> "dns-sd -L <service> <type> <domain>"
> command to get AI server and socket information,
> then verify its correctness.
>   

That sounds good - you also need to verify that TXT record reported
by 'dns-sd -L' points to the right location (your AI server under test),
since 'dns-sd -L' looks up given service on whole local subnet.

Also, the same check you describe below (setting install_svc_address)
should be done here, since when install service is created, menu.lst
(for x86) and install.conf (for Sparc) are populated with
install_svc_address option as well. In this case, you need to take
a look at following files

x86:
/tftpboot/menu.lst.<install_service>

Sparc:
</image/path>/install.conf

> 2. For individual AI client, when it is not in
> the same subnet with AI server.

Let me clarify a bit - install_svc_address option is set in all cases,
as there is no check if AI client is on the same subnet as AI server.

> It requires to
> check "menu.lst(X86)" and "install.conf(SPARC)"
> after "installadm create-client" for individual
> AI client.
> E.G.,
>
> # installadm create-client -e <mac> -n <service>
>   

As far as I am aware of, <image_path> is also mandatory, so
you will need to invoke installadm command in following way:

# installadm create-client -e <mac> -n <service> -t <image_path>


> check if menu.lst(X86) or install.conf(SPARC)
> contains "install_svc_address" item with correct
> AI Server IP address and socket information.
>   

Yes, those files can be found at following locations:

x86:
/tftpboot/menu.lst.01<mac>

sparc:
<image_path>/install.conf

> For above 2 cases, To verify correct AI server
> and socket, it requires to access http://AI_Server:Socket
> to make sure its correctness.
>   

Correct.

>
>
> On AI client side:
> ----------------------------------------------
> On AI client side, to make sure AI clients are
> able to find correct AI server and its socket,
> the following verifications will do on AI client
> after it boots up from AI image.
>
> 1. Run DNS multicast to find:
> "dns-sd -L <service> <type> <domain>"
>
> 2. In case that DNS multicast fails, download
> menu.lst.<mac> file or install.conf from AI server
> to verify if AI client receive correct value.
>
> Frankly, at first, I thought it was necessary to do
> above 2 verifications on AI client side, but now, I
> find it may not be required, because item 1# has
> already been verified during AI installation. As for
> item 2#, if client receives wrong menu.lst or install.conf,
> it is always network issue or configuration error on server
> side and could be covered by AI server test cases. The
> situation that AI client receives correct menu.lst
> but intepretes it into wrong value is impossible, because
> it means the devfs on kernel space is ruined.
>   

Thinking about this, as far as this part of service discovery is concerned,
what you might need to take a look at is if correct service name and
correct service location was provided to AI client.

For this check, it could be sufficient to take a look at install_service
and install_svc_address options applying the same mechanism AI client
uses:

x86:
# /usr/sbin/prtconf -v /devices | /usr/bin/sed -n
'/install_service/{;n;p;}' | /usr/bin/cut -f 2 -d \'
# /usr/sbin/prtconf -v /devices | /usr/bin/sed -n
'/install_svc_address/{;n;p;}' | /usr/bin/cut -f 2 -d \'

Sparc:
# /usr/bin/grep "^install_service" /tmp/install.conf | /usr/bin/cut
-d'=' -f2
# /usr/bin/grep "^install_svc_address" /tmp/install.conf | /usr/bin/cut
-d'=' -f2`

If you would like to verify if service discovery itself works, you could
use either
'dns-sd -L' command you mention above or /usr/bin/ai_sd Python script
available in AI image (please see usr/src/cmd/auto-install/README.test file
for details).

Thank you,
Jan

> Due to my limited understanding about AI, it would be
> very appreciated if you can provide your comments about
> cases.
>
> Great Thanks
> Jason
>   


Reply via email to