Creating a yum repo for network machines
Clash Royale CLAN TAG#URR8PPP
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty margin-bottom:0;
up vote
1
down vote
favorite
We've got a RHEL 7.4 server that is registered and would like to make it a yum server for other non-internet connected servers. This particular server is allowed to be connected, but we would like to keep the others offline. I'm pretty new to all of this so I've got a few questions.
I'm from mainly a Windows environment so the way it was explained to me is that a yum server acts similarly to a WSUS server in the sense that it can receive updates and then push them out (in our case, we have our one upstream server that pushes updates to several other downstream servers).
Is this an accurate comparison?
Does each server need to be registered (offline registration) to be able to get yum updates?
Does the online repo need to have the requested package in his repo for another server to pull? Or can an "offline" server use the online server to acquire the package?
I've tried to do this myself and spent about 2 days learning 1000 ways it doesn't work. I've tried to set up repos via http and ftp, but I cannot seem to get it working. I run into problems with directory access with both http and ftp (though I've tried setting access to 777 with no avail).
Would appreciate a little guidance.
Update:
Got the web server piece up and running! So the only question I think I have left is do I need to reposync each of the repos that are the result of "subscription-manager repos" on my online server?
rhel yum repository
add a comment |Â
up vote
1
down vote
favorite
We've got a RHEL 7.4 server that is registered and would like to make it a yum server for other non-internet connected servers. This particular server is allowed to be connected, but we would like to keep the others offline. I'm pretty new to all of this so I've got a few questions.
I'm from mainly a Windows environment so the way it was explained to me is that a yum server acts similarly to a WSUS server in the sense that it can receive updates and then push them out (in our case, we have our one upstream server that pushes updates to several other downstream servers).
Is this an accurate comparison?
Does each server need to be registered (offline registration) to be able to get yum updates?
Does the online repo need to have the requested package in his repo for another server to pull? Or can an "offline" server use the online server to acquire the package?
I've tried to do this myself and spent about 2 days learning 1000 ways it doesn't work. I've tried to set up repos via http and ftp, but I cannot seem to get it working. I run into problems with directory access with both http and ftp (though I've tried setting access to 777 with no avail).
Would appreciate a little guidance.
Update:
Got the web server piece up and running! So the only question I think I have left is do I need to reposync each of the repos that are the result of "subscription-manager repos" on my online server?
rhel yum repository
yum updates are always pulled, never pushed (although a configuration management tool can invoke a pull).
â Ignacio Vazquez-Abrams
Aug 3 at 17:35
@IgnacioVazquez-Abrams yeah I think I understand that much. Big thing is not understanding how to set it up. May end up just having to contact RedHat support..
â Racehorse35
Aug 3 at 17:52
Not strictly an answer, but have you considered a caching HTTP proxy? Restrict it to your upstream mirror, then configure your clients to point at the upstream mirror going through the proxy. When a client hits the package will be cached on the proxy server
â Outurnate
Aug 3 at 18:00
add a comment |Â
up vote
1
down vote
favorite
up vote
1
down vote
favorite
We've got a RHEL 7.4 server that is registered and would like to make it a yum server for other non-internet connected servers. This particular server is allowed to be connected, but we would like to keep the others offline. I'm pretty new to all of this so I've got a few questions.
I'm from mainly a Windows environment so the way it was explained to me is that a yum server acts similarly to a WSUS server in the sense that it can receive updates and then push them out (in our case, we have our one upstream server that pushes updates to several other downstream servers).
Is this an accurate comparison?
Does each server need to be registered (offline registration) to be able to get yum updates?
Does the online repo need to have the requested package in his repo for another server to pull? Or can an "offline" server use the online server to acquire the package?
I've tried to do this myself and spent about 2 days learning 1000 ways it doesn't work. I've tried to set up repos via http and ftp, but I cannot seem to get it working. I run into problems with directory access with both http and ftp (though I've tried setting access to 777 with no avail).
Would appreciate a little guidance.
Update:
Got the web server piece up and running! So the only question I think I have left is do I need to reposync each of the repos that are the result of "subscription-manager repos" on my online server?
rhel yum repository
We've got a RHEL 7.4 server that is registered and would like to make it a yum server for other non-internet connected servers. This particular server is allowed to be connected, but we would like to keep the others offline. I'm pretty new to all of this so I've got a few questions.
I'm from mainly a Windows environment so the way it was explained to me is that a yum server acts similarly to a WSUS server in the sense that it can receive updates and then push them out (in our case, we have our one upstream server that pushes updates to several other downstream servers).
Is this an accurate comparison?
Does each server need to be registered (offline registration) to be able to get yum updates?
Does the online repo need to have the requested package in his repo for another server to pull? Or can an "offline" server use the online server to acquire the package?
I've tried to do this myself and spent about 2 days learning 1000 ways it doesn't work. I've tried to set up repos via http and ftp, but I cannot seem to get it working. I run into problems with directory access with both http and ftp (though I've tried setting access to 777 with no avail).
Would appreciate a little guidance.
Update:
Got the web server piece up and running! So the only question I think I have left is do I need to reposync each of the repos that are the result of "subscription-manager repos" on my online server?
rhel yum repository
edited Aug 3 at 18:56
Jeff Schaller
30.7k846104
30.7k846104
asked Aug 3 at 17:32
Racehorse35
185
185
yum updates are always pulled, never pushed (although a configuration management tool can invoke a pull).
â Ignacio Vazquez-Abrams
Aug 3 at 17:35
@IgnacioVazquez-Abrams yeah I think I understand that much. Big thing is not understanding how to set it up. May end up just having to contact RedHat support..
â Racehorse35
Aug 3 at 17:52
Not strictly an answer, but have you considered a caching HTTP proxy? Restrict it to your upstream mirror, then configure your clients to point at the upstream mirror going through the proxy. When a client hits the package will be cached on the proxy server
â Outurnate
Aug 3 at 18:00
add a comment |Â
yum updates are always pulled, never pushed (although a configuration management tool can invoke a pull).
â Ignacio Vazquez-Abrams
Aug 3 at 17:35
@IgnacioVazquez-Abrams yeah I think I understand that much. Big thing is not understanding how to set it up. May end up just having to contact RedHat support..
â Racehorse35
Aug 3 at 17:52
Not strictly an answer, but have you considered a caching HTTP proxy? Restrict it to your upstream mirror, then configure your clients to point at the upstream mirror going through the proxy. When a client hits the package will be cached on the proxy server
â Outurnate
Aug 3 at 18:00
yum updates are always pulled, never pushed (although a configuration management tool can invoke a pull).
â Ignacio Vazquez-Abrams
Aug 3 at 17:35
yum updates are always pulled, never pushed (although a configuration management tool can invoke a pull).
â Ignacio Vazquez-Abrams
Aug 3 at 17:35
@IgnacioVazquez-Abrams yeah I think I understand that much. Big thing is not understanding how to set it up. May end up just having to contact RedHat support..
â Racehorse35
Aug 3 at 17:52
@IgnacioVazquez-Abrams yeah I think I understand that much. Big thing is not understanding how to set it up. May end up just having to contact RedHat support..
â Racehorse35
Aug 3 at 17:52
Not strictly an answer, but have you considered a caching HTTP proxy? Restrict it to your upstream mirror, then configure your clients to point at the upstream mirror going through the proxy. When a client hits the package will be cached on the proxy server
â Outurnate
Aug 3 at 18:00
Not strictly an answer, but have you considered a caching HTTP proxy? Restrict it to your upstream mirror, then configure your clients to point at the upstream mirror going through the proxy. When a client hits the package will be cached on the proxy server
â Outurnate
Aug 3 at 18:00
add a comment |Â
1 Answer
1
active
oldest
votes
up vote
3
down vote
accepted
The answers for this will vary a bit depending on your distro, but for RHEL, you'll want to use a utility called reposync - Redhat documents the process here:
https://access.redhat.com/solutions/23016
However, it sounds like you might be hitting issues with your webserver setup which are probably unrelated to the repo work. Depending on what webserver you're using to serve the files (nginx and apache are popular choices), you'll want to debug that as a generic webserver issues problem.
As for the comparison to WSUS, as far as I can tell from MS's explanation, they're not quite analogous; a YUM repo is basically a directory structure containing multiple versions of a lot of individual packages and some metadata that the client can use to quickly learn about those packages. It has no moving parts; the clients are responsible for using it effectively (and you'd use other tools to have them do so).
1
Apologies if this is a dumb question. With reposync, it asks for a repo ID. On my online server, the command 'subscription-manager repos' gives me quite a few different repos each with their own IDs. Will I need to use reposync for each of those repos to add the packages to my local repository?
â Racehorse35
Aug 3 at 18:14
It's not a dumb question (and we're all always learning). You only need to mirror what you want to mirror (and note that you need to rerun reposync every time you want a fresh snapshot). If you have a seldom-used repo, or a repo only used by a very small number of machines, you might reasonably decide not to mirror those. One other thing - all this does is set up the repo mirrors. It doesn't instruct your machines to use them. You'll want to modify your repo definitions on other machines in your infra to do that (with Chef or Puppet or Ansible or whatever you use for config management).
â Pat Gunn
Aug 3 at 20:43
add a comment |Â
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
3
down vote
accepted
The answers for this will vary a bit depending on your distro, but for RHEL, you'll want to use a utility called reposync - Redhat documents the process here:
https://access.redhat.com/solutions/23016
However, it sounds like you might be hitting issues with your webserver setup which are probably unrelated to the repo work. Depending on what webserver you're using to serve the files (nginx and apache are popular choices), you'll want to debug that as a generic webserver issues problem.
As for the comparison to WSUS, as far as I can tell from MS's explanation, they're not quite analogous; a YUM repo is basically a directory structure containing multiple versions of a lot of individual packages and some metadata that the client can use to quickly learn about those packages. It has no moving parts; the clients are responsible for using it effectively (and you'd use other tools to have them do so).
1
Apologies if this is a dumb question. With reposync, it asks for a repo ID. On my online server, the command 'subscription-manager repos' gives me quite a few different repos each with their own IDs. Will I need to use reposync for each of those repos to add the packages to my local repository?
â Racehorse35
Aug 3 at 18:14
It's not a dumb question (and we're all always learning). You only need to mirror what you want to mirror (and note that you need to rerun reposync every time you want a fresh snapshot). If you have a seldom-used repo, or a repo only used by a very small number of machines, you might reasonably decide not to mirror those. One other thing - all this does is set up the repo mirrors. It doesn't instruct your machines to use them. You'll want to modify your repo definitions on other machines in your infra to do that (with Chef or Puppet or Ansible or whatever you use for config management).
â Pat Gunn
Aug 3 at 20:43
add a comment |Â
up vote
3
down vote
accepted
The answers for this will vary a bit depending on your distro, but for RHEL, you'll want to use a utility called reposync - Redhat documents the process here:
https://access.redhat.com/solutions/23016
However, it sounds like you might be hitting issues with your webserver setup which are probably unrelated to the repo work. Depending on what webserver you're using to serve the files (nginx and apache are popular choices), you'll want to debug that as a generic webserver issues problem.
As for the comparison to WSUS, as far as I can tell from MS's explanation, they're not quite analogous; a YUM repo is basically a directory structure containing multiple versions of a lot of individual packages and some metadata that the client can use to quickly learn about those packages. It has no moving parts; the clients are responsible for using it effectively (and you'd use other tools to have them do so).
1
Apologies if this is a dumb question. With reposync, it asks for a repo ID. On my online server, the command 'subscription-manager repos' gives me quite a few different repos each with their own IDs. Will I need to use reposync for each of those repos to add the packages to my local repository?
â Racehorse35
Aug 3 at 18:14
It's not a dumb question (and we're all always learning). You only need to mirror what you want to mirror (and note that you need to rerun reposync every time you want a fresh snapshot). If you have a seldom-used repo, or a repo only used by a very small number of machines, you might reasonably decide not to mirror those. One other thing - all this does is set up the repo mirrors. It doesn't instruct your machines to use them. You'll want to modify your repo definitions on other machines in your infra to do that (with Chef or Puppet or Ansible or whatever you use for config management).
â Pat Gunn
Aug 3 at 20:43
add a comment |Â
up vote
3
down vote
accepted
up vote
3
down vote
accepted
The answers for this will vary a bit depending on your distro, but for RHEL, you'll want to use a utility called reposync - Redhat documents the process here:
https://access.redhat.com/solutions/23016
However, it sounds like you might be hitting issues with your webserver setup which are probably unrelated to the repo work. Depending on what webserver you're using to serve the files (nginx and apache are popular choices), you'll want to debug that as a generic webserver issues problem.
As for the comparison to WSUS, as far as I can tell from MS's explanation, they're not quite analogous; a YUM repo is basically a directory structure containing multiple versions of a lot of individual packages and some metadata that the client can use to quickly learn about those packages. It has no moving parts; the clients are responsible for using it effectively (and you'd use other tools to have them do so).
The answers for this will vary a bit depending on your distro, but for RHEL, you'll want to use a utility called reposync - Redhat documents the process here:
https://access.redhat.com/solutions/23016
However, it sounds like you might be hitting issues with your webserver setup which are probably unrelated to the repo work. Depending on what webserver you're using to serve the files (nginx and apache are popular choices), you'll want to debug that as a generic webserver issues problem.
As for the comparison to WSUS, as far as I can tell from MS's explanation, they're not quite analogous; a YUM repo is basically a directory structure containing multiple versions of a lot of individual packages and some metadata that the client can use to quickly learn about those packages. It has no moving parts; the clients are responsible for using it effectively (and you'd use other tools to have them do so).
answered Aug 3 at 18:00
Pat Gunn
1212
1212
1
Apologies if this is a dumb question. With reposync, it asks for a repo ID. On my online server, the command 'subscription-manager repos' gives me quite a few different repos each with their own IDs. Will I need to use reposync for each of those repos to add the packages to my local repository?
â Racehorse35
Aug 3 at 18:14
It's not a dumb question (and we're all always learning). You only need to mirror what you want to mirror (and note that you need to rerun reposync every time you want a fresh snapshot). If you have a seldom-used repo, or a repo only used by a very small number of machines, you might reasonably decide not to mirror those. One other thing - all this does is set up the repo mirrors. It doesn't instruct your machines to use them. You'll want to modify your repo definitions on other machines in your infra to do that (with Chef or Puppet or Ansible or whatever you use for config management).
â Pat Gunn
Aug 3 at 20:43
add a comment |Â
1
Apologies if this is a dumb question. With reposync, it asks for a repo ID. On my online server, the command 'subscription-manager repos' gives me quite a few different repos each with their own IDs. Will I need to use reposync for each of those repos to add the packages to my local repository?
â Racehorse35
Aug 3 at 18:14
It's not a dumb question (and we're all always learning). You only need to mirror what you want to mirror (and note that you need to rerun reposync every time you want a fresh snapshot). If you have a seldom-used repo, or a repo only used by a very small number of machines, you might reasonably decide not to mirror those. One other thing - all this does is set up the repo mirrors. It doesn't instruct your machines to use them. You'll want to modify your repo definitions on other machines in your infra to do that (with Chef or Puppet or Ansible or whatever you use for config management).
â Pat Gunn
Aug 3 at 20:43
1
1
Apologies if this is a dumb question. With reposync, it asks for a repo ID. On my online server, the command 'subscription-manager repos' gives me quite a few different repos each with their own IDs. Will I need to use reposync for each of those repos to add the packages to my local repository?
â Racehorse35
Aug 3 at 18:14
Apologies if this is a dumb question. With reposync, it asks for a repo ID. On my online server, the command 'subscription-manager repos' gives me quite a few different repos each with their own IDs. Will I need to use reposync for each of those repos to add the packages to my local repository?
â Racehorse35
Aug 3 at 18:14
It's not a dumb question (and we're all always learning). You only need to mirror what you want to mirror (and note that you need to rerun reposync every time you want a fresh snapshot). If you have a seldom-used repo, or a repo only used by a very small number of machines, you might reasonably decide not to mirror those. One other thing - all this does is set up the repo mirrors. It doesn't instruct your machines to use them. You'll want to modify your repo definitions on other machines in your infra to do that (with Chef or Puppet or Ansible or whatever you use for config management).
â Pat Gunn
Aug 3 at 20:43
It's not a dumb question (and we're all always learning). You only need to mirror what you want to mirror (and note that you need to rerun reposync every time you want a fresh snapshot). If you have a seldom-used repo, or a repo only used by a very small number of machines, you might reasonably decide not to mirror those. One other thing - all this does is set up the repo mirrors. It doesn't instruct your machines to use them. You'll want to modify your repo definitions on other machines in your infra to do that (with Chef or Puppet or Ansible or whatever you use for config management).
â Pat Gunn
Aug 3 at 20:43
add a comment |Â
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f460393%2fcreating-a-yum-repo-for-network-machines%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
yum updates are always pulled, never pushed (although a configuration management tool can invoke a pull).
â Ignacio Vazquez-Abrams
Aug 3 at 17:35
@IgnacioVazquez-Abrams yeah I think I understand that much. Big thing is not understanding how to set it up. May end up just having to contact RedHat support..
â Racehorse35
Aug 3 at 17:52
Not strictly an answer, but have you considered a caching HTTP proxy? Restrict it to your upstream mirror, then configure your clients to point at the upstream mirror going through the proxy. When a client hits the package will be cached on the proxy server
â Outurnate
Aug 3 at 18:00