Giter VIP home page Giter VIP logo

openshift-work's People

Contributors

asinn826 avatar brusmx avatar haroldwongms avatar

Stargazers

 avatar

Watchers

 avatar  avatar

openshift-work's Issues

Consider using VMSS in the future

Here's an example of creating VMSS / scaling up / deploying application.

https://github.com/Azure-Samples/ansible-playbooks/tree/master/vmss

I think this should be done once we are done with initial implementation
However we should find another way of deploying scripts as VM Extension operates on VMs directly.
Perhaps it would be possible to do it on VMs created by VMSS, but it doesn't sound like an ideal solution.

Actually, i have another idea how this could be done:

  • we could have initial playbooks to just create and store images
  • main script would just create 3 scalesets
  • scaling up wouldn't require any additional steps on new vms

Set-facts doesn't share variables between hosts

We need some other way to pass the variables from the first play to the second host.

Currently it fails here:

 # $4 MASTERPUBLICIPHOSTNAME=$4 - parameters('openshiftMasterPublicIpFqdn')
"{{master_publicip_fqdn }}" \

Because it doesn't have master_publicip_fqdn

Can we reduce the time of Openshift Deployment playbook?

Talking with @haroldwongms, we saw that the deployment time of openshift playbook on a fully provision infrastructure is of 1hr 07 minutes, even after running the prep scripts.

This issue is a call for heros that want to revise that legendary playbook:
https://github.com/openshift/openshift-ansible/blob/master/playbooks/deploy_cluster.yml

And the script @haroldwongms is using to deploy it:
https://github.com/Microsoft/openshift-origin/blob/master/scripts/deployOpenShift.sh

And see if we could customize or pass some flags to reduce the deployment time.

Running tasks asynchronously hides errors

I have noticed that if something goes wrong while running tasks asynchronously, there will be no information displayed at all, so user may be left with an impression that everything went fine, but some resources are not really created.
This happened to public ip addresses, and virtual machines while testing.

Parametrize the playbook

Make sure that there are no hardcoded elements in the playbook and provide an easy way of creating multiple clusters without collisions.

Figure our CNS nodes

I have managed to create and dump infrastructure using ARM template.
It also creates CNS nodes, every CNS node has at least 4 disks attached:

  • docker_pool
  • gluster_disk 0 โ€ฆ 2
  • os_disk
    I don't understand the meaning of these nodes, they are not mentioned in the documentation in ARM repo.

add_host bastion VM so ansible can use it

Dynamically we will have to:

  • Provision a bastion VM - #13 by @asinn826

  • Create a new pair of SSH keys

  • Propagate the SSH keys to the other VMs with authorized_keys module

  • Add it to the ansible host list so it can perform actions like adding running the Openshift provisioning playbook and running verifications on the other VMs

     - name: Add new instance to host group
          add_host:
            hostname: "{{ item['ips'][0].public_ip }}"
            groupname: azure_vms
          with_items: "{{ azure.deployment.instances }}"

Add a task to make sure everything was deployed and is ready to use

Right now, everything is provisioned correctly. But we still need to make sure that the VMs are loaded and ready to be used.

Need to make sure that all the VMs are up and running and that SSH is ready to go.
Specifically, we need to wait for the bastion to be ready and run the deployment from there

Configure NAT Propely

I have just been testing whether NAT is configured propely, and seems like it's not.

I have tried to add inbound_nat_pools but it didn't have any effect.

I also tried to create NAT rules using natpool_ but it also had no effect.

I think existing azure_rm_loadbalancer module may be not working correctly

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.