OpenShift Hybridizer
-
An HTML version of the documentation is available at https://redhat-developer-demos.github.io/openshift-hybridizer/
-
The source code is available at https://github.com/redhat-developer-demos/openshift-hybridizer
All in One Openshift Cluster Hybrid Cloud Provisioner
License: Apache License 2.0
An HTML version of the documentation is available at https://redhat-developer-demos.github.io/openshift-hybridizer/
The source code is available at https://github.com/redhat-developer-demos/openshift-hybridizer
I'm using AMI ami-8b44f2f3 in region us-west-2.
TASK [cloud-resources : AWS Create All in one OpenShift Node] ******************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Instance creation failed => InvalidParameterCombination: Enhanced networking with the Elastic Network Adapter (ENA) is required for the 'm5.xlarge' instance type. Ensure that you are using an AMI that is enabled for ENA."}
The following line should have a #
https://github.com/redhat-developer-demos/openshift-hybridizer/blob/master/env/extravars.example#L76
And have a link to https://aws.amazon.com/marketplace/pp/B00O7WM7QW
Error message
Failure summary:
Adding support for Alibaba Cloud
It will be nice to have a UI workflow for building and deploying the multi-cloud deployments
It is being generated on the root folder
pwd returns
~/projetos/openshift-hybridizer/out/aws
I'm not sure if this is expect, but the documentation doesn't reflect that.
My Amazon setup is new, so I received this error when running provision.sh:
TASK [cloud-resources : AWS Create All in one OpenShift Node] ******************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Instance creation failed => OptInRequired: In order to use this AWS Marketplace product you need to accept terms and subscribe. To do so please visit https://aws.amazon.com/marketplace/pp?sku=aw0evgkw8e5c1q413zgy5pjce"}
Readme.adoc needs more explanation around how to add/delete users (both admins and devs)
Where is the file "openshift_users.yaml" located?
And if the file is edited, what command must be run for the new users to be added? (deploy.sh?)
And how would I get a cluster admin user vs just a developer?
Intermittently the provision.sh will fail as follows:
TASK [cloud-resources : AWS Add Docker Volume to instance i-0186bf68a773ba61a] ***
fatal: [localhost]: FAILED! => {"changed": false, "msg": "IncorrectState: Instance 'i-0186bf68a773ba61a' is not 'running'."}
If provision.sh is re-run after this failure, there will be two instances running in AWS.
โ openshift-hybridizer git:(master) ./provision.sh
Not loading passwords
Not loading environment vars
Not loading ssh key
ERROR! Syntax Error while loading YAML.
mapping values are not allowed in this context
The error appears to have been in '/runner/env/extravars': line 3, column 15, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
+++---
ansible_become: no
^ here
After the provision, the host https://IP:8443/ Gives me a timeout and never replies
After the script ./deploy.sh The URL at https://IP:8443 shows
missing service (service "webconsole" not found)
missing route (service "webconsole" not found)
It seems that the webconsole should be installed according to openshift/origin#18207
The project_id setting should come BEFORE the credentials_file setting since the end-user first needs to create the project, then the service account then download the creds file.
TASK [cloud-resources : AWS Create All in one OpenShift Node] ******************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Instance creation failed => InsufficientInstanceCapacity: Insufficient capacity for instance type m5.xlarge"}
When deprovisioning (rolling back) on AWS, the instance is terminated correctly but volumes, IP addresses, and security groups are left in place.
Getting the following error while attempting to provision the Amazon VM:
`TASK [cloud-resources : AWS Create All in one OpenShift Node] ******************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Instance creation failed => InvalidParameterCombination: Enhanced networking with the Elastic Network Adapter (ENA) is required for the 'm5.xlarge' instance type. Ensure that you are using an AMI that is enabled for ENA."}
localhost
: ok=9 changed=0 unreachable=0 failed=1 `
It is unclear what is end-user supplied vs auto-created
e.g. Lets say you want to deploy OpenShift on to your Google Cloud Platform(gcp), run the following command
in README.adoc
Extravars follows gcp, aws, azr variables, but readme includes those clouds in different order (aws, azr, gpc). They should be in the same order to ease the edition.
Or even better, each cloud could have its own config file.
The deploy script (and other scripts?) mount the AWS access key to /opt/app-root/src/.ssh. This is not a valid location for SSH on a Linux host (running the openshift-ansible container image).
On Linux, the key should be mounted in /root/.ssh
Using extravars.yaml or extravars.yml will allow some editor to identify the file as YAML and provide some support (validation, highlight syntax, etc)
Add updates to README to
out/gcp
openshift_users.yaml
file to add a custom named useradd-openshift-users.sh
my custom user fred
and the admin
user would be added to /etc/origin/master/htpasswd
on the host and i could login.
/etc/origin/master/htpasswd
is empty on the server and i am unable to login.
the file i used
---
# Add or modify the users in this list and rerun the add-openshift-users.sh
# to have the users add/updated in OpenShift htpasswd file
openshift_users:
- {username: "fred",password: "supers3cret"}
- {username: "admin",password: "supers3cretAdmin"}
# Add the List of users to be deleted from OpenShift
openshift_delete_users:
# - developer
It fails with the following message
TASK [cloud-resources-rollback : AWS Delete All in one OpenShift Node] *********
fatal: [localhost]: FAILED! => {"changed": false, "msg": "instance_ids list is required for absent state"}
localhost : ok=2 changed=0 unreachable=0 failed=1
hi,
i am working through the process of using hybridizer to deploy openshift for an upcoming lab. we would like to use a custom dns for the server and i am wondering the best way to do this?
should i create the resources manually in my cloud provider, and if so how to make sure that openshift knows about the names?
is there an option to have the generated ansible scripts know about the domain name?
thanks!
For each cloud, we should also install their unique service brokers. This would expose AWS (in the Amazon cloud) specific services inside of the Service Catalog and be visible to developers of our cluster. Plus, it becomes more visually obvious which cluster becomes to a specific cloud.
In the instructions and in the extravars file, it mentions that two clouds are configured, but three are shown:
"The example configures provisioning of two clouds Azure and Google Cloud Platform..."
- gcp
- aws
- azr
A secondary script that installs the matching service broker, per cloud. Allowing the end-user developer to gain access to native cloud services that match their cloud platform, visible through the openshift service catalog
it will be great to allow bare metal vm support to allow the build of a hybrid cloud env with multi clouds and local vm
If ansible provides ansible/ansible-runner
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.