root/openwsman/trunk/README

Revision 2590, 8.1 kB (checked in by nashif, 10 months ago)

update

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1 How to compile and run openwsman from Subversion?
2 ===============================
3
4 After checking out the project from subversion run ./autoconfiscate in the TOP directory and
5 follow that by running ./configure <options>.
6 If you download a packaged version, then there is no need to run ./autoconfiscate and you will
7 be able to run ./configure directly.
8
9 Most likely you will need to install some of the packages, depending on the distribution
10 you are running.
11
12 Packages and other software needed:
13
14 - libxml2
15 - sfcc (from the sblim project)
16 - swig and python for python binding support
17 - other development packages like autoconf, automake etc.
18
19 After all packages are installed, compile everything and install. The server can run as
20 a daemon, which would require root access; But it can be run in the foreground with debugging
21 messages printed to stdout as well. This the help output when you run:
22
23 % /usr/local/sbin/openwsmand --help
24 Usage:
25   openwsmand [OPTION...] WS-Management Server
26
27 Help Options:
28   -?, --help                   Show help options
29
30 Application Options:
31   -n, --no-plugins             Do not load any plugins
32   -d, --debug                  Start daemon in foreground and turn on debugging
33   -s, --syslog=0-6             Set the verbosity of syslog output.
34   -c, --config-file=<file>     Alternate configuration file
35
36
37 Starting from version 0.1.1 a configuration file is needed. you can find an example in the
38 ./etc directory. The configuration file has the following syntax:
39
40 [server]
41 port = 8889
42 #ssl_port = 8888
43 ssl_cert_file = /etc/openwsman/servercert.pem
44 ssl_key_file = /etc/openwsman/serverkey.pem
45 #digest_password_file = /etc/openwsman/digest_auth.passwd
46 basic_password_file = /etc/openwsman/simple_auth.passwd
47 enum_idle_timeout = 5000
48
49 min_threads = 1
50 max_threads = 1
51
52 #use_digest is OBSOLETED, see below.
53
54 #
55 # Authentication backend for BASIC authentication. Default is to read a configuration file defined with 'basic_password_file'
56 #
57
58 #basic_authenticator = libwsman_pam_auth.so
59 #basic_authenticator_arg = openwsman
60
61
62 [client]
63 port = 8889
64 agent = openwsman 1.5.9
65
66 [cim]
67 default_cim_namespace = root/cimv2
68
69 # The following are in part fake namespaces for some publicly available CIM implementations.
70 vendor_namespaces = OpenWBEM=http://schema.openwbem.org/wbem/wscim/1/cim-schema/2,Linux=http://sblim.sf.net/wbem/wscim/1/cim-schema/2,OMC=http://schema.omc-project.org/wbem/wscim/1/cim-schema/2,Reef=http://reef.sblim.sf.net/wbem/wscim/1/cim-schema/2,CWS=http://cws.sblim.sf.net/wbem/wscim/1/cim-schema/2
71
72
73 To be able to put the configuration files under /etc/openwsman, run the configure script
74 with the --sysconfdir option using the value /etc. If this option is not used, the default will
75 be under PREFIX (/usr/local/etc ).
76
77 To run in SSL mode you need to enable the SSL port and create certificates and adapt the configuration
78 with the correct path to the files.
79
80 To start the server in the foreground, run:
81
82 % /usr/local/sbin/openwsmand  -d
83
84 You can also specify the configuration file to be used on the command line using the -c option.
85
86
87 On the client side, which has the following options
88
89  % /usr/local/bin/wsman --help-all
90
91 Usage:
92   wsman [Option...] <action> <Resource Uri>
93
94 Usage:
95   wsman [Option...] <action> <Resource Uri>
96
97 Help Options
98   -?, --help
99   --help-all                                      Show help options
100   --help-enumeration                              Enumeration Options
101   --help-tests                                    Test Cases
102   --help-cim                                      CIM Options
103   --help-flags                                    Request Flags
104   --help-event                                    Subscription Options
105
106 Enumeration
107   -m, --max-elements=<max number of elements>     Max Elements Per Pull/Optimized Enumeration
108   -o, --optimize                                  Optimize enumeration results
109   -E, --estimate-count                            Return estimation of total items
110   -M, --enum-mode=epr|objepr                      Enumeration Mode
111   -U, --enum-context=<enum context>               Enumeration Context (For use with Pull and Release)
112
113 Tests
114   -f, --from-file=<file name>                     Send request from file
115   -R, --print-request                             print request on stdout
116   -Q, --request                                   Only output reqest. Not send it.
117   -S, --step                                      Do not perform multiple operations (do not pull data when enumerating)
118
119 CIM
120   -N, --namespace=<namespace>                     CIM Namespace (default is root/cimv2)
121   -B, --binding-enum-mode=none|include|exclude    CIM binding Enumeration Mode
122   -T, --cim-extensions                            Show CIM Extensions
123   -W, --references                                CIM References
124   -w, --associators                               CIM Associators
125
126 Flags
127   -x, --filter=<filter>                           Filter
128   -D, --dialect=<dialect>                         Filter Dialect
129   -t, --operation-timeout=<time in sec>           Operation timeout in seconds
130   -e, --max-envelope-size=<size>                  maximal envelope size
131   -F, --fragment=<fragment>                       Fragment (Supported Dialects: XPATH)
132
133 Event subscription
134   -G, --delivery-mode=<mode>                      Four delivery modes available: push/pushwithack/events/pull
135   -Z, --notification-uri=<uri>                    Where notifications are sent
136   -r, --subscription-expiry-time=<seconds>        subscription expiry time in seconds
137   -H, --heartbeat=<seconds>                       Send hearbeat in an interval
138   -l, --bookmark                                  Send bookmark
139   -i, --subscription-identifier=<uuid:XXX>        Used to specify which subscription
140   -L, --notify-reference-properties=<xs:anyURI>   Notify Reference Properties
141
142 Application Options
143   -d, --debug=1-6                                 Set the verbosity of debugging output.
144   -c, --cacert=<filename>                         Certificate file to verify the peer
145   -A, --cert=<filename>                           Certificate file. The certificate must be in PEM format.
146   -K, --sslkey=<key>                              SSL Key.
147   -u, --username=<username>                       User name
148   -g, --path=<path>                               Path
149   -J, --input=<filename>                          File with resource for Create and Put operations in XML, can be a SOAP envelope
150   -p, --password=<password>                       Password
151   -h, --hostname=<hostname>                       Host name
152   -b, --endpoint=<url>                            End point
153   -P, --port=<port>                               Server Port
154   -X, --proxy=<proxy>                             Proxy name
155   -Y, --proxyauth=<proxyauth>                     Proxy user:pwd
156   -y, --auth=<basic|digest|gss>                   Authentication Method
157   -a, --method=<custom method>                    Method (Works only with 'invoke')
158   -k, --prop=<key=val>                            Properties with key value pairs (For 'put', 'invoke' and 'create')
159   -C, --config-file=<file>                        Alternate configuration file
160   -O, --out-file=<file>                           Write output to file
161   -V, --noverifypeer                              Not to verify peer certificate
162   -v, --noverifyhost                              Not to verify hostname
163   -I, --transport-timeout=<time in sec>           Transport timeout in seconds
164
165 To create a password file, use the htpasswd and htdigest utilities from the apache distribution.
166
167 You can connect to the server with the following command, which is part of the DMTF WS-Management specification (Draft)
168
169 wsman identify    -h <hostname> --port 8889 -u wsman --password secret
170
171
172 The above command should give the following result:
173
174
175 <?xml version="1.0" encoding="UTF-8"?>
176 <s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:wsmid="http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd">
177   <s:Header/>
178   <s:Body>
179     <wsmid:IdentifyResponse>
180       <wsmid:ProtocolVersion>http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd</wsmid:ProtocolVersion>
181       <wsmid:ProductVendor>openwsman</wsmid:ProductVendor>
182       <wsmid:ProductVersion>2.0.0</wsmid:ProductVersion>
183     </wsmid:IdentifyResponse>
184   </s:Body>
185 </s:Envelope>
186
187
188
189
190
191
192
193
194
195