While I'm sure there are different ways of doing this, and more complex setups, but what you ask is not outside of what pulp can do for you.
Currently, our site has a single pulp server which serves up RHEL6/7, CENTOS 6/7 and OracleLinux7 repositories along with a few other custom/non-custom repos. The thing about RHEL is they are licensed repositories, so you need a valid certificate to mirror them. So if you don't have any valid RHEL machines, then you are SOL. If you do then all you need to do is use the certs from a valid RHEL6/7 box and use them when you setup your pulp repo, and periodically RedHat will update those certs so you will need to update your repo config as well.. For example: (Modify to suit, we also serve up http so that's why it's explicitly enabled, and we only care about 64bit) Setup Epel6 cd /etc/pki/rpm-gpg wget https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6 pulp-admin rpm repo create --repo-id=epel-6 --serve-http=True --feed=https://dl.fedoraproject.org/pub/epel/6/x86_64/ --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 --relative-url=epel-6 Setup Epel7 cd /etc/pki/rpm-gpg wget https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7 pulp-admin rpm repo create --repo-id=epel-7 --serve-http=True --feed=https://dl.fedoraproject.org/pub/epel/7/x86_64/ --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 --relative-url=epel-7 Setup RHEL6 repos pulp-admin rpm repo create --repo-id=rhel-6-server-rpms --feed=https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/os --feed-ca-cert=/etc/rhsm/ca/redhat-uep.pem --feed-key=/etc/pki/entitlement/xxxxxx-key.pem-rhel6 --feed-cert=/etc/pki/entitlement/xxxxxx.pem-rhel6 --relative-url=rhel-6-server-rpms --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --serve-http=True pulp-admin rpm repo create --repo-id=rhel-6-server-thirdparty-oracle-java-rpms --feed=https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/oracle-java/os --feed-ca-cert=/etc/rhsm/ca/redhat-uep.pem --feed-key=/etc/pki/entitlement/xxxxx-key.pem-rhel6 --feed-cert=/etc/pki/entitlement/xxxxx.pem-rhel6 --relative-url=rhel-6-server-thirdparty-oracle-java-rpms --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --serve-http=True pulp-admin rpm repo create --repo-id=rhel-6-server-optional-rpms --feed=https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/optional/os --feed-ca-cert=/etc/rhsm/ca/redhat-uep.pem --feed-key=/etc/pki/entitlement/xxxxx-key.pem-rhel6 --feed-cert=/etc/pki/entitlement/xxxxx.pem-rhel6 --relative-url=rhel-6-server-optional-rpms --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --serve-http=True Setup RHEL7 repos pulp-admin rpm repo create --repo-id=rhel-7-server-rpms --feed=https://cdn.redhat.com/content/dist/rhel/server/7/7Server/x86_64/os --feed-ca-cert=/etc/rhsm/ca/redhat-uep.pem --feed-key=/etc/pki/entitlement/xxxxx-key.pem-rhel7 --feed-cert=/etc/pki/entitlement/xxxxx.pem-rhel7 --relative-url=rhel-7-server-rpms --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --serve-http=True pulp-admin rpm repo create --repo-id=rhel-7-server-extras-rpms --feed=https://cdn.redhat.com/content/dist/rhel/server/7/7Server/x86_64/extras/os --feed-ca-cert=/etc/rhsm/ca/redhat-uep.pem --feed-key=/etc/pki/entitlement/xxxxx-key.pem-rhel7 --feed-cert=/etc/pki/entitlement/xxxxx.pem-rhel7 --relative-url=rhel-7-server-extras-rpms --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --serve-http=True pulp-admin rpm repo create --repo-id=rhel-7-server-optional-rpms --feed=https://cdn.redhat.com/content/dist/rhel/server/7/7Server/x86_64/optional/os --feed-ca-cert=/etc/rhsm/ca/redhat-uep.pem --feed-key=/etc/pki/entitlement/xxxxx-key.pem-rhel7 --feed-cert=/etc/pki/entitlement/xxxxx.pem-rhel7 --relative-url=rhel-7-server-optional-rpms --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --serve-http=True pulp-admin rpm repo create --repo-id=rhel-7-server-thirdparty-oracle-java-rpms --feed=https://cdn.redhat.com/content/dist/rhel/server/7/7Server/x86_64/oracle-java/os --feed-ca-cert=/etc/rhsm/ca/redhat-uep.pem --feed-key=/etc/pki/entitlement/xxxxx-key.pem-rhel7 --feed-cert=/etc/pki/entitlement/xxxxx.pem-rhel7 --relative-url=rhel-7-server-thirdparty-oracle-java-rpms --gpg-key=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --serve-http=True Setup Centos7 Repos pulp-admin rpm repo create --repo-id=CentOS-7-base --feed=http://mirror.centos.org/centos/7/os/x86_64/ --relative-url= CentOS-7-base --serve-http=True pulp-admin rpm repo create --repo-id=CentOS-7-updates --feed=http://mirror.centos.org/centos/7/updates/x86_64/ --relative-url= CentOS-7-updates --serve-http=True pulp-admin rpm repo create --repo-id=CentOS-7-extras --feed=http://mirror.centos.org/centos/7/extras/x86_64/ --relative-url= CentOS-7-extras --serve-http=True Does this help? Jonathan Kaufman | DevOps Engineer | Foot Locker Inc. (414-357-4062) | [email protected] From: Donald Wolfe <[email protected]> To: "[email protected]" <[email protected]> Date: 09/22/2016 08:38 AM Subject: [Pulp-list] Using Pulp to serve RHEL 6, 7, and Centos 6, 7 Sent by: [email protected] Hi, I am trying to setup a central package repo for clients to include RHEL 6 and 7, and CentOS 6 and 7. I have found lots of simple examples documented where folks are using Pulp to serve either RHEL, or CentOS, or other single distros, but none for how to configure a more complex setup with multiple distros/versions. The issue I see is around being able to download RHEL packages from a Pulp server built on a different distro like CentOS, or version RHEL 6 or 7. We have RHEL 6 and 7 systems which are all licensed properly, but we use CentOS 6 or 7 for less critical servers and just want to be able to perform periodic updates on them all by updating dev/test environments, and waiting a month (for verifying application integrity) before updating from the same set of packages in production environments. Is there a way to do this? I can't even seem to tell if I can do this with Satellite Server, but would prefer not to have to buy it as it would be overkill in our environment? Would someone please point me in the right direction? Would love to see an example config of something similar. Thank you, and best regards, Don Wolfe Disclaimer: This communication and any attachments contain private, confidential, privileged and/or proprietary information intended solely for the Recipient(s) named above. If you are not the intended Recipient, any use, dissemination, distribution or copying of the communication is strictly prohibited. If received in error, we apologize and ask that you please notify the Sender by returning this e-mail and permanently deleting this communication from your computer, including destruction of any printed copies. Any views expressed herein are not necessarily those of the Company represented by this e-mail source. No contracts, agreements or legally binding understandings may be entered into solely by an e-mail communication. _______________________________________________ Pulp-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/pulp-list
_______________________________________________ Pulp-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/pulp-list
