Coder Social home page Coder Social logo

openshift-automation-tools's Introduction

OpenShift Automation Tools

License: Apache v2

Tools to automate OpenShift installation and maintenance. These scripts and playbooks enable fully automated connected or disconnected OpenShift installation and updates for those parts not automated by the standard OpenShift playbooks. Can be used to quickly setup a PoC environment or to experiment with OpenShift installation parameters. Local registry use will avoid fetching gigabytes of data from external network. Automation for platform level tasks like OS upgrades.

Technical Overview

Official OpenShift documentation describes how to manually prepare nodes for installation, how to configure local registry for disconnected installations, and how to upgrade OpenShift cluster nodes' OS packages. However, currently (as of OCP 3.6 / 2017-09) no automated tools for these tasks are provided. Automation for additional tasks like complete uninstallation, setting up cluster wide Cockpit or configuring passwordless cross-node SSH access are also provided.

The following sections will describe the playbooks and scripts in detail. The provided Ansible inventory files provide a quick starting point for OpenShift installation with most commonly used parameters included. The playbooks and scripts have been tested both with RHEL and RHEL Atomic.

This repository contains branches for each tested OCP release, the first being OpenShift Container Platform 3.4. Before running any of the scripts or playbooks it is required to investigate their contents and adjust them for the local environment as needed. Playbooks are provided in standalone form to make it easier to copy and run them anywhere.

For introduction to OpenShift and official documentation, see

https://docs.openshift.com/container-platform/latest/welcome/index.html

For related supported and more feature-rich alternatives suitable for production environments, please consider Red Hat Satellite and Red Hat CloudForms.

Prerequisites

Detailed Description

There are also several helper scripts under bin/ for installing OCP on KVM/libvirt. These scripts will require some customization prior using and thus are not ready to be used out of the box but they may be helpful in some cases. In a properly prepared environment, the openshift-install or openshift-install-atomic allow for a one-step installation of the entire OpenShift platform starting from RHEL/Atomic installation on VMs and then installing and finalizing OpenShift cluster. Scripts utilize VM snapshots for faster reinstall cycles. For more serious tools see the earlier mentioned supported products.

License

Apache v2

openshift-automation-tools's People

Contributors

myllynen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openshift-automation-tools's Issues

clustered ssh expects keys on server

I install the OCP normally with ssh -A -l cloud-user bastion. So there are no local keys stored, but forwarded with agent. In such case you should create the keys locally while doing clustered ssh.

clustered ssh could better use sudo instead of su

Like Ansible normally uses sudo, it would make more sense for this also use sudo.

su only works when you are root everywhere. In my case I install in cloud images, so I'm typically cloud-user, which can not hop between user accounts using su. But sudo as normal ansible way, works totally fine as any user.

I commented out the following everywhere, and it works fine as cloud-user:
#become_method: su
#become_flags: '-s /bin/sh'

Use OSEv3 instead of all in uninst playbook?

Just borrowed your playbook and ran it against our new playground environment. Accidentally made a bunch of changes to our ceph nodes, cause they were in our active node list and so got grabbed by all. The main uninstall.yml in openshift-ansible targets OSEv3, might be a good idea to do it here too?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.