See the upgrading instructions <upgrading>
for information on upgrading Flocker clusters from earlier releases.
You can learn more about where we might be going with future releases by:
- Stopping by the
#clusterhq
channel onirc.freenode.net
. - Visiting our GitHub repository at https://github.com/ClusterHQ/flocker.
- Tested against Docker version 1.9.1.
- The REST API now supports
conditional requests<conditional requests>
of the form "only create this dataset if the configuration hasn't changed since I last checked it", allowing for e.g. enforcement of metadata uniqueness. - Fixed a bug where
Flocker Plugin for Docker<docker-plugin>
could not create a dataset that had the same name as a previously deleted dataset. - Now supporting Ubuntu 15.10 instead of Ubuntu 15.04 for the Flocker client. See
installing-flocker-cli-ubuntu-15.10
. - Added documentation for the
EMC VMAX <emc-dataset-backend>
driver. - Region and zone configuration for AWS is now validated before use.
- Flocker now reports an error when busy EBS volumes can not be detached.
- Fixed a bug where Flocker would attempt to attach EBS volumes to device paths that are assigned to volumes attached outside of Flocker.
- Flocker now supports all valid Docker container names.
- The container API client now allows volumes to be attached to containers.
- The container API client now supports retrieval of container state.
- Fixed a bug where the Flocker control service sometimes listened on the wrong port.
- The
Flocker Plugin for Docker<docker-plugin>
now supports specifying the size during volume creation. - Fixed a bug where Flocker would fail to service requests that had an unexpected format.
- The
Flocker Plugin for Docker<docker-plugin>
is now able to use datasets created directly via Flocker so long as the metadata has a matching"name"
value. - Better error reporting for the Flocker Plugin for Docker.
- Added a new REST API for :http:get:looking up node identity by era</v1/state/nodes/by_era/(era)>; eras are reset after every reboot. This allows robust interaction with Flocker across reboots without getting stale data. As a result we were able to remove a delay in startup time that was a temporary workaround for the issue.
- Fixed a bug where datasets that hadn't had a filesystem created on them could never be mounted; existing flocker datasets without filesystems now have a filesystem created on them.
- Moved the installation instructions for the Flocker plugin for Docker, to prevent issues when installing and configuring the plugin.
- Added documentation for
Dell SC Series <dell-dataset-backend>
,Huawei <huawei-backend>
andNexentaEdge <nexenta-backend>
drivers.
- Prevent disconnect/reconnect cycles causing high CPU load.
- Added support for
storage profiles<storage-profiles>
.
- Updated the Vagrant tutorial box to work with Docker 1.9.
- The
Flocker plugin for Docker<docker-plugin>
is now compatible with Docker 1.9. - New EBS and OpenStack Cinder volumes created by Flocker will now have
flocker-<dataset ID>
as their name, to make it easier to find them in their respective cloud administration UIs. Existing volumes created by older versions of Flocker will continue to have no name.
- The
Flocker plugin for Docker<docker-plugin>
is now part of the core Flocker system, instead of an experimental Labs project. - Unexpected errors in agent state discovery no longer break the agent convergence loop.
- journald logs are now easier to filter and read. See the
documentation <flocker-logging>
for more information. - The control service uses much less CPU, allowing for larger clusters.
- Flocker CLI now installs on OS X 10.11.
- The
dataset API <api>
added support forleases <leases>
. Leases prevent a dataset from being deleted or moved off a node. - Fix line splitting when logging to systemd's journal.
- Various performance and scalability improvements.
- Remove limits on size of configuration and state in agent protocol.
- Prevent repeated restart of containers with CPU shares or memory limits.
- Fixed a bug in previous fix where OpenStack Cinder volumes failed to mount.
- Creation of a ZFS pool using ZFS 0.6.5 or later requires the setting of a
ZFS_MODULE_LOADING
environment variable.
- Fixed a bug where OpenStack Cinder volumes could be mapped to the wrong device and therefore mounted in the wrong location.
- If you upgrade to Docker 1.8.1 you may find pulling images unreliable in flocker-deploy and the Flocker Containers API due to Docker bug #15699. You may be able to workaround this by appending the image tag to the end of the image name (e.g. :latest).
- Flocker
.deb
and.rpm
packages no longer declare any dependency on a Docker package. Docker is required for the container management functionality but a Docker package must be selected and installed manually. This provides more control over the version of Docker used with Flocker. - Flocker's container management functionality now integrates with SELinux. Flocker can now be used in
SELinux=enforcing
environments. - Flocker now includes
bug reporting documentation<flocker-bug-reporting>
and an accompanying command line tool calledflocker-diagnostics
.
flocker-deploy
supports specification of the pathnames of certificate and key files. Seeflocker-deploy-authentication
.- The agent configuration file allows specification of a CA certificate for OpenStack HTTPS verification. See
openstack-dataset-backend
. - Flocker can now start containers using images from private Docker registries.
- On CentOS 7, installing or upgrading the
clusterhq-flocker-node
package now reloads thersyslog
service to ensure that Flocker logging policy takes immediate effect.
- On Ubuntu-14.04, log files are now written to /var/log/flocker and rotated in five 100MiB files, so as not fill up the system disk.
- On CentOS 7, Flocker logs are no longer written to /var/log/messages since this filled up disk space too quickly. The logs are still available via journald.
- The "on-failure" and "always" restart policies for containers have been temporarily disabled due to poor interaction with node reboots for containers with volumes (FLOC-2467). See
restart policy<restart configuration>
.
Upgrading is strongly recommended for all users of v1.0.0.
- The EBS storage driver now more reliably selects the correct OS device file corresponding to an EBS volume being used.
- Additional safety checks were added to ensure only empty volumes are formatted.
- ClusterHQ Labs projects, including the Flocker Docker Plugin and an experimental Volumes CLI and GUI are now documented in the
Labs section <labs-projects>
.
- Dataset backend support for
AWS Elastic Block Storage (EBS)<aws-dataset-backend>
,OpenStack Cinder<openstack-dataset-backend>
, andEMC ScaleIO and XtremIO<emc-dataset-backend>
. - Third parties can write Flocker storage drivers so that their storage systems work with Flocker. See
contribute-flocker-driver
. - It is now necessary to specify a dataset backend for each agent node. See
post-installation-configuration
. - Flocker-initiated communication is secured with TLS. See
authentication
. flocker-deploy
now requires the hostname of the control service as its first argument.- Added REST API functions to manage containers in a cluster alongside datasets. See
api
. - Removed support for installing
flocker-node
on Fedora 20. - Ubuntu CLI installation instructions now use Debian packages instead of pip packaging. See
installing-flocker-cli-ubuntu-14.04
andinstalling-flocker-cli-ubuntu-15.04
. - Bug fixes and improvements focused on security and stability across platforms.
- New
REST API<api>
for managing datasets. - Applications can now be configured with a
restart policy<restart configuration>
. - Volumes can now be configured with a
maximum size<volume configuration>
. - Documentation now includes
instructions for installing flocker-node on CentOS 7<centos-7-install>
. - SELinux must be disabled before installing Flocker. A future version of Flocker may provide a different integration strategy.
- Documented how to configure the Fedora firewall on certain cloud platforms.
- Applications can now be
configured with a CPU and memory limit<configuration>
. - Documentation now includes instructions for installing flocker-node on Fedora 20.
- Documentation now includes instructions for deploying
flocker-node
on three popular cloud services:Amazon EC2<aws-install>
,Rackspace<rackspace-install>
, and DigitalOcean.
geard
is no longer used to manage Docker containers.- Added support for Fig compatible
application configuration <fig-compatible-config>
files.
- Moving volumes between nodes is now done with a two-phase push that should dramatically decrease application downtime when moving large amounts of data.
- Added support for environment variables in the
application configuration<configuration>
. - Added basic support for links between containers in the
application configuration<configuration>
.
Everything is new since this is our first release.