On Mon, May 9, 2016 at 4:56 AM, ABDALA Olga <[email protected]> wrote:
> Hello Erik, > > > > Please find my comments inline > > > > *De :* Erik Jacobs [mailto:[email protected]] > *Envoyé :* mercredi 4 mai 2016 17:32 > *À :* ABDALA Olga > *Cc :* [email protected] > *Objet :* Re: Three-tier application deployment on OpenShift origin > > > > > > On Wed, May 4, 2016 at 8:30 AM, ABDALA Olga <[email protected]> > wrote: > > Hello Erik, > > > > Thank you for your inputs. > > However, while trying to update the label for my Nodes, here is what I > get: > > > > > > labels are single key/value pairs. You are trying to add an additional > zone label without specifying --overwrite. You cannot have multiple values > for the same key. > > > > Same thing if I try to update my pods’ labels. > > > > Changing a pod label is not what you want to do. You want to change the > pod nodeselector. > > Ø Yes I guess that is what I will have to change > Yes. > > > For the NodeSelector, where can I find the pod configuration file, for me > to specify the Node, please? > > Is it in the *master-config.yaml* file? > > > > master-config.yaml is the master configuration, not a "pod configuration". > "pod configuration" is kind of a strange statement. You probably mean "pod > definition". > > Ø By « pod definition », do you mean the pod yaml file? > That is one example, yes. > > > We'll ignore nodeselector and master-config because while it's a thing, it > won't do what you want. If you're interested, docs here: > https://docs.openshift.org/latest/admin_guide/managing_projects.html#setting-the-cluster-wide-default-node-selector > . > > Ø After checking the docs, My question is : if the defaultNodeSelector > in the master config file is set for a specific region, does that mean that > pods will never be placed on the Nodes of that specific region? > If the defaultNodeSelector is set, and you didn't somehow change it in the project, then the default node selector will *always* be applied, in addition to any pod-specific node selector. Whether that default nodeSelector is for "region", "zone", or any other arbitrary key/value pair is not relevant. The default is the default. I think you meant to ask "if the default... is set for a region... does that mean the pods will always be placed". Not "never". Why would the selector mean never? That sounds more like an anti-selector... > > > What you want to change is the pod nodeselector. I linked to the docs: > > > > > https://docs.openshift.org/latest/dev_guide/deployments.html#assigning-pods-to-specific-nodes > > Ø Just to make sure ; by setting a value to the « nodeSelector », will > that put my pod to the specified Node? > If you set a value for the nodeSelector your pod will attempt to be scheduled on nodes who have labels that match. If you want to run a pod on a specific node I believe there is also a way to select a specific node by its hostname. It's in the docs somewhere. > > > I don't know how you created your pods, so how you change/add nodeselector > depends. > > Ø Actualy, I did not really ‘create’ the pods. What I did is, after > creating a project and adding my application to the project, 1 pod was > automatically created. From there, I simply increased the number of pods > (from the web console) to as many as I wanted. > Yes, so you have a deployment config that causes a replication controller to be created that then causes a pod to be created. As per below, "new-app" / "add to project" are basically the same thing. One is the UI and one is the CLI. > Ø By the way, I wanted to set something clear in my head regarding the > pods. Does the number of pods mean the number of the application’s > ‘versions’? > I don't understand your question. The number of pods is the number of pods. What do you mean by "the application's 'versions'"? > > > Since you have builds, I am guessing that you used something like > "new-app". new-app will have created a deploymentconfig. You would want > to edit the deploymentconfig, find the pod template, and then add the > nodeselector as shown in the docs above. > > > > > > Thank you! > > > > Olga > > > > *De :* Erik Jacobs [mailto:[email protected]] > *Envoyé :* mardi 3 mai 2016 16:57 > *À :* ABDALA Olga > *Cc :* [email protected] > *Objet :* Re: Three-tier application deployment on OpenShift origin > > > > Hi Olga, > > > > Some responses inline/ > > > > > Erik M Jacobs, RHCA > > Principal Technical Marketing Manager, OpenShift Enterprise > > Red Hat, Inc. > > Phone: 646.462.3745 > > Email: [email protected] > > AOL Instant Messenger: ejacobsatredhat > > Twitter: @ErikonOpen > > Freenode: thoraxe > > > > On Mon, Apr 25, 2016 at 9:34 AM, ABDALA Olga <[email protected]> > wrote: > > Hello all, > > > > I am done with my *origin advanced installation* (thanks to your useful > help) which architecture is composed of *4 virtualized servers* (on the > same network): > > - 1 Master > > - 2 Nodes > > - 1 VM hosting Ansible > > > > My next steps are to implement/test some use cases with a *three-tier > App*(each > App’s tier being hosted on a different VM): > > - The *horizontal scalability*; > > - The *load-balancing* of the Nodes : Keep the system running even > if one of the VMs goes down; > > - App’s monitoring using *Origin API*: Allow the Origin API to > “tell” the App on which VM is hosted each tier. (I still don’t know how to > test that though…) > > > > There are some *notions* that are still not clear to me: > > - From my web console, how can I know *on which Node has my App > been deployed*? > > > > If you look in the Browse -> Pods -> select a pod, you should see the node > where the pod is running. > > > > - How can I put *each component of my App* on a *separated Node*? > > - How does the “*zones*” concept in origin work? > > > > These two are closely related. > > > > 1) In your case it sounds like you would want a zone for each tier: > appserver, web server, db > > 2) This would require a node with a label of, for example, zone=appserver > > 3) When you create your pod (or replication controller, or deployment > config) you would want to specify, via a nodeselector, which zone you want > the pod(s) to land in > > > > This stuff is scattered throughout the docs: > > > > > https://docs.openshift.org/latest/admin_guide/manage_nodes.html#updating-labels-on-nodes > > > https://docs.openshift.org/latest/dev_guide/deployments.html#assigning-pods-to-specific-nodes > > > > I hope this helps. > > > > > > Content of /etc/ansible/hosts of my Ansible hosting VM: > > [masters] > > sv5305.selfdeploy.loc > > # host group for nodes, includes region info > > [nodes] > > sv5305.selfdeploy.loc openshift_node_labels="{'region': 'infra', 'zone': > 'default'}" openshift_schedulable=false > > sv5306.selfdeploy.loc openshift_node_labels="{'region': 'primary', 'zone': > 'east'}" > > sv5307.selfdeploy.loc openshift_node_labels="{'region': 'primary', 'zone': > 'west'}" > > > > Thank you in advance. > > > > Regards, > > > > Olga > > > > > _______________________________________________ > dev mailing list > [email protected] > http://lists.openshift.redhat.com/openshiftmm/listinfo/dev > > > > >
_______________________________________________ dev mailing list [email protected] http://lists.openshift.redhat.com/openshiftmm/listinfo/dev
