{"id":20333813,"url":"https://github.com/maci0/openshift4-ansible","last_synced_at":"2025-04-11T21:50:22.650Z","repository":{"id":69538782,"uuid":"181032243","full_name":"maci0/openshift4-ansible","owner":"maci0","description":null,"archived":false,"fork":false,"pushed_at":"2019-11-28T05:45:08.000Z","size":136,"stargazers_count":12,"open_issues_count":2,"forks_count":10,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-25T17:49:27.398Z","etag":null,"topics":["ansible","kubernetes","openshift","openshift-v4"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maci0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-04-12T15:10:58.000Z","updated_at":"2021-08-17T09:11:46.000Z","dependencies_parsed_at":null,"dependency_job_id":"277df8e0-81c5-4415-bfdf-792f8068e7f7","html_url":"https://github.com/maci0/openshift4-ansible","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maci0%2Fopenshift4-ansible","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maci0%2Fopenshift4-ansible/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maci0%2Fopenshift4-ansible/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maci0%2Fopenshift4-ansible/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maci0","download_url":"https://codeload.github.com/maci0/openshift4-ansible/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248487733,"owners_count":21112188,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","kubernetes","openshift","openshift-v4"],"created_at":"2024-11-14T20:33:20.648Z","updated_at":"2025-04-11T21:50:22.642Z","avatar_url":"https://github.com/maci0.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# openshift4-ansible\n\nThis playbook creates the OpenShift 4 UPI (User provided\nInfrastructure) on AWS into an existing VPC with existing private and\npublic subnets and DNS Zones.\n\nIt is also possible to deploy the API server without exposing it to\nthe Internet, this will require that the host that runs this Ansible\nplaybook can access the VPC subnets.\n\nThe Cloudformation templates are based on these:\nhttps://github.com/openshift/installer/tree/master/upi/aws/cloudformation\n\nSome information has to be provided. Mainly information about your AWS\nVPC, your subnets etc. See `inventory/group_vars/all`\n\n\n## Setup\n\nCreate an administrative IAM user to perform the install.\nSee https://github.com/openshift/installer/blob/master/docs/user/aws/iam.md\n\nThis user can be removed after the installation\n\nTo set up a bastion host follow these steps:\n\nStart with a RHEL7 Instance.\n\nBecome root and install the needed tools:\n\n```bash\nsudo -i\n\nsubscription-manager repos --enable rhel-7-server-ansible-2.8-rpms\n\nyum install -y ansible\n\nyum install -y \\\n  https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm\n\nyum -y install \\\n  python2-boto python2-boto3 python2-simplejson\n\nyum erase -y epel-release\n\nexit\n```\n\nWith your own account, create ~/.aws/credentials with the following\ncontent, replacing the AWSKEY and AWSSECRETKEY with the right values\nfrom AWS.\n\n```\n[default]\naws_access_key_id = AWSKEY\naws_secret_access_key = AWSSECRETKEY\n```\n\n## Usage\n\nModify `inventory/group_vars/all`.\n\n```bash\nansible-playbook install-upi.yaml\n```\n\nTo delete all AWS resources that were created for an OpenShift cluster, use the same `inventory/group_vars/all` that was used for the\ninstallation. In particular, the clustername has to match. You also need the `/tmp/CLUSTERNAME` directory that was created\nby the installation playbook.\n\n```bash\nansible-playbook uninstall-upi.yaml\n```\n\n### Disk Encryption\n\nTo enable encryption of the EBS volumes attached to the master and worker nodes, the RHCOS AMI needs to be copied before \nthe installation is started. This can be done by running\n\n```bash\nansible-playbook create-encrypted-ami.yaml\n```\n\nThe playbook uses the AMI ID `rhcos_ami` from `vars.yaml` as the\nsource and creates a private AMI that is identical to the source AMI,\nexcept that disk encryption is enabled.\n\ninstall-upi.yaml looks for a private AMI created by\n`create-encrypted-ami.yaml`. If none is found, it uses AMI ID\n`rhcos_ami` from `inventory/group_vars/all`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaci0%2Fopenshift4-ansible","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaci0%2Fopenshift4-ansible","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaci0%2Fopenshift4-ansible/lists"}