I see. This makes things even better.

-Jan

----- Original Message -----
From: Sangeeta Misra <sangeeta.mi...@sun.com>
Date: Monday, March 23, 2009 6
Subject: Re: [ilb-dev] writeup for the SCF thing
To: Zhenghui.Xie at Sun.COM
Cc: ilb-dev at opensolaris.org, Michael Schuster <Michael.Schuster at Sun.COM>


> Jan
> I think we voted against the -t option. Other than that the rest of 
> the notes are as I remember it.
> 
> Sangeeta
> 1. ilb will have one single instance in SMF framework:
>    svc:/network/loadbalancer/ilb:default
> 2. persistent configuration of ilb is saved in SCF.
> 3. rules, servergroups and healthcheck objects will be property groups 
> for the
>    ilb instance.  When user use ilbadm to create them, a new property 
> group will
>    be created in SCF. When user destroy them, the property group will 
> be deleted
>    from SCF.
> 4. When user ilbadm uses to change the configuration, the change saves 
> to SCF
>    implicitly, unless user uses '-t' to state the configuration is temporary.
> 5. 'ilbadm import' reads from a file and override what is in SCF, 
> meaning that
>    all existing property groups will be deleted, and new property 
> groups will be
>    created based on the content of the file.
> 6. 'ilbadm export' reads from SCF and output all property groups of 
> ilb instance
>    to a file in certain format. This format is readable to 'ilbadm import'.
> 7. user can use svcprop(1) to get ilb configuration. But should NOT use
>    svccfg(1M) to change ilb configuration.
> 8. use 'svccfg import/export' is not equivalent to 'ilbadm 
> import/export' and
>    cannot be used exchangeable. If user wants to import/export ilb
>    configuration, 'ilbadm import/export' should be used. 'ilbadm 
> import' cannot
>    read output from 'svccfg export', vice versa.
> 9. When daemon starts up, it reads from SCF to get configuration. 
> There will be
>    empty configuration when the first time daemon starts.
> 
> Below is a sample layout of the ilb property groups/properties:
> 
> prop-group name       | property name | property type  | property value
> -------------------------------------------------------------------------
> rule123                 status          boolean          disabled/enabled
>                 vip             net-v4-addr      v4 IP address
>                 vip6            net-v6-addr      v6 IP address
>                 port            astring          port range
>                 ipversion       int              4/6
>                 protocol        astring          TCP/UDP...
>                 interface       astring          interface name
>                 ilb-alg         astring          round-robin...
>                 ilb-type        astring          NAT/DSR...
>                 healthcheck     astring          healthcheck name
>                 servergroup     astring          servergroup name     
> servergroup123          status          boolean          disabled/enabled
>                 server1         astring          IP-addr:port
>                 server2         astring          IP-addr:port
>                 [ .... more servers....]
> healthcheck123          hc-test         astring          test program
>                 hc-timeout      int              timeout value in sec
>                 hc-interval     int              interval val in sec
>                 hc-count        int              test repeatition
> 
> sample output from svcprop:
> # svcprop svc:/network/loadbalancer/ilb:default
> [ ..... skipped instance meta data  .....]
> rule123/status        boolean  enabled
> rule123/vip   net-v4   1.2.3.4
> rule123/vip6  net-v6   
> rule123/port  astring  100-200
> rule123/interface     astring  bge0
> rule123/ilb-alg               astring  round-robin
> rule123/ilb-type      astring  NAT
> rule123/healthcheck   astring  healthcheck123
> rule123/servergroup   astring  servergroup123
> [.... omitted more rules ....]
> servergroup123/status boolean  enabled
> servergroup123/server1        astring  1.1.1.1:80
> servergroup123/server2        astring  1.1.1.2:80
> [.... omitted more servergroups....]
> healthcheck123/hc-test        astring  TCP
> healthcheck123/hc-timeout     int 3
> healthcheck123/hc-interval    int 60
> healthcheck123/hc-count               int 2
> [.... omitted more healthchecks....]
> 

Reply via email to