This chapter discusses some of the issues that need to be addressed when building an Oracle instance for the Spacewalk Server. Specifically, it will discuss the growth needs of certain data sets, and will recommend strategies for building tablespaces that scale with the expanding data. For reference, Spacewalk Server supports Oracle 8i and 9i.
To address scalability issues, the Spacewalk Server schema installation procedure provides the capacity to place different tables into different tablespaces. In this section, we provide some guidelines for tablespace creation, and how to reference these tables in the configuration files.
Spacewalk Server defines different tablespaces for one simple reason: some of the tables and indices used by Spacewalk Server can grow to very large sizes. Our experience in managing these large tables has given us a good idea of which tables grow quickly, and which tables do not grow as quickly. The larger tables and indices are generally segregated into their own tablespaces, improving both performance and ease of management.
Create a default tablespace for the user who will be using Spacewalk Server.
Edit /etc/sysconfig/rhn-satellite-schema/satellite.satcon.dict and specify the name of this default tablespace everywhere.
The RHN schema definitions are set up to use from one to nine tablespaces, to be determined according to expected load. As usual with an Oracle database, your database administrator can move tables and indices between databases after initial installation.
The rhn-satellite-schema RPM provides a file called satellite.satcon.dict in the directory /etc/sysconfig/rhn-satellite-schema/. That file serves as a map of symbolic names used in the schema definition to tablespace names that your DBA should determine.
There are two recommended configurations: small and large. For small installations (installations supporting less than 5000 systems in the next two years), we recommend two tablespaces: one for tables and one for indices. satellite.satcon.dict in this case will look approximately like this:
main_tablespace=rhn_tbs server_package_tablespace=rhn_tbs 64k_tbs=rhn_ind 2m_tbs=rhn_ind 4m_tbs=rhn_ind 8m_tbs=rhn_ind 16m_tbs=rhn_ind 32m_tbs=rhn_ind 128m_tbs=rhn_ind |
For large installations, we recommend that each symbolic name map to its own tablespace. The numbered tablespaces do not necessarily need to correlate directly with the size, although the names are indicative of expected proportions. In this case, satellite.satcon.dict will look approximately like this:
main_tablespace=rhn_tbs server_package_tablespace=rhn_tbs_02 64k_tbs=rhn_ind_64k 2m_tbs=rhn_ind_2m 4m_tbs=rhn_ind_4m 8m_tbs=rhn_ind_8m 16m_tbs=rhn_ind_16m 32m_tbs=rhn_ind_32m 128m_tbs=rhn_ind_128m |
When the satellite configuration script runs, the values specified here will be plugged into the schema creation scripts that are kicked off by universe.satellite.sql.
![]() |
Home |
![]() |
Automating Synchronization | Troubleshooting |