All,

you may have seen (part of) the discussion concerning IPv6 addresses and
kstats. This lead to a more fundamental question, and this is an effort to
recap various elements of this discussion: (we also solve the kstats 
question btw)

What is the "unit of currency" as far as individual servers are concerned?

(ie, how do admins of ILB talk about back-end servers, and how does the
system display information about them?)

Using IP addresses may be feasible for IPv4, but with IPv6 this gets
unwieldy; therefore an abstraction is desired by which a (set of) server(s)
can be identified and manipulated. Postulating the use of regular hostnames 
turns out not to be a valid option, as it requires name services to be 
maintained in the data center, something we're told cannot be relied on.

Consensus was reached that we want to provide the capability of assigning
names to servers; to avoid confusion with traditional hostnames, we call 
this a "server ID".
This can be done in several ways; we selected to extend the "ilbadm 
create-servergroup" subcommand thus:

        ilbadm create-servergroup ... [-n serverID=foo ] ..

if the servernID option is not used, the ID defaults to the servergroup 
name. this name is then applied to every server specified, thus: In 
addition to the id specified, an index is appended to the name of every
individual server. eg:

        ilbadm create-servergroup -s server=192.168.1.1,192.168.1.2 group1

will cause the servers to be named "group1.1" and "group1.2". (this is also 
done if only one server is used)

In order to be able to associate different names with indivdual servers, 
"ilbadm add-server" will be extended to also a '-n serverID=' option.

In all cases where a single server is specified, it will still be able to 
use a "traditional" hostname instead of the IP address; an option will be 
provided to use this hostname as the server ID (this name will remain, even 
if the naming DB changes after this server ID is created)

"ilbadm remove-server", "enable-server" and "disable-server" will be
modified to accept names instead of IP addresses; an option will be
provided to indicate that either hostnames or IP addresses are used as
arguments.

this id will also be used as the name in per-server kstats (this is the 
"solving the IPv6 issue" part), both kstat(1M) and "ilbadm 
show-statistics", once implemented, will display this id for servers.

Michael
-- 
Michael Schuster        http://blogs.sun.com/recursion
Recursion, n.: see 'Recursion'


Reply via email to