- Minishift is a tool that helps you run OpenShift locally by launching a single-node OpenShift cluster inside a virtual machine. With Minishift you can try out OpenShift or develop with it, day-to-day, on your local machine.
- OpenShift Online is Red Hat’s public cloud application development and hosting service. On-Demand Access.
- Openshift Origin is the upstream community project that builds up OpenShift platform. Openshift origin is built around a core of Docker container, using Kubernetes for cluster containers orchestration. Openshift origin includes also a functional Web application and a CLI interface to build up and manage your applications. http://www.mastertheboss.com/soa-cloud/openshift/openshift-installation-quick-tutorial
- Docker and OpenShift Origin must run on the Linux operating system.
- Minimum Hardware Requirements
- To simplify the task of setting up and operating containers, the use of a container management tool is essential. These solutions, known as container orchestration tools, help operations staff decide where to run containers, how to run them in production, and which systems to put them on
- OpenShift Online has been completely rewritten, enabling you to rapidly build and deploy Docker images and manage them on a robust, scalable platform. The power of Docker containers and the Kubernetes container cluster manager optimized for enterprise app development and deployment.OpenShift is Red Hat's Platform-as-a-Service (PaaS) that allows developers to quickly develop, host, and scale applications in a cloud environment.
https://www.openshift.org/minishift/
OpenShift Dedicated is Red Hat’s managed private cluster offering for Enterprises. Own OpenShift cluster + operated by Red Hat.
OpenShift Container Platform is Red Hat’s on-premise private PaaS product. Whether it’s on premise in customer data center or private cloud.
OpenShift Origin is the upstream community project used in OpenShift Online, OpenShift Dedicated, and OpenShift Container Platform.
There are 3 quick installation methods:
1Running in a Container (from DockerHub) – Only for Red Hat based distributions, RHEL, Fedora and CentOS.
2Download a Binary (GitHub). This is an all-in-one version. Pay attention with this option, because versions for Windows and Mac are limited.
3Building from source, locally or using Vagrant.
Minishift is an upstream community project that is intended for OpenShift Origin. Minishift is a tool that helps you run OpenShift locally by launching a single-node OpenShift Origin cluster inside a virtual machine.
https://blog.novatec-gmbh.de/getting-started-minishift-openshift-origin-one-vm/
If you wish to run the server from a Windows or Mac OS X host, you should start a Linux VM first.
OpenShift Origin and Docker use iptables to manage networking.
Ensure that local firewall rules and other software making iptable changes do not alter the OpenShift Origin and Docker service setup.
Installation Methods
Method 1: Running in a Container
https://docs.openshift.org/latest/getting_started/administrators.html
OpenShift Origin only supports servers with the x86_64 architecture.
Masters
Physical or virtual system, or an instance running on a public or private IaaS.
Base OS: Fedora 21, CentOS 7.3, RHEL 7.3, or RHEL 7.4 with the "Minimal" installation option and the latest packages from the Extras channel, or RHEL Atomic Host 7.3.6 or later.
2 vCPU.
Minimum 16 GB RAM.
Minimum 40 GB hard disk space for the file system containing /var/.
Minimum 1 GB hard disk space for the file system containing /usr/local/bin/.
Minimum 1 GB hard disk space for the file system containing the system’s temporary directory
Nodes
Physical or virtual system, or an instance running on a public or private IaaS.
Base OS: Fedora 21, CentOS 7.3, RHEL 7.3, or RHEL 7.4 with "Minimal" installation option, or RHEL Atomic Host 7.3.6 or later.
NetworkManager 1.0 or later.
1 vCPU.
Minimum 8 GB RAM.
Minimum 15 GB hard disk space for the file system containing /var/.
Minimum 1 GB hard disk space for the file system containing /usr/local/bin/.
Minimum 1 GB hard disk space for the file system containing the system’s temporary directory
An additional minimum 15 GB unallocated space to be used for Docker’s storage back end
External etcd Nodes
Minimum 20 GB hard disk space for etcd data.
Configuring Core Usage
For example, run the following before starting the server to make OpenShift Origin only run on one core:
# export GOMAXPROCS=1
Alternatively, if you plan to run OpenShift in a container, add -e GOMAXPROCS=1 to the docker run command when launching the server.
SELinux
Security-Enhanced Linux (SELinux) must be enabled on all of the servers before installing OpenShift Origin or the installer will fail. Also, configure SELINUXTYPE=targeted in the /etc/selinux/config file:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of these three values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
NTP
You must enable Network Time Protocol (NTP) to prevent masters and nodes in the cluster from going out of sync.
Set openshift_clock_enabled to true in the Ansible playbook to enable NTP on masters and nodes in the cluster during Ansible installation.
# openshift_clock_enabled=true
Environment Requirements
Adding entries into the /etc/hosts file on each host is not enough. This file is not copied into containers running on the platform.
Key components of OpenShift Origin run themselves inside of containers and use the following process for name resolution:
By default, containers receive their DNS configuration file (/etc/resolv.conf) from their host.
OpenShift Origin then inserts one DNS value into the pods (above the node’s nameserver values). That value is defined in the /etc/origin/node/node-config.yaml file by the dnsIP parameter, which by default is set to the address of the host node because the host is using dnsmasq
If the dnsIP parameter is omitted from the node-config.yaml file, then the value defaults to the kubernetes service IP, which is the first nameserver in the pod’s /etc/resolv.conf file.
DNSMSQ must be enabled (openshift_use_dnsmasq=true) or the installation will fail and critical features will not function
The following is an example set of DNS records for the Single Master and Multiple Nodes scenario:
master A 10.64.33.100
node1 A 10.64.33.101
node2 A 10.64.33.102
Configuring Hosts to Use DNS
The configuration for hosts' DNS resolution depend on whether DHCP is enabled.
If DHCP is:
Disabled, then configure your network interface to be static, and add DNS nameservers to NetworkManager.
If DHCP is:
Enabled, then the NetworkManager dispatch script automatically configures DNS based on the DHCP configuration.
To verify that hosts can be resolved by your DNS server:
Check the contents of /etc/resolv.conf:
$ cat /etc/resolv.conf
# Generated by NetworkManager
search example.com
nameserver 10.64.33.1
# nameserver updated by /etc/NetworkManager/dispatcher.d/99-origin-dns.sh
Test that the DNS servers listed in /etc/resolv.conf are able to resolve host names to the IP addresses of all masters and nodes in your OpenShift Origin environment:
$ dig <node_hostname> @<IP_address> +short
$ dig master.example.com @10.64.33.1 +short
10.64.33.100
$ dig node1.example.com @10.64.33.1 +short
10.64.33.101
Configuring a DNS Wildcard
Optionally, configure a wildcard for the router to use, so that you do not need to update your DNS configuration when new routes are added.
https://docs.openshift.org/latest/install_config/install/prerequisites.html#install-config-install-prerequisites
OpenShift, Red Hat’s PaaS solution for enterprise applications, uses Docker and Kubernetes as its underlying container management engines. OpenShift is a powerful resource for orchestrating containerization at the enterprise level.
The OpenShift Online Starter plan, which can handle one project, is free.
Docker is the leading provider of containerization tools.
Docker has helped foster the DevOps revolution by facilitating collaboration between developers and operators, accelerating the process of creating and deploying applications.
Kubernetes is a container orchestration engine.
It offers an open source platform to manage the deployment and use of containers across your IT infrastructure.
https://shadow-soft.com/open-source-container-management-tools/
https://www.openshift.com
By creating self-assembling builder images, you can version and control your build environments exactly like you use Docker images to version your runtime environments.
https://github.com/openshift/source-to-image
So let's say you want to load the image "openshift/wildfly-100-centos7" and produce a new image using the source code available on https://github.com/fmarchioni/mastertheboss in the folder "openshift-demo"
(Have a look at the application here: https://github.com/fmarchioni/mastertheboss/tree/master/openshift-demo)
http://www.mastertheboss.com/soa-cloud/openshift/deploy-docker-images-on-openshift
Other image streams
Docker image repositories from external registries
http://www.mastertheboss.com/soa-cloud/openshift/using-wildfly-on-openshift
https://docs.openshift.org/latest/install_config/configuring_openstack.html#install-config-configuring-openstack
https://docs.openshift.com/enterprise/3.1/install_config/install/docker_registry.html
http://www.projectatomic.io/
- Source-to-Image (S2I) is a toolkit and workflow for building reproducible Docker images from source code.
By creating self-assembling builder images, you can version and control your build environments exactly like you use Docker images to version your runtime environments.
https://github.com/openshift/source-to-image
- OpenShift is designed to run any existing Docker images. Additionally, you can define builds that will produce new Docker images using a Dockerfile.
- Source-to-Image (S2I) is a mechanism for building custom Docker images. It produces ready-to-run images by injecting application source into a Docker image and assembling a new Docker image. The new image incorporates the base image and built source
So let's say you want to load the image "openshift/wildfly-100-centos7" and produce a new image using the source code available on https://github.com/fmarchioni/mastertheboss in the folder "openshift-demo"
(Have a look at the application here: https://github.com/fmarchioni/mastertheboss/tree/master/openshift-demo)
http://www.mastertheboss.com/soa-cloud/openshift/deploy-docker-images-on-openshift
- Openshift uses Image Streams to reference a Docker image. An image stream comprises one or more Docker images identified by tags. It presents a single virtual view of related images, similar to a Docker image repository, and may contain images from any of the following:
Other image streams
Docker image repositories from external registries
http://www.mastertheboss.com/soa-cloud/openshift/using-wildfly-on-openshift
- When deployed on OpenStack, OpenShift Origin can be configured to access OpenStack infrastructure, including using OpenStack Cinder volumes as persistent storage for application data.
https://docs.openshift.org/latest/install_config/configuring_openstack.html#install-config-configuring-openstack
- OpenShift can build Docker images from your source code, deploy them, and manage their lifecycle. To enable this, OpenShift provides an internal, integrated Docker registry that can be deployed in your OpenShift environment to locally manage images.
https://docs.openshift.com/enterprise/3.1/install_config/install/docker_registry.html
- geard is a command-line client and agent for integrating and linking Docker containers into systemd across multiple hosts. It is the core of the next generation of OpenShift Origin and helps administrators install and manage the components of their developers' applications
- Use immutable infrastructure to deploy and scale your containerized applications. Project Atomic builds OSes, tools, and containers for cloud native platforms.
http://www.projectatomic.io/
No comments:
Post a Comment