All Projects β†’ oVirt β†’ ovirt-openshift-extensions

oVirt / ovirt-openshift-extensions

Licence: Apache-2.0 License
Implementation of flexvolume driver and provisioner for oVirt

Programming Languages

go
31211 projects - #10 most used programming language
Dockerfile
14818 projects
shell
77523 projects
Makefile
30231 projects

Projects that are alternatives of or similar to ovirt-openshift-extensions

arnold
πŸ‘·β€β™€οΈ Deploy your applications to Kubernetes with Ansible
Stars: ✭ 37 (+15.63%)
Mutual labels:  openshift
RHCA-study-notes
Red Hat Certified Architect personal study notes
Stars: ✭ 95 (+196.88%)
Mutual labels:  openshift
moVirt
A mobile client for oVirt
Stars: ✭ 47 (+46.88%)
Mutual labels:  ovirt
archi cloudnative
Cloud Native Architectural Models using Archi. Contains models for CAAS, Cloud Native Applications, 12/15 Factor Applications with CI/CD/CS, monitoring and log management. Infrastructure components include Red Hat OpenShift, Red Hat Storage, Red Hat Ansible Tower, Red Hat Cloudforms, Red Hat Satellite, Red Hat JBoss Middleware.
Stars: ✭ 55 (+71.88%)
Mutual labels:  openshift
metagraf
metaGraf is a opinionated specification for describing a software component and what its requirements are from the runtime environment. The mg command, turns metaGraf specifications into Kubernetes resources, supporting CI, CD and GitOps software delivery.
Stars: ✭ 15 (-53.12%)
Mutual labels:  openshift
faas-tutorial
Java FaaS demos with OpenWhisk and OpenShift
Stars: ✭ 43 (+34.38%)
Mutual labels:  openshift
cfimagehost-on-openshift
CF Image Host on Red Hat OpenShift PAAS
Stars: ✭ 13 (-59.37%)
Mutual labels:  openshift
nagios-plugins-openshift
Nagios/Icinga 2 Plugins for monitoring OpenShift clusters
Stars: ✭ 24 (-25%)
Mutual labels:  openshift
tailor
Infrastructure as Code for OpenShift
Stars: ✭ 12 (-62.5%)
Mutual labels:  openshift
citadel
Turn an arbitrary command into a Kubernetes Key Management Service GRPC server
Stars: ✭ 15 (-53.12%)
Mutual labels:  openshift
gollum-galore
🍬 Gollum wiki with lots of sugar 🍬
Stars: ✭ 14 (-56.25%)
Mutual labels:  openshift
openshift-actions-runners
GitHub Action self-hosted runner images for OpenShift.
Stars: ✭ 27 (-15.62%)
Mutual labels:  openshift
kubeseal-webgui
This is a python based webapp for using Bitnami-Sealed-Secrets in a web-ui.
Stars: ✭ 27 (-15.62%)
Mutual labels:  openshift
openshift4-vmware-upi
Ansible Playbooks and Documentation to Support the Automated Installation of OpenShift 4 on VMware
Stars: ✭ 45 (+40.63%)
Mutual labels:  openshift
ProxyInjector
A Kubernetes controller to inject an authentication proxy container to relevant pods - [✩Star] if you're using it!
Stars: ✭ 77 (+140.63%)
Mutual labels:  openshift
buildah-build
GitHub Action to use 'buildah' to build a container image.
Stars: ✭ 75 (+134.38%)
Mutual labels:  openshift
openshift-install
Install Openshift Docker Meetup Jakarta-Indonesia
Stars: ✭ 17 (-46.87%)
Mutual labels:  openshift
chuck-norris-streams
Kafka, Debezium and Fuse demonstration based on Chuck Norris movies!
Stars: ✭ 25 (-21.87%)
Mutual labels:  openshift
docker-openshift-grafana
Grafana Docker Image for use with Red Hat OpenShift
Stars: ✭ 22 (-31.25%)
Mutual labels:  openshift
keycloak-docker
Docker image for Keycloak 6.0.1 (postgres, ssl) + k8s + Openshift
Stars: ✭ 19 (-40.62%)
Mutual labels:  openshift

ovirt-openshift-extensions

Build Status Go Report Card

container image status
ovirt-flexvolume-driver ovirt-flexvolume-driver
ovirt-volume-provisioner ovirt-volume-provisioner
ovirt-cloud-provider ovirt-cloud-provider
ovirt-flexvolume-driver-apb Docker Repository on Quay
ovirt-openshift-installer Docker Repository on Quay

Purpose

Make oVirt the a prefered platform for openshift installation. The main components this project will ship are:

  • storage integration through plugin - currently flex, CSI in the future
  • cloud provider
  • easy deployement of all those components

ovirt-volume-provisioner

A kubernetes controller that creates/deletes persistent volumes, and allocates disks
in ovirt as a result. This is the first part for providing volumes from oVirt.

ovirt-flexvolume-driver

A kubernetes node plugin that attaches/detaches a volume to a container.
It attaches the oVirt disk to the kube node (which is an oVirt VM). It identifies the disk device on the os,
prepares a filesystem, then mounts it so it is ready as a volume mount for a container.

ovirt-cloud-provider

An out-of-tree implementation of a cloudprovider.
A controller that manages the admission of new nodes for openshift, from oVirt VMs. \

Versions

version ovirt version openshift version
<= v0.3.1 >= 4.2 3.9, 3.10
>= v0.3.2 >= 4.2 3.10, 3.11

Deployment

Deploy via service-catalog

Pre-requisite:

  • Openshift 3.10.0 or higher
  • Running service catalog

From the repo:

  • push the apb image to your cluster repo
    $ make apb_build apb_push
  • go to the service catalog UI and deploy the ovirt-flexvolume-driver-apb.
    Here is a demo doing that:
    IMAGE ALT TEXT HERE

Deploy via cli

  • make sure oc command is configured and has access to your cluster, e.g. run oc status

  • use a cluster admin user to deploy, or grant permission to one

    $ oc login -u system:admin
    $ oc adm policy add-cluster-role-to-user cluster-admin developer
  • Run on a master (replace the input with yours):

     docker run \
     -it \
     --rm \
     --net=host \
     -v $HOME/.kube:/opt/apb/.kube:z \
     -u $UID quay.io/rgolangh/ovirt-flexvolume-driver-apb \
     provision -e \
     '{
       "admin_user":"developer",
       "admin_password":"YOURPASS",  
       "cluster":"openshift",
       "namespace":"default",
       "engine_username":"admin@internal",
       "engine_password":"YOURPASS",
       "engine_url":"https://ENGINE-FQDN/ovirt-engine/api",
       }'

    If it's the first time deploying the image then it should take few moments to download it. To customize the images to be deployed, provide these environment variables to the container invocation:

    • FLEX_REGISTRY
    • FLEX_REPOSITORY
    • FLEX_VERSION
    • PROVISIONER_REGISTRY
    • PROVISIONER_REPOSITORY
    • PROVISIONER_VERSION

    Example: docker run -e FLEX_REGISTRY=registry.example.com ...

Upon completion you have these components running:

$ oc get ds -n default ovirt-flexvolume-driver 
name                      desired   current   ready     up-to-date   available   node selector   age
ovirt-flexvolume-driver   1         1         1         1            1           <none>          15m

$ oc get deployment -n default ovirt-volume-provisioner 
NAME                       DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
ovirt-volume-provisioner   1         1         1            1           17m

Documentation

For topics not covered in this Readme, see the project documentation.

Contributing

Feedback is most welcome, if you have an idea, proposal, fix, or want to chat
you'll find the details here:

Blog post in ovirt: https://www.ovirt.org/blog/2018/02/your-container-volumes-served-by-ovirt/

Youtube Demo: https://youtu.be/_E9pUVrI0hs

References

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].