Skip to content
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

Modularize Deploying Foreman on AWS guide #3469

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ There are three deployment scenarios for {ProjectName} in Amazon Web Services:
* Connecting different regions

ifndef::satellite[]
include::../common/modules/snip_red-hat-images.adoc[]
include::snip_red-hat-images.adoc[]
endif::[]

.Scenario 1: One-region setup
Expand Down
18 changes: 18 additions & 0 deletions guides/common/modules/con_foreman-on-aws-assumptions.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
= Amazon Web Service Assumptions

To use this guide, you must have a working knowledge of the following aspects of Amazon Web Services:

* Creating and accessing {RHEL} images in AWS
* Editing network access in AWS Security
* Creating EC2 instances and how to create EBS volumes
* Launching instances
* Importing and exporting virtual machines in AWS
* Using AWS Direct Connect

To install {Project} in an AWS environment, you must ensure that your AWS set up meets the {InstallingServerDocURL}system-requirements_{project-context}[System Requirements] in _{InstallingServerDocTitle}_.

To install {SmartProxy} in an AWS environment, you must ensure that your AWS set up meets the {InstallingSmartProxyDocURL}system-requirements_{smart-proxy-context}[System Requirements] in _{InstallingSmartProxyDocTitle}_.

For more information about Amazon Web Services and terminology, see https://aws.amazon.com/documentation/ec2/[Amazon Elastic Compute Cloud Documentation].

For more information about Amazon Web Services Direct Connect, see https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html[What is AWS Direct Connect?]
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
= {ProjectName}-specific prerequisites

* Ensure that the Amazon EC2 instance type meets or exceeds the {InstallingServerDocURL}system-requirements_{project-context}[System Requirements] in _{InstallingServerDocTitle}_.
For the best performance, use an https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/storage-optimized-instances.html[AWS storage optimized instance].
ifndef::foreman-deb[]
* Use {InstallingServerDocURL}satellite-storage-requirements_{project-context}[Storage Requirements] in _{InstallingServerDocTitle}_ to understand and assign the correct storage to your AWS EBS volumes.
* Store the synced content on an EBS volume that is separate to the boot volume.
* Mount the synced content EBS volume separately in the operating system.
* Optional: Store other data on a separate EBS volume.
endif::[]
* If you want {ProjectServer} and {SmartProxyServer} to communicate using external DNS hostnames, open the required ports for communication in the AWS Security Group that is associated with the instance.
4 changes: 4 additions & 0 deletions guides/common/modules/con_foreman-on-aws-prerequisites.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[[Prerequisites]]
= Prerequisites

Before you can install and register {ProjectName} and {SmartProxy}, you must set up accounts with Amazon Web Services (AWS) and create and start {RHEL} instances on AWS.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
= Red Hat Cloud prerequisites

To use this guide, you must complete the following steps:

* Register with Red Hat Cloud Access.
* Migrate any Red Hat subscriptions that you want to use.
* Create an AWS instance and deploy a {RHEL} virtual machine to the instance.
* Ensure that your subscriptions are eligible for transfer to Red Hat Cloud.
For more information, see https://www.redhat.com/en/technologies/cloud-computing/cloud-access#program-details[Red Hat Cloud Access Program Details].

For more information about deploying {RHEL} in AWS, see https://access.redhat.com/articles/2962171[How to Locate Red Hat Cloud Access Gold Images on AWS EC2].
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[[Use_Case_Considerations]]
= Use Case Considerations

Because Amazon Web Services is an image-only service, there are common {Project} use cases that do not work, or require extra configuration in an Amazon Web Service environment.
If you plan to use {Project} on AWS, ensure that the use case scenarios that you want to use are available in an AWS environment.
Original file line number Diff line number Diff line change
@@ -1,10 +1,4 @@
[[Use_Case_Considerations]]
= Use Case Considerations

Because Amazon Web Services is an image-only service, there are common {Project} use cases that do not work, or require extra configuration in an Amazon Web Service environment.
If you plan to use {Project} on AWS, ensure that the use case scenarios that you want to use are available in an AWS environment.

== Use Cases Known to Work
= Use Cases Known to Work

You can perform the following {ProjectName} use cases on AWS:

Expand Down Expand Up @@ -60,17 +54,3 @@ When you set the download policy to *On Demand*, content syncs to {ProjectServer

For more information, see {ContentManagementDocURL}Importing_Content_content-management[Importing Content] in _{ContentManagementDocTitle}_.
endif::[]

== Use Cases that Do Not Work

In AWS, you cannot manage the DHCP.
Because of this, most of Kickstart and PXE provisioning models of {ProjectServer} are unusable.
This includes:

* PXE Provisioning
* Discovery and Discovery Rules
* ISO Provisioning methods.
** PXE-Less Discovery (iPXE)
** Per-host ISO
** Generic ISO
** Full-host ISO
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
= Use Cases that Do Not Work

In AWS, you cannot manage the DHCP.
Because of this, most of Kickstart and PXE provisioning models of {ProjectServer} are unusable.
This includes:

* PXE Provisioning
* Discovery and Discovery Rules
* ISO Provisioning methods.
** PXE-Less Discovery (iPXE)
** Per-host ISO
** Generic ISO
** Full-host ISO
17 changes: 17 additions & 0 deletions guides/common/modules/proc_preparing-foreman-server-on-aws.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
= Preparing for the {ProjectName} Installation

In your AWS environment, complete the following steps:

. Launch an EC2 instance of a {RHEL} AMI.
. Connect to the newly created instance.
. If you use a Red Hat Gold Image, remove the RHUI client and set the `enabled` parameter in the `product-id.conf` to `1`.
+
[options="nowrap" subs="+quotes,attributes"]
-----
# {client-package-remove-el8} -y rh-amazon-rhui-client*
# dnf clean all
# cat << EOF > /etc/yum/pluginconf.d/product-id.conf
> [main]
> enabled=1
> EOF
-----
28 changes: 22 additions & 6 deletions guides/doc-Deploying_Project_on_AWS/master.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,31 @@ ifdef::satellite[]
include::common/modules/proc_providing-feedback-on-red-hat-documentation.adoc[leveloffset=+1]
endif::[]

include::topics/AWS_Use_Case_Considerations.adoc[leveloffset=+1]
include::common/modules/con_foreman-on-aws-use-case-considerations.adoc[leveloffset=+1]

include::topics/AWS_Deployment_Scenarios.adoc[leveloffset=+1]
include::common/modules/con_supported-use-cases-for-deploying-foreman-on-aws.adoc[leveloffset=+2]

include::topics/AWS_Prerequisites.adoc[leveloffset=+1]
include::common/modules/con_unsupported-use-cases-for-deploying-foreman-on-aws.adoc[leveloffset=+2]

include::topics/AWS_Installing_Satellite_AWS.adoc[leveloffset=+1]
include::common/modules/con_deployment-scenarios.adoc[leveloffset=+1]

include::topics/AWS_Installing_Capsule_on_AWS.adoc[leveloffset=+1]
include::common/modules/con_foreman-on-aws-prerequisites.adoc[leveloffset=+1]

include::topics/AWS-registering-hosts.adoc[leveloffset=+1]
include::common/modules/con_foreman-on-aws-assumptions.adoc[leveloffset=+2]

ifndef::foreman-deb[]
include::common/modules/con_foreman-on-aws-rh-cloud-prerequisites.adoc[leveloffset=+2]
endif::[]

include::common/modules/con_foreman-on-aws-prerequisites-for-foreman-server.adoc[leveloffset=+2]

ifndef::foreman-deb[]
include::common/modules/proc_preparing-foreman-server-on-aws.adoc[leveloffset=+2]
endif::[]

include::common/modules/con_installing-foreman-server-on-aws.adoc[leveloffset=+1]

include::common/modules/con_installing-smart-proxy-server-on-aws.adoc[leveloffset=+1]

include::common/modules/con_foreman-on-aws-registering-hosts.adoc[leveloffset=+1]
endif::[]
69 changes: 0 additions & 69 deletions guides/doc-Deploying_Project_on_AWS/topics/AWS_Prerequisites.adoc

This file was deleted.

Loading