We are delighted to announce the release of: senlin 1.0.0: OpenStack Clustering This release is part of the mitaka release series. Please report issues through launchpad: https://bugs.launchpad.net/senlin For more details, please see below. 1.0.0 ^^^^^ New Features ************ * We no longer support soft-delete in senlin database. Marking an entity as soft-deleted is causing more problems than brining any convenience. * Action list now can be filtered by its 'status' property. * Added support of multi-tenancy for actions. * Added senlin.policy.affinity-v1.0 which can be used to control how VM servers are placed based on nova servergroup settings. * New actions for checking and recovering nodes/clusters are added. * Added new APIs for cluster/node check and recover. * Added support to limit number of clusters per project. * Clusters now have a new 'RESIZING' status when its scale is being changed. * The builtin deletion policy can handle cross-region and cross-zone nodes selection. * Supporting engine status scheck, with senlin-manage command. * Event list can now be filtered by its 'level' property. * Adde support to multi-tenancy for event resources. * Profile types and policy types are explicitly versioned now. We have the version string appended to the type names for easier detection. * New health check daemon is introduced to do periodical cluster status checking. It collaborates with health policy on cluster monitoring. * Improved action scheduler so that it can pick an action that is READY to be executed from DB. * Added LBaaS health monitor support to load-balancing policy v1.0. * Added support to steal a lock from dead engine. * Added support to multi-tenancy (aka. project_safe checking) when finding resources. * Use 'sort' instead of 'sort_keys' and 'sort_dir' for object sorting. * Nova server proflie now supports block device mapping v2 (BDMv2). * Enabled update to the 'flavor' of a nova server profile. * Enabled update to the 'name' of a nova server profile. * Added profile property checking regarding whether they are updatable. * Support to 'senlin-manage purge_deleted <age> [<unit>]' is added. * New abstraction 'receiver' has been added as a generic way to notify the senlin engine that something interesting has happended. * An experimental pollicy for placing nodes across multiple regions. * Removed support to 'trigger' abstraction. * Make sure 'spec' of a profile is immutable after a profile object is created. The only way to "update" a profile is to create a new one. * Added command 'senlin-manage service list' to show the status of engine. * Added command 'senlin-manage service clean' to clean the dead engine records. * Add support to update image property of a Nova server. * Added support to updating network properties of a nova server. * Both image ID and image name are supported when creating os.nova.server profile. Upgrade Notes ************* * Database tables have to be recreated as we have removed soft- delete support from both the DB layer and the engine layer. * Senlin API has removed 'tenant_id' from its endpoint. This means users have to recreate their keystone endpoints if they have an old installation. * Webhook abstraction is removed. New usage model of webhooks is through the 'receiver' abstraction. * Node actions NODE_JOIN and NODE_LEAVE are removed from API surface. * Removed cluster policy enable/disable support. We will use more generic interface cluster policy update for these use cases. * Removed permission property from profiles. We will devise a RBAC mechanism as an alternative. * Status *DELETED* is removed from clusters and nodes. * Timestamp fields like 'created_time' and 'udpated_time' are renamed to 'created_at' and 'updated_at' respectively. * As a side-effect of the rework of action dependency, a new table has been added to the database. * Senlin binaries are all made as console script entries. Bug Fixes ********* * When referenced objects are not found in an API request, 400 is returned now. * Reworked action status check so that a cluster action will always return from WAITING status. * Fixed profile type checking error when attaching affinity policy. * Fixed parsing of default values for 'max_size' and 'min_size' properties of a cluster. * Fixed race condition in service deletion. * Fixed APIs that spawn asynchronous operations to return 202 as status code. * Fixed a bug related to setting the next_index property of a cluster after new nodes have joined or existing nodes have left. * Fixed cluster-list function so that 'global-project' can be specified. * Removed useless parameters ('user', 'project', etc.) from filtering when listing clusters. * Added parameter sanitization for cluster-policy-attach. * Fixed RC/role checking in the setup-service script. * Enforce multi-tenancy checking when a non-admin user attempting to list resources from projects other than that of the requesting user. * Fixed a bug related to using the 'name' property of a nova server profile. * Fixed parameter checking when listing resources, such as sort and filters. * Added parameter checking for policy-create API calls. * Added parameter checking for cluster-policy-detach API invocation. * Added parameter checking for cluster-policy-update API invocation. * Reworked action dependency to avoid indefinite waiting problem. * Fixed trust usage when interacting with keystone. This enables senlin to be deployed on a Juno version OpenStack. Other Notes *********** * DB isolation level defaults to READ_COMMITTED in order to solve concurrency problems encountered in action dependency checking. * Added documentation for senlin.policy.deletion-v1.0. * Added configuration option for enforcing name uniqueness. * Added documentation for lb policy, affinity policy, scaling policy, zone placement policy and region placement policy. * Senlin API documentation merged into api-site and published. * Added user documentation for 'receiver'. * Added developer documentation for 'receiver'. * Removed documentation for 'webhook'. * The property 'priority' and 'level' are removed from policy create/update. * Command *senlin-manage purge_deleted* is removed. * Ensure there is no underscores ('_') in resource names exposed through RESTful API * User documentation for events and actions have been added. * User documentation (including developer docs) are published on official site. Changes in senlin 1.0.0.0rc2..1.0.0 ----------------------------------- 4da9639 Fix event generation Diffstat (except docs and test files) ------------------------------------- senlin/engine/event.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)