Content libraries are container objects for VM templates, vApp templates, and other types of files. vSphere administrators can use the templates in the library to deploy virtual machines and vApps in the vSphere inventory. Sharing templates and files across multiple vCenter Server instances in same or different locations brings out consistency, compliance, efficiency, and automation in deploying workloads at scale.

You create and manage a content library from a single vCenter Server instance, but you can share the library items to other vCenter Server instances if HTTP(S) traffic is allowed between them.

If a published and a subscribed library belong to vCenter Server systems that are in the same vCenter Single Sign-On domain, and both the libraries use datastores as backing storage, you can take advantage of optimized transfer speed for synchronization between these libraries. The transfer speed optimization is made possible if the libraries can store their contents to datastores managed by ESXi hosts that are directly connected to each other. Therefore the synchronization between the libraries is handled by a direct ESXi host to ESXi host transfer. If the datastores have VMware vSphere Storage APIs - Array Integration (VAAI) enabled, the library content synchronization between the published and the subscribed library is further optimized. In this case the contents are synchronized by a direct datastore to datastore transfer.

Each VM template, vApp template, or another type of file in a library is a library item. An item can contain a single file or multiple files. In the case of VM and vApp templates, each item contains multiple files. For example, because an OVF template is a set of multiple files, when you upload an OVF template to the library, you actually upload all the files associated with the template (.ovf, .vmdk, and .mf), but in the vSphere Web Client you see listing only of the .ovf file in the content library.

You can create two types of libraries: local or subscribed library.

Local Libraries

You use a local library to store items in a single vCenter Server instance. You can publish the local library so that users from other vCenter Server systems can subscribe to it. When you publish a content library externally, you can configure a password for authentication.

VM templates and vApps templates are stored as OVF file formats in the content library. You can also upload other file types, such as ISO images, text files, and so on, in a content library.

Subscribed Libraries

You subscribe to a published library by creating a subscribed library. You can create the subscribed library in the same vCenter Server instance where the published library is, or in a different vCenter Server system. In the Create Library wizard you have the option to download all the contents of the published library immediately after the subscribed library is created, or to download only metadata for the items from the published library and later to download the full content of only the items you intend to use.

To ensure the contents of a subscribed library are up-to-date, the subscribed library automatically synchronizes to the source published library on regular intervals. You can also manually synchronize subscribed libraries.

You can use the option to download content from the source published library immediately or only when needed to manage your storage space.

Synchronization of a subscribed library that is set with the option to download all the contents of the published library immediately, synchronizes both the item metadata and the item contents. During the synchronisation the library items that are new for the subscribed library are fully downloaded to the storage location of the subscribed library.

Synchronization of a subscribed library that is set with the option to download contents only when needed synchronizes only the metadata for the library items from the published library, and does not download the contents of the items. This saves storage space. If you need to use a library item you need to synchronize that item. After you are done using the item, you can delete the item contents to free space on the storage. For subscribed libraries that are set with the option to download contents only when needed, synchronizing the subscribed library downloads only the metadata of all the items in the source published library, while synchronizing a library item downloads the full content of that item to your storage.

If you use a subscribed library, you can only utilize the content, but cannot contribute with content. Only the administrator of the published library can manage the templates and files.

Table 1. Source Objects to Which You Can Subscribe By Creating a Subscribed Library in The vSphere Web Client.
Source Object Create a subscribed library in the vSphere Web Client by using the option to Download all library content immediately Create a subscribed library in the vSphere Web Client by using the option to Download library content only when needed
A library running in a vCenter Server 6.0 instance. Supported Supported
A catalog running in a vCloud Director 5.5 instance. Supported Not supported
A third-party library. Supported for third-party libraries that require authentication, if the username of the third-party library is vcsp. If the username of the source third-party library is different than vcsp, you can subscribe to it by using VMware vCloud Suite API. Supported for third-party libraries that require authentication, if the username of the third-party library is vcsp. If the username of the source third-party library is different than vcsp, you can subscribe to it by using VMware vCloud Suite API.

Libraries store content on a file system or a datastore. To ensure optimal performance, use file systems for libraries that are published, and use datastores for local and subscribed libraries.