managing compute nodes
Hi. I'm having launching an instance on compute nodes. Initially I set up three node, controller,network and compute. Launching instances worked fine and still works fine. Now I added 2 more compute nodes, say compute2 & 3. I want to launch instance on these added nodes but it seems that it only tried to launch on original compute node. I have already launched a few on compute1, so whenever I try to launch more, it says it doesn't have enough resources. I can see on my dashboard that compute2,3 are connected, and count their resources. Isn't nova-scheduler should assign an instance to any node that has enough resource for that instance? Any cofig should I change to do that? I will provide any more information needed
UPDATE#1
openstack compute service list
+----+--------------+--------------+----------+---------+-------+--------------+
| ID | Binary | Host | Zone | Status | State | Updated At |
+----+--------------+--------------+----------+---------+-------+--------------+
| 3 | nova- | control-node | internal | enabled | up | 2016-12-15T0 |
| | consoleauth | | | | | 8:47:19.0000 |
| | | | | | | 00 |
| 4 | nova- | control-node | internal | enabled | up | 2016-12-15T0 |
| | scheduler | | | | | 8:47:23.0000 |
| | | | | | | 00 |
| 5 | nova- | control-node | internal | enabled | up | 2016-12-15T0 |
| | conductor | | | | | 8:47:24.0000 |
| | | | | | | 00 |
| 7 | nova-compute | compute-node | nova | enabled | up | 2016-12-15T0 |
| | | | | | | 8:47:23.0000 |
| | | | | | | 00 |
| 8 | nova-compute | compute- | nova | enabled | up | 2016-12-15T0 |
| | | node3 | | | | 8:47:22.0000 |
| | | | | | | 00 |
| 9 | nova-compute | Compute- | nova | enabled | up | 2016-12-15T0 |
| | | Node2 | | | | 8:47:19.0000 |
| | | | | | | 00 |
+----+--------------+--------------+----------+---------+-------+--------------+
I would start by enabling debug logging on the controller, then check the nova scheduler log to understand why the two additional nodes are not used.
Before that: Where do you see that the nodes are connected? Can you run
openstack compute service list
to see if Nova thinks they are enabled?I updated my question.. sorry for the delay. So on controller, nova seems to think that ther're connected. So if compute-node's resources are not enough to handle an instance I'm trying to launch,it should automatically launch the instance on compute-node2 right?
Or is there any way to set config to use compute-node2 as a default instead of compute-node?
Something prevents the scheduler to select these hosts. The scheduler log is the first place I would check after confirming that the nodes exist in the database and are enabled and up.
If you just want to test if your compute node is ready, you could launch an instance via command line:
This way you avoid nova scheduler (although you definitely should check why it doesn't choose other nodes)