In a recent blog post, we covered Creating and Using Content Library in vSphere 6.7. Continuing along that path we will go over subscribing to a publisher Content Library to access shared content. When you create a subscription for a local Content Library, the result is a Subscribed Library. Subscribed library content is distributed when the subscriber synchronizes, or when an administrator of the local Content Library publishes the items to one or more subscribed content libraries.
For example, you can publish some or all library items. You can also publish content to selected subscribers or to all subscribed libraries. Note: Publishing content is possible only from an on-premises publisher to a cloud subscriber, and not in the reverse scenario. Please review the VMware Cloud on AWS documentation for more information.
Subscribing to a Content Library
Before gaining access to the contents of a library (ISOs, Scripts, VM Templates, etc), we need to subscribe to the library containing the content. It is also important to note that you cannot upload/import items into a subscribed library. Subscribers only use the content in the published library it’s synchronizing from.
The administrator performing this action will also need proper privileges to create a content library on vCenter Server. Either by using the Content library administrator built-in role or by creating a new role and applying the required permissions.
We can begin this task the same as we did when making a new library via the New Content Library wizard. Be sure to name and describe the new Subscriber Library, click Next to continue.
Step 2 of the wizard allows for the configuration of the Content Library.
This is where we choose the option Subscribed content library to open the Subscription URL field.
The Subscription URL is needed from the Publisher Library that the new library will synchronize its contents from. To get the URL of the publisher library, open Content Library to the Summary screen of the publisher. Under Publication, a simple click on COPY LINK will do just that so the URL can be pasted into the wizard next.
Back over on the Configure content library section of the wizard, paste the Subscription URL into the field. There is an option to Enable authentication as well as a method to download content from the publisher library, immediately or when needed. If authentication is enabled, a password can be set to allow user authentication for accessing the content library.
As for choosing a download content method, consider the following:
- If it’s required to store a local copy of all the items in the published library immediately after subscribing to it, select immediately.
- If it’s required to save storage space, select when needed. When selected, only the metadata for the items in the published library are downloaded.
Once any further choices are made in relation to authentication or content downloads, click NEXT to continue.
Accept the SSL Thumbprint from the content library’s certificate by clicking YES.
Choose a datastore that will be used, click Next to continue.
Review the details of the Content Library setup, then click Finish to complete.
By navigating back to the Content Libraries screen, we can see that the new subscriber library has been added. You will notice that the library Type is set to Subscribed and Publishing Enabled is set to No. Also because we did not set an authentication method on this library, the Password Protected column is set to No.
Subscribing via PowerCLI
Could we do this via PowerCLI with those new Content Library cmdlets Kyle Ruddy recently spoke of? Yes, of course, we can and we will.
I’ll be using the New-ContentLibrary cmdlet included in PowerCLI 11.5 to create a subscribed content library. To begin we will need a few details prior to creating the new Subscribed Library.
- Name
- Description (optional)
- Datastore name
- Subscription URL (of the published library)
Using the code below we can quickly complete the setup of the Subscribed Library via PowerCLI.
1 2 3 4 5 6 7 8 |
$localContentLibrary = Get-ContentLibrary -Name 'Houston Publisher' -Local $SubscriberLibraryInput = @{ Name = "Subscribed Content Library" Description = "This is my Subscriber Library" Datastore = Get-Datastore -Name "vsanDatastore_HOU" SubscriptionUrl = $localContentLibrary.PublishUrl } New-ContentLibrary @SubscriberLibraryInput |
Closing
In this post, we covered how to create a subscription to a Published Library so library contents could be shared in the datacenter. We also discussed setting the correct permissions for the Content Library administrator to allow the creation and subscription to a publisher library. Last, we showed how to perform these steps via the vSphere Client as well as how to perform the same actions with PowerCLI 11.5.
To learn more about Content Library, please review these resources:
- Creating and Using Content Library
- What’s New for Content Library Management
- Creating a Content Library (vSphere 6.7 Walkthrough)
- Using Content Library to Sync VM Templates (vSphere 6.7 Walkthrough)
- Content Library Privileges
- Content Library Management with PowerCLI 11.5
Take our vSphere 6.7: Getting Started Hands-On Lab here, and our vSphere 6.7: Advanced Topics Hands-On Lab here!