270d4f1d6b100c802a65b31d35e406528aa7fd27
Commit Graph

817 Commits

Author SHA1 Message Date
Jenkins
a103fcc69a Merge "Removes XML namespace definitions from V3 API plugins" 2014年02月01日 23:02:27 +00:00
Chris Yeoh
496cf4871c Adds suspend server extension for V3 API
Moves the suspend/resume server functionality out of admin_actions into
its own extension. This part of the blueprint v3-admin-actions-split
allows more selective enablement of features contained in the admin
actions extension.
Note that XML api samples are no longer generated because
bp remove-v3-xml-api has been approved.
Partially implements bp v3-admin-actions-split
DocImpact: Adds os-suspend-server extension and moves suspend/resume
functionality out of os-admin-actions into this new extension
Change-Id: Ie2ad1c6085d65fee397d6ad5b5c9f3bd8e82ad3c
2014年01月31日 15:10:41 +10:30
Chris Yeoh
6609dcf36b Adds pause server extension for V3 API
Moves the pause/unpause server functionality out of admin_actions into
its own extension. This part of the blueprint v3-api-admin-actions-split
allows more selective enablement of features contained in the admin
actions extension.
Note that XML api samples are no longer generated because
bp remove-v3-xml-api has been approved.
Partially implements bp v3-api-admin-actions-split
DocImpact: Adds os-pause-server extension and moves pause/unpause
functionality out of os-admin-actions into this new extension
Change-Id: Ib9cce57e2ff1270a82b9d7e39b23ec6b532b9e77
2014年01月31日 15:09:31 +10:30
Chris Yeoh
0db1e4ed2a Removes XML namespace definitions from V3 API plugins
Removes the XML namespace definitions from the V3 API
plugins declarations. Deliberately avoids removing
the XML namespace definition from admin_actions to avoid
yet another rebase of the admin_actions split series.
Fixes up associated tests and requirement for V3 API extensions
to define a namespace property.
Partially implements blueprint remove-v3-xml-api
Change-Id: If3e1314cefdc1abcdd5eca44bcc2282cac664f05
2014年01月31日 14:57:35 +10:30
Jenkins
65d1071a09 Merge "Adds lock server extension for V3 API" 2014年01月30日 17:04:43 +00:00
Jenkins
11fe6780e7 Merge "Define "supported_instances" for fake compute" 2014年01月30日 15:48:09 +00:00
Chris Yeoh
237e990926 Adds lock server extension for V3 API
Moves the lock/unlock server functionality out of admin_actions into
its own extension. This part of the larger
blueprint v3-api-admin-actions-split allows more selective enablement of
features contained in the admin actions extension.
Some setup work is done in the tests directory with an
admin_only_action_common.py file. This allows tests which are
split out from test_admin_actions (as their corresponding features
are separated from the admin_actions extension) can continue to
share code.
Note that XML api samples are no longer generated because
bp remove-v3-xml-api has been approved.
Partially implements bp v3-api-admin-actions-split
DocImpact: Adds os-lock-server extension and moves lock/unlock
functionality out of os-admin-actions into this new extension
Change-Id: Ie4b6e856c2f5c33de5575aa8666e0b2784b58d05
2014年01月30日 10:13:23 +10:30
Russell Bryant
c2336e2405 Remove v3 xml API sample tests
This is a step toward removing XML support from the v3 compute API.
First, we need to remove all of the tests that would fail once we start
ripping out the real code.
Part of blueprint remove-v3-xml-api
Change-Id: Ie2c280d5ea1e6b8756535deb05982a92561552db
2014年01月28日 17:01:44 -05:00
Jenkins
76fb176005 Merge "Add alias as prefix for flavor_rxtx v3" 2014年01月28日 02:47:04 +00:00
Jenkins
bbda5cec32 Merge "Added a new scheduler filter for metrics" 2014年01月26日 03:46:01 +00:00
Jenkins
55fba353f0 Merge "Add explicit discussion of dependencies to README.rst" 2014年01月25日 16:20:04 +00:00
Jenkins
744ee6bb90 Merge "Add preserve_ephemeral option to rebuild" 2014年01月25日 12:02:46 +00:00
Cedric Brandily
bdecc8d233 Define "supported_instances" for fake compute
Allow fake computes to deploy images with hypervisor_type
defined and set to "fake" and by extension to be used in
multi hypervisor_type deployments.
Mixing fake and "real" computes on the same OpenStack
deployment allows to create many fake instances and some
working instances for testing applications on top of
OpenStack (ie: fake instances for stress tests, working
ones for functional tests).
Closes-bug: #1260771
Change-Id: Idc337c4a7ed024f236ca2b60d91e2c30f7d54536
2014年01月24日 21:08:29 +00:00
Lianhao Lu
e8faf3a2a6 Added a new scheduler filter for metrics
The scheduler filter MetricsFilter filters out those hosts which don't
have the metrics data available as required by metric settings.
This is part of the blueprint utilization-aware-scheduling.
DocImpact: Added a new metrics filter.
Change-Id: Ib4a898774daf683c4496ef3e9953d23027f11ac0
2014年01月22日 11:35:01 +08:00
Mike Spreitzer
27c8713840 Add explicit discussion of dependencies to README.rst
Noted that building the documentation has more dependencies
than merely running Nova.
Noted that the standard development environment is sufficient.
Noted that the standard runtime environment plus oslo.sphinx
is sufficient.
Change-Id: I37b84a1bdfbc906b005c0a53c2c570c0695937b3
Closes-Bug: #1266623 
2014年01月20日 23:07:34 -05:00
Jenkins
b89f1320cd Merge "Extends V3 os-hypervisor api for pci support" 2014年01月20日 14:11:18 +00:00
Roman Podoliaka
c557472496 Add preserve_ephemeral option to rebuild
The preserve_ephemeral option for rebuild will preserve the content of
the ephemeral partition, making stateful golden image based
deployments possible even when clouds haven't deployed Cinder, or the
hypervisor doesn't support Cinder (e.g. BareMetal / Ironic).
Partial-Bug: #1174154
blueprint: baremetal-preserve-ephemeral
Co-Authored-By: Robert Collins <rbtcollins@hp.com>
Change-Id: Id33d5d4107f89814842a3f0b7f33690dd7e3aadc
2014年01月16日 16:24:05 +02:00
Jenkins
8b9f924306 Merge "Aggregate: Hosts isolation based on image properties" 2014年01月07日 08:01:35 +00:00
Jenkins
03b267f26c Merge "Removes disk-config extension from v3 api" 2014年01月06日 05:26:15 +00:00
Shuangtai Tian
cfa202f33c Extends V3 os-hypervisor api for pci support
All pci passthrough code is merged into nova, but the APIs do not support.
this patch extends os-hypervisor to show PCI information for instance and
compute node. This is a part of PCI APIs, for more information see the
blueprint.
Partially implement blueprint pci-api-support
Change-Id: Ia366df257f077c74b1a6639b7078ba4230d3f1a7
2014年01月06日 09:52:29 +08:00
He Jie Xu
65d2398388 Add alias as prefix for flavor_rxtx v3
As v3 api rules, the extended attribute should be with extension
alias as prefix. So fix this case for flavor-rxtx v3 extension.
Closes-bug: 1252986
DocImpact
Change-Id: I9f5984a406d039245db4bef2df53cfe10a331cc2
2014年01月02日 11:29:40 +08:00
Sahid Orentino Ferdjaoui
0ca6b81758 Aggregate: Hosts isolation based on image properties
Isolates hosts based on image properties and aggregate metadata
 - If a host doesn't belong to any aggregate it can create instances
 from all images.
 - if a host belongs to an aggregate and if this aggregate defines
 metadata that match with the image properties then the host
 is a candidate to boot the instance.
DocImpact
Change-Id: I3b9325e2e103f3bb6eed66789ac2c82941e94397
Implements: blueprint aggregate-host-isolation-based-image-properties
2013年12月31日 15:06:09 +01:00
He Jie Xu
ec1711134e Removes disk-config extension from v3 api
This patch removes disk-config extension for v3 api, and also
remove related tests. And remove resize extension point for
servers core because there isn't any extension using it anymore
and there isn't good way to test resize extension point.
Implements bp api-v3-remove-disk-config
DocImpact
Change-Id: I894ae6f4e0d6c9f956a71e8e061ccb3fa1b039d8
2013年12月30日 13:05:55 +08:00
Jenkins
6df885f87c Merge "Remove middleware ratelimits from v3 api" 2013年12月28日 11:13:50 +00:00
Jenkins
d10796ce29 Merge "Enable remote debugging for nova" 2013年12月17日 22:49:08 +00:00
Jenkins
660a924002 Merge "Normalize the weights instead of using raw values" 2013年12月16日 20:14:16 +00:00
Tracy Jones
2cbea24209 Enable remote debugging for nova
This patch added 2 command line parameters which are used to
connect to an external debugger such as pycharm or eclipse.
This feature is used when you want to connect to a nova
service via a debugger running on a different host.
To use it you start the nova service with the following
command line parameters
--remote_debug-host <where the debugger is running>
--remote_debug-port <port> it's listening on>.
DocImpact
Closes-bug: #1251021
Change-Id: I6ede9bf0813eafbeb91d858c297d4c160aafceba
2013年12月16日 09:36:33 -08:00
He Jie Xu
93d3e47531 Remove middleware ratelimits from v3 api
The ratelimit middleware isn't really useful. That is pointed out
by https://review.openstack.org/#/c/34821/. And it didn't get any
object from mail-list:
http://lists.openstack.org/pipermail/openstack-dev/2013-November/020291.html
This patch remove ratelimit middleware and limits extension. The config option
'api_rate_limit' is only valid in v2 api. The pipeline factory for v3 api won't
check that option anymore. For compatibility, if user is still using old
'api-paste.init', pipeline factory will ignore to load ratelimit middleware, and
print warning message to user for notice ratelimit is deprecated in v3 api.
Closes-bug: 1255471
DocImpact
Change-Id: Ifeae0504e11089f95e4d8af58bcb7372dca87f81
2013年12月15日 18:52:03 +08:00
Jenkins
457d3b799d Merge "Extends V3 servers api for pci support" 2013年12月11日 22:08:53 +00:00
Alvaro Lopez Garcia
e5ba849437 Normalize the weights instead of using raw values
The weight system is being used by the scheduler and the cells code.
Currently this system is using the raw values instead of normalizing them.
This makes difficult to properly use multipliers for establishing the
relative importance between two wheighers (one big magnitude could
shade a smaller one). This change introduces weight normalization so
that:
- From an operator point of view we can prioritize the weighers that
 we are applying. The only way to do this is being sure that all the
 weighers will give a value in a known range, so that it is
 not needed to artificially use a huge multiplier to prioritize a
 weigher.
- From a weigher developer point of view, somebody willing to implement
 one has to care about 1) returning a list of values, 2) setting the
 minimum and maximum values where the weights can range, if they are
 needed and they are significant for the weighing. For a weigher
 developer there are two use cases:
 Case 1: Use of a percentage instead of absolute values (for example, %
 of free RAM). If we compare two nodes focusing on the percentage of free
 ram, the maximum value for the weigher is 100. If we have two nodes one
 with 2048 total/1024 free, and the second one 1024 total/512 free they
 will get both the same weight, since they have the same % of free RAM
 (that is, the 50%).
 Case 2: Use of absolute values. In this case, the maximum of the weigher
 will be the maximum of the values in the list (in the case above, 1024)
 or the maximum value that the magnitude could take (in the case above,
 2048). How this maximum is set, is a decision of the developer. He may
 let the operator choose the behaviour of the weigher though.
- From the point of view of the scheduler we ensure that it is using
 normalized values, and not leveraging the normalization mechanism to the
 weighers.
Changes introduced this commit:
1) it introduces weight normalization so that we can apply multipliers
 easily. All the weights for an object will be normalized between 0.0 and
 1.0 before being sumed up, so that the final weight for a host will be:
 weight = w1_multiplier * norm(w1) + w2_multiplier * norm(w2) + ...
2) weights.BaseWeigher has been changed into an ABC so that we enforce
 that all weighers have the expected methods.
3) weights.BaseWeigher.weigh_objects() does no longer sum up the
 computer weighs to the object, but it rather returns a list that will be
 then normalized and added to the existing weight by BaseWeightHandler
4) Adapt the existing weighers to the above changes. Namely
 - New 'offset_weight_multiplier' for the cell weigher
 nova.cells.weights.weight_offset.WeightOffsetWeigher
 - Changed the name of the existing multiplier methods.
5) unittests for all of the introduced changes.
Implements blueprint normalize-scheduler-weights
DocImpact: Now weights for an object are normalized before suming them
up. This means that each weigher will take a maximum value of 1. This
may have an impact for operators that are using more than one weigher
(currently there is only one weigher: RAMWeiger) and for operators using
cells (where we have several weighers). It is needed to review then the
multipliers used and adjust them properly in case they have been
modified.
Docimpact: There is a new configuration option 'offset_weight_multiplier'
in nova.cells.weights.weight_offset.WeightOffsetWeigher
Change-Id: I81bf90898d3cb81541f4390596823cc00106eb20
2013年12月11日 20:24:16 +01:00
Chris Yeoh
ebd23c945d Hide injected_file related quotas for V3 API
The injected_files, injected_file_content_bytes and
injected_file_path_bytes are all related to the
os-personalities extension which has been removed. They
can't be removed from the core quotas code as that has
to still support the V2 API. So for the V3 API we just
hide them.
DocImpact
Partially implements blueprint v3-api-remove-extensions
Change-Id: Iedb6e1427ac22f1926e929f3391e56403c37d088
2013年12月08日 23:17:28 +10:30
Jenkins
d83c9a6aa0 Merge "Added a new scheduler metrics weight plugin" 2013年12月07日 20:05:10 +00:00
Jenkins
3825ebcf81 Merge "Remove traces of V3 personality extension from api samples" 2013年12月07日 04:22:43 +00:00
Jenkins
578d8d4c14 Merge "Fix sample parameter of agent API" 2013年12月07日 02:27:30 +00:00
Jenkins
c5f68b6b75 Merge "Fix limits v3 follow API v3 rules" 2013年12月06日 07:20:09 +00:00
Lianhao Lu
bc32777e73 Added a new scheduler metrics weight plugin
The new metrics weigher can compute the weight based on the compute
node host's metrics data. The to-be weighed metrics and their
weighing ratio are specified in the configuration file as the
followings:
 metrics_weight_setting = name1=1.0,name2=-1.0
The final weight would be name1.value * 1.0 + name2.value * (-1.0).
This is part of the blueprint utilization-aware-scheduling.
DocImpact
Change-Id: Ib3e68505e6d4d8f6d67b54c5f00de3e1c172738c
2013年12月05日 11:14:31 +08:00
Shuangtai Tian
c087250048 Extends V3 servers api for pci support
All pci passthrough code is merged into nova, but the API does not support.
this patch extends the servers to show PCI information for instance and compute
node. This is a part of PCI APIs, for more information see the blueprint.
Partially implement blueprint pci-api-support
Change-Id: I99eeeca67983c49433ab0079f490a454d250f5e0
2013年12月04日 10:01:40 +00:00
Jenkins
ce51e0d77f Merge "Add flavor-access to core for V3 API" 2013年12月03日 02:08:29 +00:00
Jenkins
7402a0ba78 Merge "Remove V2 API version of coverage extensions" 2013年12月03日 01:38:46 +00:00
Jenkins
914b1df971 Merge "Add v3 api samples for shelve" 2013年11月26日 11:54:18 +00:00
Jenkins
b0218ec916 Merge "Add V3 API sample for server's actions" 2013年11月23日 01:47:31 +00:00
Jenkins
34dfcb732b Merge "Add v3 api samples for availability_zone" 2013年11月22日 10:51:30 +00:00
Jenkins
a777d5f80f Merge "Add V3 api samples for access_ips" 2013年11月22日 10:48:17 +00:00
He Jie Xu
a6d641d4e9 Add v3 api samples for shelve
Adds api sample tests and api samples for shelve
Partially implements blueprint v3-api-unittests
Partially implements blueprint v3-api-specification
Change-Id: Ib485ab042a340c4672ad01fb35d065fd52889b07
2013年11月22日 15:35:50 +08:00
Chris Yeoh
e9d426cc21 Remove traces of V3 personality extension from api samples
Removes occurences of the personality extension from the V3 API
samples as the extension has been removed. Cleanup of consistency
of image and flavor ref examples for the api samples.
DocImpact
Partially implements blueprint v3-api-remove-extensions
Change-Id: I43a34097904d3d7e280039c3d5d76479a49e92d0
2013年11月20日 22:49:27 +10:30
Ken'ichi Ohmichi
38c17db30a Fix sample parameter of agent API
The parameter of agent update API has been changed from "para" to
"agent" since Nova v3 API, and this patch fixes the sample doc.
Partially implements blueprint v3-api-specification
Change-Id: Ic9c0f11a637e48daa9457ab9ae923fefc0fb350d
2013年11月19日 15:25:09 +09:00
Chris Yeoh
0bfcfcdeec Remove V2 API version of coverage extensions
As discussed at the summit in the QA stream, this removes
the coverage extension from the V2 API.
According to the API Change Guidelines
https://wiki.openstack.org/wiki/APIChangeGuidelines
we should not be doing this. However the coverage
extension is a rather special case. It has security issues
such that it shouldn't be used in a production cloud
environment. It also doesn't work properly so its usefulness
to measure API coverage is limited. And in the past the presence of
this plugin has been used as a reason not to accept
an alternative technique to measure API coverage.
This is the proposed replacement
https://review.openstack.org/#/c/25882/
Change-Id: I07d798129ee277a6f7691c25f88c07a5204c0943
2013年11月18日 22:35:39 +10:30
He Jie Xu
a9e29b7e9f Fix limits v3 follow API v3 rules
* Add expected_errors decorator.
* Remove 'absolute_limit' from response, that already return by
extension quota_sets. And update api samples.
Partially implements bp nova-v3-api
Change-Id: Iea3ff494b8abed77fdc4b9e5e552784ed3733c34
2013年11月15日 11:16:51 +08:00
Chris Yeoh
332741760e Add flavor-access to core for V3 API
Adds the flavor-access plugin to the core list for the V3 API.
This is part of the process of adding all of the flavor related
extensions to core, with the exception of rxtx, as per the discussion
here: https://etherpad.openstack.org/p/NovaV3APICore
Note that since the alias changes from os-flavor-access to flavor-access
the api samples move directory and quite a few of other api samples
as well as flavor access is included by default.
Partially implements blueprint nova-v3-api
DocImpact
Change-Id: I9abc7df8f4620d462b0d381a2c0ed180c48f220e
2013年11月15日 10:48:00 +10:30
He Jie Xu
69c9baa117 Add V3 api samples for access_ips
Adds api sample tests and api samples for access_ips
Change-Id: I9d9249a48e7f7ccdff0146fbe5b25463d66a93a7
2013年11月14日 15:06:32 +08:00