Skip to content

Documenting Hub online synchronization #3921

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 20 commits into
base: master
Choose a base branch
from

Conversation

0rnela
Copy link
Contributor

@0rnela 0rnela commented Apr 28, 2025

This PR supersedes #3895.

Description

Hub online synchronization (a.k.a. ISS v3) feature had been added to the product.
This PR creates corresponding documentation for the feature.

Target branches

Backport targets (edit as needed):

  • master
  • 5.0 (to be checked)

Links

@0rnela 0rnela changed the title https://github.com/uyuni-project/uyuni-docs/pull/3895 Documenting Hub online synchronization Apr 28, 2025
@0rnela 0rnela marked this pull request as ready for review April 28, 2025 14:48
Copy link
Contributor

@keichwa keichwa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general, it LGTM.

Maybe, when finally accepted and merged, a second walk-through would be good.

0rnela and others added 3 commits April 29, 2025 12:20
…sync.adoc

Co-authored-by: Karl Eichwalder <ke@suse.de>
…sync.adoc

Co-authored-by: Karl Eichwalder <ke@suse.de>
0rnela and others added 2 commits May 5, 2025 11:15
…sync.adoc

Co-authored-by: Thomas Florio <mackdk@users.noreply.github.com>
…sync.adoc

Co-authored-by: Thomas Florio <mackdk@users.noreply.github.com>
When the peripheral server is configured to communicate with the hub, the public GPG key will then automatically be transferred to it.

Once the GPG key is created on the hub, field [literal]``GPG Public Key`` will be set to show that this serevr is using the GPG key.
For more information about setting up own GPG key, see xref:administration:repo-metadata.adoc[].
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you need to update the peripheral registration when you create the GPG key after you registered the peripheral.
I need to check how this can be done. Or Thomas knows it

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think there is currently a way to do it through the UI. I think we have only any API call to update the GPG key.

@0rnela 0rnela requested review from mcalmer, keichwa and mackdk May 5, 2025 12:06

== Introduction

Hub online synchronization reuses the existing repository syncing mechanism and synchronizes channels in the peripheral servers from the repositories on the hub server.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Hub online synchronization reuses the existing repository syncing mechanism and synchronizes channels in the peripheral servers from the repositories on the hub server.
Hub online synchronization reuses the existing repository synchronization and synchronizes channels in the peripheral servers from the repositories on the hub server.


Hub online synchronization reuses the existing repository syncing mechanism and synchronizes channels in the peripheral servers from the repositories on the hub server.

Once the connection between hub and peripheral server is established, the hub server becomes the main source of data for the peripheral server.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Once the connection between hub and peripheral server is established, the hub server becomes the main source of data for the peripheral server.
When the connection between hub and peripheral server is established, the hub server becomes the main source of data for the peripheral server.


Once the connection between hub and peripheral server is established, the hub server becomes the main source of data for the peripheral server.
In case of vendor channels, hub server is effectively replacing {scclongform}.
In case of custom channels, once they are synced, the peripheral server will fetch the packages from the hub and not from the original location of the custom channel defined on the hub.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
In case of custom channels, once they are synced, the peripheral server will fetch the packages from the hub and not from the original location of the custom channel defined on the hub.
In case of custom channels, when they are synchronized, the peripheral server will fetch the packages from the hub and not from the original location of the custom channel defined on the hub.

. by using a combination of token creation on the peripheral, and subsequent registration on the hub server.
This method uses <<peripheral-token-generation>> and <<token-transfer>>.
. by direct registration from the hub, without any user interactions with the peripheral server.
The steps for this method are described in <<direct-registration>>.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The steps for this method are described in <<direct-registration>>.
This method is described in <<direct-registration>>.


=== Registration from peripheral server by token generation

Before being registered to the hub server, a token needs to be generated on the peripheral server and passed it to the administrator of the hub server.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure, but maybe:

Suggested change
Before being registered to the hub server, a token needs to be generated on the peripheral server and passed it to the administrator of the hub server.
Before being registered to the hub server, a token needs to be generated on the peripheral server and passed to the administrator of the hub server.

Judging from the following menu description, you just seem to "copy" the token.

* Use option [literal]``Upload a file`` if the servers have different certificate authorities to upload a certificate file.
* Use option [literal]``Paste a PEM certificate`` to paste a certificate.
. Click button btn:[Register].
A newly registered peripheral serevr will appear on screen [literal]``Peripherals Configuration``.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A newly registered peripheral serevr will appear on screen [literal]``Peripherals Configuration``.
A newly registered peripheral server will appear on screen [literal]``Peripherals Configuration``.


When the metadata on the hub server are signed with a GPG key, the public key is automatically transmitted from hub to peripheral server.

By default, {productname} is not signing meta data.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
By default, {productname} is not signing meta data.
By default, {productname} is not signing metadata.

By default, {productname} is not signing meta data.
Therefore, when the peripheral server is downloading data from the hub server there is no way of checking if the downloaded metadata have a valid signature, unless the customer has created their own GPG key.

To enable checking of the data integrity, the GPG key needs to be created on the hub side.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To enable checking of the data integrity, the GPG key needs to be created on the hub side.
To enable checking of the data integrity, the GPG key needs to be created on the hub.

To enable checking of the data integrity, the GPG key needs to be created on the hub side.
When the peripheral server is configured to communicate with the hub, the public GPG key will then automatically be transferred to it.

Once the GPG key is created on the hub, field [literal]``GPG Public Key`` will be set to show that this serevr is using the GPG key.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Once the GPG key is created on the hub, field [literal]``GPG Public Key`` will be set to show that this serevr is using the GPG key.
When the GPG key is created on the hub, field [literal]``GPG Public Key`` will be set to show that this server is using the GPG key.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is also worth checking the titles about capitalization again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants