(file) Return to readme.txt CVS log (file) (dir) Up to [Pegasus] / pegasus

  1 karl  1.11 
  2            OpenPegasus - A Manageability Services Broker for the DMTF CIM/WBEM Standards
  3 karl  1.1  
  4 mike  1.3  Author: Mike Brasher, Karl Schopmeyer
  5            
  6 karl  1.11 Tagline: OpenPegasus is an object manager for DMTF CIM objects written in C++
  7 karl  1.5           and supported by The Open Group
  8 karl  1.4  
  9 karl  1.14 STATUS: Revised October 2003 to match Pegasus release 2.3
 10 karl  1.15 
 11            NOTE: Obsolete. See readme.html
 12 karl  1.11 Contents:
 13 mike  1.7  =========
 14            
 15 karl  1.11 1.  Overview
 16            2.  Availability of Pegasus
 17            3.  Pegasus major components
 18            4.  Pegasus Dependencies
 19            5.  The Pegasus Directory Structure
 20            6.  Installation
 21            7.  Building Pegasus
 22            8.  Populate the Repository
 23            9.  The MU Utility
 24            10. Notes about Building Pegasus on Linux
 25            11. Notes on building Pegasus with SSL
 26            12. Building Pegasus on Windows 2000 or Windows XP With Microsoft Visual C++
 27            13. Installing the Pegasus HTML Test Client
 28            14. Development with Pegasus and Pegasus Tools
 29            15. Commands
 30            16. Creating SSL certifications.
 31 konrad.r 1.16.2.1 17. Configuring Pegasus to use SSL
 32                   18. Testing with ICU enabled
 33                   19. Documentation
 34                   20. Participate
 35 karl     1.11     
 36                   
 37                   
 38                   
 39                   1. Overview:
 40                   ============
 41                   
 42                   OpenPegasus (also refered to as Pegasus):
 43                   
 44 karl     1.5      Pegasus is an open-source object manager for DMTF CIM objects. It is written
 45                   in C++ and includes the Object manager, a set of defined interfaces, and SDKs
 46                   for both client, providers, and services extensions.  It is maintained
 47                   consistent with the DMTF CIM and WBEM specifications except for any exceptions
 48                   noted in the documentation.
 49 karl     1.1      
 50                   This distribution represents a work in progress towards building a Pegasus
 51 mike     1.3      release. Pegasus is open source and is covered under the following license.
 52 karl     1.1      This version is incomplete and is directed towards evaluators and developers
 53                   of the Pegasus Architecture.
 54                   
 55                   Pegasus is being developed and maintained under the auspices of The Open
 56                   Group. Pegasus is maintained under the license defined in the doc directory
 57                   (LICENSE) of this release.  This licensing is intended to support as wide a
 58                   distribution as possible with minimal demands on the users.
 59                   
 60 karl     1.11     This distribution represents a snapshot of the current work. Currently Pegasus
 61 karl     1.1      is in phase 1 of a multiphase development project. This snapshot is primarily
 62                   for developers and for evaluation of the project.
 63                   
 64 mike     1.3      More information on this project, access to the CVS, and documentation on
 65                   Pegasus are available from the OpenGroup WEB site.
 66 karl     1.1      
 67                   There are separate files in the release for
 68                   
 69 karl     1.11     		 History of releases - HISTORY
 70                   		 What's new for this release - WHATSNEW
 71                   		 What's Broken - BUGS
 72 karl     1.1      
 73                   In addition, the roadmap for Pegasus and further information on the project is
 74                   available on The Opengroup Pegasus WEB Site.
 75                   
 76 karl     1.11     http://www.openpegasus.org
 77                   
 78                   
 79                   2. Availability of Pegasus:
 80                   ============================
 81                   
 82                   Pegasus is distributed as open source.  The distribution is available via 
 83                   CVS and snapshot images in tar and zip file formats.
 84                   
 85                   The source code from CVS can be found at the following Open Group CVS server;
 86                   
 87                            cvs.opengroup.org:/cvs/MSB 
 88                   
 89                   using the password authenticating server option (pserve).
 90                   
 91                   Anonymous access for read is with the name and password "anon" as follows:
 92                   
 93                   	%export CVSROOT=:pserver:anon@cvs.opengroup.org:/cvs/MSB
 94                   	%cvs login
 95                   	  
 96                            When requested, enter the password "anon"
 97 karl     1.1      
 98 karl     1.11     The source tree is in the directory pegasus. To check out the complete Pegasus  
 99                   source tree just type:
100 karl     1.1      
101 karl     1.11              cvs co pegasus
102 karl     1.1      
103 karl     1.11     A Pegasus directory will be created under the current directory and populated
104                   with the complete source tree and documentation. To get the latest updates 
105                   after a checkout just type this from Pegasus root:
106 karl     1.1      
107 karl     1.11              cvs update -d
108 mike     1.3      
109                   
110 karl     1.11     Active contributors to Pegasus have write access to the CVS repository.
111                    If you are interested in contributing back to the Pegasus project, 
112                   (i.e. write (checkin) access to CVS) please request access from either
113                   Martin Kirk (m.kirk@opengroup.org) or Karl Schopmeyer (k.schopmeyer@opengroup.org).
114 karl     1.1      
115 karl     1.11     
116                   3. Pegasus Major Components:
117                   =============================
118 mike     1.3      
119 karl     1.1      The major components of Pegasus are:
120                   
121 mike     1.3      Pegasus Server - WBEM/CIM Server with interfaces for providers and clients
122 karl     1.1      
123 karl     1.5      Pegasus Repositories - Today Pegasus provides a defined class repository
124                       interface and a simple file based class repository. It also includes
125                       an instance repository. Note that these repository were created for
126                       functionality, not efficieny. It is expected that they will be replaced
127 karl     1.11         with other implementations of the respository function as the need arises.
128 mike     1.3      
129 karl     1.4      Pegasus Client SDK - Tools for building Pegasus clients based on the Pegasus
130                       C++ interfaces and using the WBEM HTTP/XML protocols or directly
131 mike     1.3          interfacing with Pegasus.
132                   
133 karl     1.4      Pegasus Test Clients - Simple test clients being developed as part of the
134 mike     1.3          Pegasus development process
135                   
136 karl     1.4      Pegasus HTML Test Client - To aid in testing we created a test client for
137                       Pegasus that uses a WEB server (ex. Apache) with a set of CGI modules and
138                       HTML to allow the entry of Pegasus operations from a WEB browser as forms
139 karl     1.11         and the receipt of the response as WEB pages. This has proven useful as a
140 mike     1.3          test tool and can be used for a wide variety of demonstrations.
141 karl     1.1      
142 karl     1.11     Pegasus Provider SDK - Tools for building Pegasus providers using the Pegasus
143 karl     1.5          C++ interfaces.
144                   
145 karl     1.11     Pegasus Providers - Providers to illustrate the use of Pegasus services including 
146                   providers for test and demonstration.
147 karl     1.1      
148 karl     1.11     Pegasus Service Extensions -  Common services for use by other Pegasus 
149                   components to extend Pegasus capabilites. 
150 karl     1.1      
151 karl     1.5      Pegasus MOF Compiler - FA standalone compiler for MOF files that can be used
152 karl     1.11     to install MOF into the Pegasus schema repository and also to check syntax. 
153                   There is also a tool to extract the MOF from the repository.
154 karl     1.1      
155 karl     1.11     
156                   4. Pegasus Dependencies:
157                   =========================
158 karl     1.1      
159                   We have worked to minimize the dependence of Pegasus on other software
160 karl     1.11     packages and tools. Currently Pegasus has the following dependencies:
161 karl     1.1      
162 mike     1.7      1.  GNUMAKE - To simplify the building of Pegasus across multiple platforms we 
163                       have standardized on a set of build tools including: GNUMAKE. We are using 
164 kumpf    1.12         GNUMAKE 3.79.1 successfully both in Windows and Linux environments.
165 karl     1.1      
166 mike     1.7          GNUMAKE is available from
167 karl     1.1      
168                       http://www.gnu.org
169                   
170 mike     1.7      
171 karl     1.11     2.  MU.EXE - To minimize the difference between Linux and Windows for GNUMAKE,
172 mike     1.7          we have created a utility called MU.exe.  This utility is required for 
173 karl     1.11         Pegasus make with ONLY Windows environment. It is provided as an alternative to 
174 mike     1.7          requiring a number of UNIX utilities (SH, RM, etc.) on the windows platform
175                       and effectively provides the functions of these utilities that GNUMAKE 
176                       needs. MU is not required on UNIX or LINUX platforms.
177                   
178                       NOTE: The binary for MU.EXE is not distributed in the Pegasus bin directory.
179                       You must build it separately.  MU source code is part of the distribution
180                       in the directory src/utils/MU with its own make file.  You must compile MU
181                       before you initiate the Pegausu make.
182                   
183 karl     1.11         NOTE: A copy of the binary is made available as a zip file on the Pegasus
184                       WEB site.
185                   
186                       Again, MU is used ONLY if you are using Windows.
187                   
188 mike     1.7      
189 karl     1.11     3.  FLEX and BISON - These tools were used to develop the MOF compiler and WQL 
190                       parser. Anybody intending to recompile the compiler or parser from scratch 
191                       will be required to have these tools. They are only required if changes need 
192                       to be made to the files for parsing and compiling.
193 mike     1.7      
194                   4.  DOC++ - The Pegasus documentation is taken from a combination of text files
195                       and the Pegasus header files themselves.  This documentation is formatted 
196                       with DOC++ and GAWK.  These tools are required if the documentation is to 
197                       be recreated but we expect that only the core team will be recreating 
198                       documentaiton.
199 mike     1.3      
200 karl     1.11     
201                   5. The Pegasus Directory Structure
202                   ===================================
203 karl     1.1      
204 karl     1.4      Pegasus is distributed as a complete directory structure that should be
205 mike     1.3      installed either from one of the snapshots or from CVS.
206 karl     1.1      
207                   This structure is generally as follows
208 mike     1.3      
209 karl     1.4      Pegasus                     Pegasus Root directory
210 karl     1.5      
211                       cgi                     Source for the Pegasus WEB Based Test client
212 karl     1.11             cgi-bin             CGI Directories for WEB demonstration.
213                                                   This directory is normally empty but can
214                                                   be populated from the runtime with the make
215                                                   from cgi.
216                           htdocs              HTML Pages for Pegasus WEB emonstration
217 karl     1.5          doc                     Miscellaneous Pegasus Documents.
218 karl     1.11         DevManual               Source and build files for developers' manual
219 karl     1.4          mak                     General make files (used by other makes)
220 karl     1.1          src                     All Pegasus Source Files
221 karl     1.14             ACEExample          Test directrory with examples of the use of ACE (obsolete). 
222 karl     1.11             Clients             Source for various test clients and client SDK
223 karl     1.4                  CGICLIENT       Pegasus test client that uses a WEB browser
224 karl     1.14             JAVA                Java Client support modules
225 karl     1.1              Pegasus
226 karl     1.4                  Client          Pegasus Client API Tests
227 karl     1.1                      depends
228                                   tests
229                               Common          Pegasus Common Functions (C++ source and headers
230                                   tests       Test programs for the common functions
231 karl     1.14                 Compiler        Pegasus MOF compiler
232                               Config          TBD
233                               Consumer        TBD
234                               ControlProvidersImplementation of Pegasus internal providers
235                               ExportClient    TBD
236                               ExportServer    TBD
237                               Handler         TBD
238                               HandlerService  TBD
239                               IndicationService TBD
240                               Listener        TBD
241 karl     1.1                  Protocol        Pegasus Client HTTP/XML Protocol Modules
242                                   depends
243 karl     1.11                 Provider        Pegasus Provider interface functions
244 karl     1.14                 ProviderManager Provider Manager service that manages providers
245                               ProviderManager2Pluggable Provider Manager service
246 karl     1.11                 Repository      Pegasus Repository Interfaces and Simple Repository
247 karl     1.1                      tests       Tests for Repository Functions
248 karl     1.14                 Security        TBD
249 karl     1.1                  Server          Pegasus Server Modules
250 karl     1.14                 WQL             TBD
251 karl     1.11             Providers           Pegasus test and required providers
252 karl     1.14                 generic         TBD this and following
253                               IndicationConsumer
254                               Linux
255                               ManaedSystem
256                               slp
257                               statistic
258                               sample
259                               testproviders
260                               
261                           Server              Pegasus executable build
262                           slp
263                           StandardIncludes
264                           tools               MU and other utilities written for Pegasus support
265                           Unsupported         Code that is made available but is not supported or included
266                                               in the normal make.
267                           WMIMapper           Pegasus implementation that implements mapping to Microsoft
268                                               WMI objects.
269 karl     1.5      
270                   Runtime Directories
271 karl     1.11          $PEGASUS_HOME$         Home directory for runtime.  All compiler, linker
272 karl     1.5                                  documentation creation, etc. is put here.
273 karl     1.11          bin                    Destination for executable and DLL modules from
274                                                   Pegasus build
275                        Manual                 HTML output of the Pegasus Manual
276                        lib                    Destination for Pegasus LIB modules
277                        obj                    Destination for object modules
278                        repository             This Directory contains the created repository
279 karl     1.5      
280 karl     1.1      
281 karl     1.11     6. Installation
282                   ================
283 karl     1.1      
284 karl     1.11     Pegasus today is provided only as a source distribution. 
285 karl     1.1      
286 karl     1.11     To install Pegasus, you must check it out using CVS (Common Version System)
287                   or download the snapshot. You download, compile, and use it. 
288                   
289                   For the snapshot, the installation of Pegasus involves expanding the snapshot 
290                   distribution files, building the runtime, the test files and test clients, and 
291                   building the repository.
292 karl     1.1      
293 karl     1.4      
294 karl     1.11     7. Building Pegasus
295                   =====================
296 mike     1.7      
297                   1.  Check that you have requisite programs (listed in Pegasus Dependencies).
298                   
299 karl     1.11         These include GNU Make, MU.EXE (if using Windows), Flex, and Bison (Flex 
300                       and Bison only required if changes will be made to the MOF compiler or WQL 
301                       parser).
302 mike     1.7      
303                       Be sure these are on your path.
304                   
305 karl     1.11     
306                   2.  Define the following three environment variables:
307                   
308                       PEGASUS_ROOT - this should be the "pegasus" directory you've pulled from CVS
309 mike     1.7      
310                       PEGASUS_HOME - to point to a directory to contain output binary files
311 karl     1.11         (e.g., set it to $HOME/pegasus_home). Then the output will go into
312                       $HOME/pegasus_home/bin and $HOME/pegasus_home/lib
313 mike     1.7      
314                       PEGASUS_PLATFORM - this must be set to a supported platform identifier.
315                   
316 karl     1.11         This identifier has the following form:
317                   
318                   		 <Operating-System>_<Architecture>_<Compiler>
319 mike     1.7      
320 karl     1.11         For example (Linux on IA32 platform using the GNU Compiler):
321                                    LINUX_IX86_GNU
322                   
323                       For a complete list, refer to the platform_ make files found in directory 
324                       pegasus/mak
325 mike     1.7      
326                   
327                       Note: if you plan on doing parallel builds, you might consider setting
328                       PEGASUS_HOME to something like this:
329                   
330 karl     1.11     		 $HOME/pegasus_home_LINUX_IX86_GNU
331 mike     1.7      
332                       That way, the output of each build will be placed in its own directory.
333                   
334                   3.  Now place $PEGASUS_HOME/bin on your path
335                   
336                       and
337                   
338 karl     1.11         Place $PEGASUS_HOME/lib on your LD_LIBRARY_PATH (for Unix only).
339                       For RedHat/SuSE/UL, edit /etc/ld.so.conf and add $PEGASUS_HOME/lib
340 mike     1.7      
341 karl     1.11     4.  Change to the root of the Pegasus distrubution and type "make"
342                       (where make refers to GNU make).
343 karl     1.1      
344 karl     1.11     5.  Then create the repository, which is needed to serve data.
345 mike     1.9          "make repository"
346                   
347                   6.  To test the build type "make tests".
348 karl     1.1      
349 mike     1.7      The following make targets are supported:
350 karl     1.1      
351 mike     1.7          <default> - Build everything.
352                       clean - Clean out all objects, libs, and executables.
353                       depend - Create the dependencies.
354 mike     1.9          repository - Create the repository in $PEGASUS_HOME/repository
355 mike     1.7          tests  - Execute all tests (except client server tests).
356                       rebuild - clean, depend, <default>
357                       world - depend, <default>
358 karl     1.1      
359 karl     1.4      The Pegasus Client server tests are executed separately from the above because
360                   they require the initiation of separate process for the Pegasus server and
361 karl     1.11     Pegasus client. To execute these tests please refer to the scripts in 
362                   pegasus/mak/BuildMakefile - refer to the prestarttests and poststarttests.
363 karl     1.1      
364 karl     1.4      For information on particular installation characteristics, tools, etc. for
365 karl     1.6      each platform see the appropriate sections below:
366 karl     1.1      
367                   Generally the build commands are as follows:
368                   
369 karl     1.6          1. There is a Makefile in the Pegasus root directory.   Simply executing
370 karl     1.11         make in the Pegasus root directory will make everything. "make rebuild"
371 karl     1.6          will clean and rebuild everything. The "make rebuild" will also populate
372                       the repository with the current CIM Schemas.
373 karl     1.1      
374 karl     1.6          2. To test a fresh release, go to the pegasus root and type
375 karl     1.1      
376 karl     1.11     		 		 "make world".
377 karl     1.1      
378                   
379 karl     1.6          This will build dependencies, build binaries, and then run all
380 karl     1.4          tests except the Client/Server tests.
381 karl     1.1      
382 karl     1.6          3. To execute the basic test suite that is shipped with pegasus type
383 karl     1.1      
384 karl     1.11     		    "make tests". This also reintalls the repository.
385 karl     1.1      
386 karl     1.4          Running "make -s tests" suppresses extraneous output such as the
387                       enter/leave directory messages.
388 karl     1.1      
389 karl     1.11         4. "make clean" removes all object and library files from the structure.
390                   
391                   
392                       5. A new build system has been added to Pegasus where a new CVS checkout is done,
393                          built, and tests are run. Do it by: "make -f mak/BuildMakefile cleanbuild"
394                   
395                   
396                   8. Populate the Repository
397                   ===========================
398                   
399                   Before using Pegasus you must populate the repository with the providers. The makefile 
400                   does it all for you, but in case you are wondering what it does or how to do it 
401                   manually:
402                   
403                   1. Register the MOF (Managed Object Format) file describing the skeleton of the object.
404                   2. Register a second MOF which only points out which lib*.so file to be loaded when a 
405                      specific object is activated.
406                   
407                   This is done automatically for the providers included in Pegasus by doing:
408                   make repository.
409                   
410 karl     1.11     The 'make repository' in pegasus/Schemas does three things
411                   Runs MOF compiler (cimmofl) on:
412                   -Schema v2.7
413                       Generates the CIM Schema v2.7 in the repository  (skeleton of CIM objects)
414                   -PG_InterOp
415                       Internal to Pegasus schema for operating (shutdown, add users, etc)
416                       CIM_Indication’s (SNMP, Events, Alert, Threshold, etc)
417                   -PG_ManagedSystem
418                       Registers included CIM Providers (libOSProvider.so, libDNSProvider.so, … ) 
419                       in Pegasus (which are located in src/Providers)
420                   
421                   For more information about using the MOF compiler, refer to user's manual on the 
422                   openpegasus.org.  
423 karl     1.1      
424 karl     1.11     
425                   9. The MU Utility
426                   ===================
427 karl     1.1      
428 karl     1.4      In order to provide a consistent build structure across multiple platforms, we
429                   developed a small utility to provide a consistent set of small utilities
430                   across these platforms. The MU utilityis a simple utility that contains many
431                   commands. For example:
432 karl     1.1      
433                   
434                       C:\> mu rm myfile.cpp yourfile.cpp
435                   
436                   
437                   You may type "mu" to get a list of valid commands. Here are some
438                   of them:
439                   
440                   
441 karl     1.2          rm, rmdirhier, mkdirhier, echo, touch, pwd, copy, move, compare depend
442 karl     1.1      
443                   
444                   The MU utility supports globing (expansion of wildcards) so
445                   you can do things like this:
446                   
447                   
448                       C:\> mu rm *.obj *.exe
449                   
450 karl     1.4      MU is required to build under the Windows environment.MU is available as part
451                   of the distribution of Pegasus.
452 karl     1.1      
453                   
454 karl     1.11     10. Notes about Building Pegasus on Linux
455                   ===========================================
456                   
457                   No problem. Just make sure you have the environment variables set.
458                   
459 karl     1.1      
460 karl     1.11     11. Notes about Building Pegasus with SSL
461                   ==========================================
462 karl     1.1      
463 karl     1.11     To build with SSL you need the OpenSSL libraries and header files. Make sure 
464                   you have them in a standard directory so Pegasus can find them. If that's not 
465                   the case, set the environment varialble OPENSSL_HOME= to point where your OpenSSL
466                   installation is.
467                   
468                   Also have the PEGASUS_HAS_SSL=yes variable set. Then just run 'make' in Pegasus
469                   directory and you will have Pegasus with SSL enabled. See section "Creating SSL 
470                   certificates" for more information of how to use SSL.
471                   
472                   
473                   12. Building Pegasus on Windows 2000 (SP3 or later recommended) or Windows XP
474                       With Microsoft Visual C++
475                   ======================================================================
476                   
477                   Today we build Pegasus on Windows using a set of make files contained
478                   in the source distribution, the Microsoft compilers (DevStudio 5.x is not 
479                   supported, Visual Studio 6.0, SP5 supported) and the GNUMAKE make utility.The 
480                   following is the basic setup steps for the environment.
481                   
482                    
483                   Setup the environment variables and path for the Micrososft Visual C compiler. 
484 karl     1.11     Typically this can be done by running the VCVARS32.BAT file supplied with 
485                   Microsoft Visual C++. (contained in the same directory as cl.exe).
486                   
487                   For Windows, try the following for an example environment:
488                   
489                       REM call the standard Microsoft .bat for VC 6 setup. 
490                       call 'C:/Program Files/Microsoft Visual Studio/VC98/Bin/Vcvars32.bat' 
491                       REM Set debug to something if you want compile in debug mode 
492                       set PEGASUS_DEBUG=true 
493                       REM set PEGASUS_ROOT to top of source tree 
494                       set PEGASUS_ROOT=C:/cimom/pegasus 
495                       REM set PEGASUS_HOME to where you want repository and executables
496                       set PEGASUS_HOME=%PEGASUS_ROOT% 
497                       REM setup the path to the runtime files. 
498                       set path=%path%;%PEGASUS_HOME%/bin 
499 karl     1.1      
500 karl     1.11     13. Installing the Pegasus HTML Test Client:
501                   =============================================
502 karl     1.1      
503 karl     1.4      This is a separate test tool that allows Pegasus requests to be initiated from
504                   any WEB browser and that uses a WEB browser, CGI scritps and HTML pages for
505                   the formating and connections. It requires a WEB server, etc.  The
506                   instructions for setting up this environment are maintained in a separate
507                   readme in the CGI directory.
508 karl     1.1      
509 karl     1.11     
510                   14. Development with Pegasus and Pegasus Tools:
511                   ================================================
512 karl     1.1      
513                   ATTN: This section needs to be completed.  It should reference the more
514                   complete documentation
515 karl     1.11     ATTN: Write about providers?
516 karl     1.1      
517 karl     1.11     
518                   15. Commands:
519                   =============
520                   
521                   The manpages for each of the commands are in rpm/manLinux/man1.Z directory (on CVS)
522                   
523                   To see simple help for each of the commands, use the "-h" flag.
524                   Examples:
525                   bin/cimserver –s (Shuts it down)
526                   bin/cimserver traceLevel=4 traceComponents=ALL (starts server with config flags)
527                   bin/cimprovider –l –s (lists providers and their status)
528                   bin/cimprovider –e –m OperatingSystemModule (enables the OperatingSystem provider)
529                   bin/cimuser –a –u guest –w ThePassword
530                   bin/cimuser –l (lists the users)
531                   bin/tomof CIM_Config (extract CIM_Config from repository and present it in MOF type)
532                   
533                   
534                   16. Creating SSL certifications
535                   ================================
536                   
537 konrad.r 1.16.2.1 Please follow section 11, titled "Notes about Building Pegasus with SSL" 
538                   before embarking on this endeavour.
539                   
540 karl     1.11     Type these commands in your shell to create the SSL certifications. The PEGASUS_ROOT 
541                   and PEGASUS_HOME have to be set to your respective installation and source directory. 
542                   
543                   CN="Common Name"
544                   EMAIL="test@email.address"
545                   HOSTNAME=`uname -n`
546                   sed -e "s/$CN/$HOSTNAME/"  \
547 konrad.r 1.16         -e "s/$EMAIL/root@$HOSTNAME/" $PEGASUS_ROOT/src/Server/ssl.cnf \
548 karl     1.11         > $PEGASUS_HOME/ssl.cnf
549                   chmod 644 $PEGASUS_HOME/ssl.cnf
550                   chown bin $PEGASUS_HOME/ssl.cnf
551                   chgrp bin $PEGASUS_HOME/ssl.cnf
552                   
553                   /usr/bin/openssl req -x509 -days 365 -newkey rsa:512 \
554                    -nodes -config $PEGASUS_HOME/ssl.cnf \
555                      -keyout $PEGASUS_HOME/key.pem -out $PEGASUS_HOME/cert.pem 
556                   
557                   cat $PEGASUS_HOME/key.pem $PEGASUS_HOME/cert.pem > $PEGASUS_HOME/server.pem
558 konrad.r 1.16     cp $PEGASUS_HOME/cert.pem $PEGASUS_HOME/client.pem
559 karl     1.11     rm $PEGASUS_HOME/key.pem $PEGASUS_HOME/cert.pem
560                   
561 konrad.r 1.16.2.1 17. Configuring Pegasus to use SSL
562                   ================================
563                   
564                   Please follow section 11 and 16 before reading this section.
565                   
566                   To configure Pegasus to take advantage of SSL, configure
567                   cimserver_planned.conf to have:
568                   
569                   	sslTrustFilePath=client.pem
570                   	sslCertificateFilePath=server.pem
571                   	sslKeyFilePath=file.pem
572                   	httpsPort=5989
573                   	enableHttpsConnection=true
574                   
575                   (The client.pem and server.pem are the certifications
576                   files created per the steps in the earlier section).
577                   
578                   For good riddance you might consider closing down
579                   the cleartext 5988 port. Modify your cimserver_planned.conf
580                   to include:
581                   
582 konrad.r 1.16.2.1 	enableHttpConnection=false
583                   
584                   18. Testing with ICU enabled:
585 humberto 1.13     ==============================
586 karl     1.11     
587 humberto 1.13     ICU (International Compoments for Unicode) refers to the set of libraries that
588                   Pegasus uses to run globalized.  For example: these libraries are used to
589                   load messages in different languages, format currency and numbers according to
590                   a specific locale etc.  In order to enable globalization in Pegasus, Pegasus
591                   must be built with ICU enabled, ie. the right environment variables must be
592                   set prior to running "make". Refer to the GlobalizationHOWTO.htm in the docs
593                   directory for details.  That said, when users run "make poststarttests" 
594                   to verify the integrity of a Pegasus download, a series of tests are run that 
595                   require the cimserver to be running. These tests currently depend on specific 
596                   messages returned from the server. When ICU is enabled, all messages come 
597                   from the resource bundles and these usually do not match the hardcoded 
598                   default messages within Pegasus.  These hardcoded default messages 
599                   are what the various test programs expect in order to complete 
600                   successfully.  If the ICU enabled server is started without
601                   disabling message loading from the bundles, "make poststartests" will fail.
602                   In order to run "make poststarttests" successfully with ICU enabled, an
603                   environment variable called PEGASUS_USE_DEFAULT_MESSAGES must exist prior to
604                   starting the server.  Once this is defined, when the cimserver starts, all
605                   messages generated will be the default hardcoded messages.  This will enable
606                   "make poststarttests" to complete successfully.  Once "make poststarttests" is
607                   complete, you should stop the cimserver and then undefine PEGASUS_USE_DEFAULT_MESSAGES. 
608 humberto 1.13     If this variable is left defined, Pegasus will not be able to load messages
609                   using ICU resource bundles. 
610                   
611 konrad.r 1.16.2.1 19. Documentation:
612 karl     1.11     ===================
613 karl     1.1      
614 karl     1.4      The documentation is currently in preperation. The preliminary documentation
615                   is not provided with this snapshot but is avialable from the OpenGroup Pegasus
616                   WEB pages. The current documentation is maintained both as a manual created
617 karl     1.5      under the tool DOC++ in the runtime subdirectory manual/html and as other
618                   miscelaneous documentation in the doc directory.
619 karl     1.4      
620                   Note that the Pegasus WEB site at The Open Group will be the source of most
621                   documentation in the future and today is the source of most discussion and
622                   design documentation.
623 karl     1.1      
624 karl     1.11     
625 konrad.r 1.16.2.1 20. Participate!
626 karl     1.11     =================
627 mike     1.7      
628 karl     1.4      We are looking for people who want to join the Pegasus work group and
629 karl     1.11     contribute to effort of getting this Pegasus off the ground. Please join 
630                   the mailing list by visiting www.openpegasus.org, and click on Mailing Lists.

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2