Administer > Satellite administration > Managing the satellite software repository cache > Updating software in the satellite software repository cache

Updating software in the satellite software repository cache

To update files in a Satellite’s Software Repository Cache, you can configure the cache to update cached copies of files as requests are received (On-demand Updates) or to update the cached copy of a file manually (Manual Updates):

On-demand Update: The local Software Repository Cache obtains current files as needed from the Software Repository in the SA core.

Manual Update: SA stages the software packages to a Satellite's Software Repository Cache in advance of package installation, so that performance is about the same as if the Managed Server is in the same data center as the core.

When On-demand update is enabled, if the requested software is already present in the local Software Repository Cache and is current, no action is taken. If the software is not present locally or it is not current, the Software Repository Cache attempts to download the file in the background from the closest upstream Software Repository Cache or from the Core’s Software Repository.

If the caching policy is Manual Update and you request an on-demand software update, the Software Repository Cache will raise a wordbot.unableToCacheFile exception.

It is always possible to stage a file on a Software Repository Cache regardless of the caching policy. See Staging files to a software repository cache.

The following figure illustrates the logic that the Software Repository Cache uses to update packages in a Satellite.

Setting the software repository cache update policy

You can specify the Software Repository Cache update policy for each facility by performing the following tasks:

  1. Select the Administration tab in the SA Client.
  2. In the navigation pane select System Configuration > Configuration Parameters. This displays the SA components, facilities, and realms that have system configuration parameters.
  3. Select the realm for which you want to set the software repository cache update policy. This displays all the system configurations for that realm.
  4. Locate the configuration parameter word.caching_policy.
  5. Set the value of this parameter to one of the following:
    • Select Default value: JIT. This specifies JIT or on-demand update.
    • Select the new value button and enter the text “SNEAKERNET in the edit field. This specifies manual update.
  6. Select the Revert button to discard your changes or the Save button to save your changes.

On-demand updates

Enabling on-demand updates allows software to be downloaded to the Satellite Software Repository Cache as soon as that software is requested and when it is not yet locally available. If you have a low-bandwidth network connection, manual updates may be a better solution, as it allows you to pre-download the most commonly requested software into the Software Repository Cache. See Manual updates.

Each time a Server Agent on a managed server in a Satellite requests software, the local Software Repository Cache checks whether its cached copy of the software is current. If the cached file is not current or is missing, the Software Repository Cache obtains an updated or new local copy of the file from the nearest upstream Software Repository Cache or from the Core’s Software Repository and sends it to the requesting Server Agent.

When configured for on-demand updates, when the Software Repository Cache receives a request for software, it first requests the checksum of the software against the checksum of the Core’s Software Repository to insure that it has the latest copy.

For security purposes, SA caches software checksums for a user-configurable period of time.

If the checksum is the same as the locally stored file, the Software Repository Cache serves the software to the requester. If the checksum does not match or the local file is not present, the Software Repository Cache requests an updated copy of the software from the nearest upstream Software Repository Cache or the Core’s Software Repository.

If network connectivity is lost while the Software Repository Cache is downloading software, the next time a Server Agent requests the same software, the Software Repository Cache will resume the file download from the point at which it stopped.

Manual updates

For Satellites with low-bandwidth network links, Manual Software Repository Cache updates allow you to pre-populate the Software Repository Cache at installation time. You can also configure refreshes for an existing cache. The Software Repository Cache is populated by an out-of-band method, such as by cutting CDs of the required packages and shipping them to the Satellite. To perform manual updates, use the SA DCML Exchange Tool (DET) to copy existing packages from an SA core or use the Staging Utility to perform the update. See Creating software repository cache manual updates and Staging files to a software repository cache.

When configured for manual updates, a Software Repository Cache does not communicate with upstream Software Repository Caches or the Core’s Software Repository until you initiate an update. The Satellite considers its own Software Repository Cache as authoritative.

If the caching policy is manual update and you request an on-demand software update, the Software Repository Cache will raise a wordbot.unableToCacheFile exception.

Even if you have configured a Software Repository as on-demand update, you can apply a manual update regardless of its update policy.

When applying manual updates in a Satellite installation with multiple Software Repository Caches, you must apply the update to each Software Repository Cache in the Satellite. Otherwise, when performing operations that retrieve files from the Cache (for example, when installing software on a server in the affected Satellite), you may get the wordbot.unableToCache file error.

Emergency software repository cache updates

You can push Emergency updates manually over the network to Satellites even if the caching policy is manual update. You do not need to reconfigure the Software Repository Cache’s caching policy to push emergency updates to a Software Repository Cache. For example, an emergency patch can be staged to a Satellite and applied without waiting for a shipment of CDs to arrive.

Managing the size of the software repository cache

When you apply a manual update to a Software Repository Cache, SA removes files that have not been recently accessed when the cache size limit is exceeded.

The least-recently accessed packages are deleted first.

The Software Repository Cache removes the files the next time it cleans up its cache. By default, the cache is cleaned up every 12 hours. Packages are deleted so that the available disk space stays below the high-water mark.

You must have enough disk space to store all necessary packages for the Software Repository Cache to ensure that the Software Repository Cache does not exceed the cache size limit.