-
Notifications
You must be signed in to change notification settings - Fork 47
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add blog post about deprecating nodes
ref #2460 https://pulp.plan.io/issues/2460
- Loading branch information
David Davis
committed
Dec 6, 2016
1 parent
ad50982
commit e1035d3
Showing
2 changed files
with
54 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
{ | ||
"userBlacklist": [ | ||
"tomjohnson1492", | ||
"tomjohnson1492" | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
--- | ||
title: Deprecating Nodes | ||
author: David Davis | ||
tags: | ||
- release | ||
- platform | ||
- 3.0 | ||
--- | ||
|
||
Nodes were introduced in Pulp in 2.1.0 and provided a way to keep multiple Pulp | ||
servers in sync. However, maintaining Nodes in Pulp meant having to maintain a | ||
separate codebase and given that much of the functionality of Nodes can be | ||
acheived by running Pulp straight out of the box, we've decided to remove Nodes | ||
in our next major release of Pulp 3.0. With Pulp 2.11, Nodes will be officially | ||
deprecated. | ||
|
||
In this blog post, I want to outline how users can sync content across Pulp | ||
servers without using Nodes and how tools like cron and systemd can be used to | ||
keep content updated across Pulp servers. I am going to illustrate a two-server | ||
example in which I'll call one Pulp server the parent and the other the child. | ||
However, this distinction is arbitrary as both servers are configured the same | ||
way. The child Pulp server is simply the one we want to mirror content to. | ||
|
||
Syncing Content to a Child Server | ||
--------------------------------- | ||
|
||
Suppose I have an rpm repo called 'centos-base' on the parent Pulp server. | ||
First I would want to publish that repository to make it available for the | ||
child Pulp server to sync: | ||
|
||
pulp-admin rpm repo publish run --repo-id centos-base | ||
|
||
This repository should then be available via http or https. You can check its | ||
relative url via `pulp-admin rpm repo list --repo-id centos-base --details`. In | ||
my case, it's at "https://example.com/pulp/repos/centos-base". Now on the child | ||
node, I can simply create and sync the repository: | ||
|
||
pulp-admin rpm repo create --repo-id centos-base --feed https://example.com/pulp/repos/centos-base | ||
pulp-admin rpm repo sync run --repo-id centos-base | ||
|
||
Now the centos-base repository from my parent Pulp server has been mirrored | ||
onto a child server. | ||
|
||
|
||
Automatically Updating Content | ||
------------------------------ | ||
|
||
By using cron or a systemd timer, we can keep content on the child Pulp server | ||
up-to-date automatically. The pulp-admin sync command can be run automatically | ||
based on your needs. For example, if we want to check for new content for our | ||
'centos-base' repository hourly, we could create a crontab entry: | ||
|
||
@hourly pulp-admin rpm repo sync run --repo-id centos-base |