Skip to content
16 changes: 12 additions & 4 deletions guides/common/assembly_managing-alternate-content-sources.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,20 @@

include::modules/con_managing-alternate-content-sources.adoc[]

include::modules/proc_configuring-custom-alternate-content-sources.adoc[leveloffset=+1]
include::modules/proc_creating-custom-alternate-content-sources-by-using-web-ui.adoc[leveloffset=+1]

include::modules/proc_configuring-simplified-alternate-content-sources.adoc[leveloffset=+1]
include::modules/proc_creating-custom-alternate-content-sources-by-using-cli.adoc[leveloffset=+1]

include::modules/proc_creating-simplified-alternate-content-sources-by-using-web-ui.adoc[leveloffset=+1]

include::modules/proc_creating-simplified-alternate-content-sources-by-using-cli.adoc[leveloffset=+1]

ifdef::satellite[]
include::modules/proc_synchronizing-smart-proxy-directly-from-red-hat-cdn.adoc[leveloffset=+2]
include::modules/proc_synchronizing-smart-proxy-directly-from-red-hat-cdn-by-using-web-ui.adoc[leveloffset=+1]
endif::[]

include::modules/proc_configuring-rhui-alternate-content-sources.adoc[leveloffset=+1]
include::modules/proc_creating-rhui-alternate-content-sources-by-using-web-ui.adoc[leveloffset=+1]

include::modules/proc_creating-rhui-alternate-content-sources-by-using-cli.adoc[leveloffset=+1]

include::modules/ref_permissions-required-to-manage-alternate-content-sources.adoc[leveloffset=+1]
34 changes: 10 additions & 24 deletions guides/common/modules/con_managing-alternate-content-sources.adoc
Original file line number Diff line number Diff line change
@@ -1,15 +1,17 @@
:_mod-docs-content-type: CONCEPT

[id="Managing_Alternate_Content_Sources_{context}"]
[id="managing-alternate-content-sources"]
= Managing alternate content sources

Alternate content sources define alternate paths to download content during synchronization.
[role="_abstract"]
Alternate content sources (ACS) define alternate paths to download content during synchronization.
The content itself is downloaded from the alternate content source, while the metadata is downloaded from the {ProjectServer} or the upstream URL, depending on the configuration.
You can use alternate content source to speed up synchronization if the content is located on the local filesystem or on a nearby network.
You can set up alternate content sources for {ProjectServer} and {SmartProxy}.
You can use alternate content sources to speed up synchronization if the content is located on the local filesystem or on a nearby network.
You can set up alternate content sources for {ProjectServer} and {SmartProxyServers}.

You must refresh the alternate content source after creation or after making any changes.
A weekly cron job refreshes all alternate content sources.
You can also refresh the alternate content sources manually by using the {ProjectWebUI} or the Hammer CLI.
You can also refresh the alternate content sources manually by using the {ProjectWebUI} or Hammer CLI.
Alternate content sources associated with your {ProjectServer}, or {SmartProxyServers} attached to multiple organizations, affect all organizations.

There are three types of alternate content sources:
Expand All @@ -19,31 +21,15 @@ Custom alternate content sources download the content from any upstream reposito

Simplified::
Simplified alternate content sources copy the upstream repository information from your {ProjectServer} for the selected products.
Simplified alternate content sources are ideal for situations where the connection from your {SmartProxy} to the upstream repo is faster than from your {ProjectServer}.
Simplified alternate content sources are ideal for situations where the connection from your {SmartProxyServer} to the upstream repository is faster than to your {ProjectServer}.
ifdef::satellite[]
Selecting the Red Hat products when creating a simplified alternate content source will download the content to the {SmartProxies} from the {Team} CDN.
Selecting the Red{nbsp}Hat products when creating a simplified alternate content source will download the content to the {SmartProxyservers} from the Red{nbsp}Hat CDN.
endif::[]

RHUI::
RHUI alternate content sources download content from a Red Hat Update Infrastructure server.
RHUI alternate content sources download content from a Red{nbsp}Hat Update Infrastructure (RHUI) server.
{ProjectWebUI} provides examples to help you find the network paths and to import authentication credentials.
ifdef::satellite[]
The RHUI alternate content source must be RHUI version 4 or greater and use the default installation configuration.
For example, AWS RHUI is unsupported because it uses an installation scenario with unique authentication requirements.
endif::[]

.Permission requirements for alternate content sources

Non-administrator users must have the below permissions to manage alternate content sources:

. `view_smart_proxies`
. `view_content_credentials`
. `view_organizations`
. `view_products`

In addition to the above permissions, assign permissions specific to alternate content sources, depending on the actions the users can perform:

. `view_alternate_content_sources`
. `create_alternate_content_sources`
. `edit_alternate_content_sources`
. `destroy_alternate_content_sources`

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-custom-alternate-content-sources-by-using-cli"]
= Creating custom alternate content sources by using Hammer CLI

[role="_abstract"]
You can create custom alternate content sources (ACS) to define alternate paths to download content during synchronization.

.Prerequisites
* If the repository requires SSL authentication, import the SSL certificate and key into {Project}.
For more information, see {ContentManagementDocURL}importing-custom-ssl-certificates-by-using-cli[Importing custom SSL certificates by using Hammer CLI] in _{ContentManagementDocTitle}_.
* You have the base URL and subpaths of your alternate content source.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} will search `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.

.Procedure
. Create a custom alternate content source:
+
[options="nowrap" subs="+quotes,attributes"]
----
$ hammer alternate-content-source create \
--alternate-content-source-type custom \
--base-url "_https://local-repo.example.com:port_" \
--name "_My_ACS_Name_" \
--smart-proxy-ids __My_{smart-proxy-context-titlecase}_ID_1__,__My_{smart-proxy-context-titlecase}_ID_2__ \
--verify-ssl _true_
----
. Refresh your alternate content source:
+
[options="nowrap" subs="+quotes,attributes"]
----
$ hammer alternate-content-source refresh --name "_My_ACS_Name_"
----

.Verification
* Verify that the task ran successfully:
+
[options="nowrap" subs="+quotes,attributes"]
----
$ hammer task list --search "Refresh Alternate Content Source"
----
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-custom-alternate-content-sources-by-using-web-ui"]
= Creating custom alternate content sources by using {ProjectWebUI}

[role="_abstract"]
You can create custom alternate content sources (ACS) to define alternate paths to download content during synchronization.

.Prerequisites
* If the repository requires SSL authentication, import the SSL certificate and key into {Project}.
For more information, see {ContentManagementDocURL}Importing_Custom_SSL_Certificates_content-management[Importing {customssl} certificates] in _{ContentManagementDocTitle}_.
* You have the base URL and subpaths of your alternate content source.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel10/` and `rhel9/`, then {Project} will search `\https://{server-example-com}/rhel10/` and `\https://{server-example-com}/rhel9/`.

.Procedure
. In the {ProjectWebUI}, navigate to *Content* > *Alternate Content Sources*.
. Click *Add source*.
. Set the *Source type* to *Custom*.
. Select the *Content type* from the drop-down list.
. In the *Name* field, enter a name for your custom ACS.
. Optional: In the *Description* field, provide a description for the ACS.
. Select {SmartProxies} to which you want to synchronize content from your alternate content source.
. If you require synchronizing content through the HTTP proxy of your {SmartProxies}, select *Use HTTP proxies*.
. In the *Base URL* field, enter the base URL of the alternate content source.
. In the *Subpaths* field, provide a comma-separated list of subpaths.
. If your alternate content source requires authentication, select the *Manual authentication* or *Content credentials*.
. If SSL verification is required, enable *Verify SSL* and select the SSL CA certificate.
. Click *Add*.
. Navigate to *Content* > *Alternate Content Sources*.
. Click the vertical ellipsis next to the newly created alternate content source and click *Refresh*.

.Verification
. In the {ProjectWebUI}, navigate to *Monitor* > *{Project} Tasks* > *Tasks*.
. Search for `Refresh Alternate Content Source`.
. Verify that the task finished successfully.
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
:_mod-docs-content-type: PROCEDURE

[id="creating-rhui-alternate-content-sources-by-using-cli"]
= Creating RHUI alternate content sources by using Hammer CLI

[role="_abstract"]
You can use RHUI alternate content sources to configure your {SmartProxy} to sync content from a Red{nbsp}Hat Update Infrastructure server.

.Prerequisites
* Generate the client entitlement certificates for the required repos on the RHUA node as described in {RHDocsBaseURL}red_hat_update_infrastructure/4/html/configuring_and_managing_red_hat_update_infrastructure/assembly_cmg-creating-client-ent-cert-config-rpm_configuring-and-managing-red-hat-update-infrastructure#proc_cmg-creating-client-entitlement-certificate_assembly_cmg-creating-client-ent-cert-config-rpm[Creating a client entitlement certificate with the Red Hat Update Infrastructure Management Tool] in _Configuring and Managing Red Hat Update Infrastructure_.
* Import the client entitlement certificates into {Project}.
For more information, see {ContentManagementDocURL}importing-custom-ssl-certificates-by-using-cli[Importing custom SSL certificates by using Hammer CLI] in _{ContentManagementDocTitle}_.
* Obtain a list of the subpaths for the required repositories.
Execute the following command on your RHUA server:
+
[options="nowrap" subs="+quotes,attributes"]
----
# rhui-manager repo info --repo_id _My_Repo_ID_
----
* Note that the alternate content source paths consist of a base URL appended with the subpaths that you provide.
For example, if your base URL is `\https://{server-example-com}` and your subpaths are `rhel7/` and `rhel8/`, then both `\https://{server-example-com}/rhel7/` and `\https://{server-example-com}/rhel8/` will be searched.

.Procedure
. Create a RHUI alternate content source:
+
[options="nowrap" subs="+quotes,attributes"]
----
$ hammer alternate-content-source create \
--alternate-content-source-type rhui \
--base-url "_https://rhui-cds-node.example.com/pulp/content_" \
--name "_My_ACS_Name_" \
--smart-proxy-ids __My_{smart-proxy-context-titlecase}_ID_1__,__My_{smart-proxy-context-titlecase}_ID_2__ \
--ssl-client-cert-id _My_SSL_Client_Certificate_ID_ \
--ssl-client-key-id _My_SSL_Client_Key_ID_ \
--subpaths _path/to/repo/1/,path/to/repo/2/_ \
--verify-ssl _true_
----
. Refresh the alternate content source:
+
[options="nowrap" subs="+quotes,attributes"]
----
$ hammer alternate-content-source refresh --name "_My_ACS_Name_"
----
Loading
Loading