Red Hat Storage 1.2.3 Release Notes

Ceph Storage v1.2.3 release notes.

Red Hat Customer Content Services

Red Hat Ceph Storage 1.2.3 Release Notes

Ceph Storage v1.2.3 release notes. Legal Notice

Copyright © 2017 Red Hat, Inc.

The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/ . In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.

Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.

Red Hat, Red Hat Enterprise , the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.

Linux ® is the registered trademark of in the United States and other countries.

Java ® is a registered trademark of Oracle and/or its affiliates.

XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js ® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack ® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.

All other trademarks are the property of their respective owners.

Abstract The Release Notes document describes the major features and enhancements implemented in Red Hat Ceph Storage and the known issues in this v1.2.3 release. Table of Contents

Table of Contents

.C .H . A. P. .T .E .R . .1 .. .A . C. K. .N .O . W. . L. E. D. .G . M. .E .N . T. S...... 3 ......

.C .H . A. P. .T .E .R . .2 .. .O . V. E. .R .V . I.E .W ...... 4 ...... 2.1. PACKAGING 4 2.2. CEPH CORE 4

.C .H . A. P. .T .E .R . .3 .. .C . E. P. H. . M. .O . N. I.T . O. R. .S ...... 5 ......

.C .H . A. P. .T .E .R . .4 .. .C . E. P. H. . O. .S .D . S...... 6 ......

.C .H . A. P. .T .E .R . .5 .. .C . E. P. H. . B. .L .O . C. K. . D. E. .V .I C. .E ...... 7 ......

.C .H . A. P. .T .E .R . .6 .. .C . E. P. H. . O. .B .J .E . C. T. . G. A. .T .E . W. .A . Y...... 8 ......

1 Red Hat Ceph Storage 1.2.3 Release Notes

2 CHAPTER 1. ACKNOWLEDGMENTS

CHAPTER 1. ACKNOWLEDGMENTS

We would like to thank everyone who contributed to this release, including but not limited to:

Sage Weil

Dan Mick

Joao Eduardo Luis

Samuel Just

David Zafman

Loic Dachary

Josh Durgin

Mark Kirkwood

Ma Jianpeng

Somnath Roy

Jason Dillaman

Adam Crume

Pawel Sadowski

Danny Al-Gaaf

Dong Lei

Dan van der Ster

Florian Haas

Alexandre Marangone

Yehuda Sadeh-Weinraub

Erik Logthenberg

Robert Hubbard

Boris Ranto

Johnu George

Mark Kirkwood

We would also like to acknowledge and extend a special thank you to Ceph veteran, Sandon Van Ness, who passed away unexpectedly on February 23, 2015. He was 29 years old.

3 Red Hat Ceph Storage 1.2.3 Release Notes

CHAPTER 2. OVERVIEW

Red Hat Ceph Storage v1.2.3 is the first release of Ceph Storage using the Red Hat build process. This version includes all the features of Inktank Ceph Enterprise v1.2.2 and the enhancements described in these release notes. Between v1.2.2 and v1.2.3, there were no major features added.

2.1. PACKAGING

The primary change between v1.2.2 and v1.2.3 involves building Ceph using the Red Hat build tools. This implies packaging changes. Packaging changes include:

1. The ceph-mon and ceph-osd binaries were previously in the main ceph RPM. They are now split up into separate ceph-mon and ceph-osd packages.

2. The ceph-devel package has been split up into separate librados-devel and librbd-devel packages.

3. The python-ceph package has been split up into separate python-rados and python- rbd packages.

4. The libcephfs1 package and its headers are no longer present in v1.2.3.

5. For the installer, the ice_setup.py utility is no longer a single file. It is a full ice_setup RPM.

6. The RHCS ISOs do not contain the ceph-radosgw package or radosgw-agent packages. These packages are available in Red Hat’s "RH-COMMON" channel for RHEL 6 and 7. See the Object Gateway documentation for more details about how to add this repository using subscription-manager.

7. The RHCS ISOs for RHEL 6 do not contain qemu-kvm. This package is available from Base RHEL or other add-on channels.

8. The RHCS ISOs for RHEL 6 do not contain xfsprogs. This program is available through the Scalable File System add-on. See the Red Hat Ceph Storage Installation Guide or Object Gateway documentation for more details about how to add this repository using subscription-manager.

2.2. CEPH CORE

Enhancements in Ceph’s core features include fixes for ceph-disk; namely, dmcrypt key permissions and key location; and more robust checks for partitions.

The librados API now closes an I/O context cleanly on shutdown, handles reply race with pool deletion and its C API operates effectively when read timeout is enabled.

Enhancements to CRUSH include aligning rule and ruleset IDs; addressing negative weight issues during create_or_move_item and preventing buffer overflows in erasure-coded pools.

Erasure-coding and cache tiering are tech previews only and are not supported for production clusters.

4 CHAPTER 3. CEPH MONITORS

CHAPTER 3. CEPH MONITORS

Enhancement to Ceph monitors include fixes to rare corner cases for Paxos, and new Paxos instrumentation. Ceph monitors also abort start-up if the monitor’s data disk is too full. Ceph monitors also have improved osdmap trimming.

5 Red Hat Ceph Storage 1.2.3 Release Notes

CHAPTER 4. CEPH OSDS

Enhancements to Ceph OSDs include adding new erasure-code regression tests, adding use- after-free code in cache tiering code, handling EC + primary affinity misdirected op checks properly, and mounting XFS with inode64 by default.

Erasure-coding and cache tiering are tech previews only and are not supported for production clusters.

Ceph OSD journals have enhancements to direct-io shutdown, journal dump, snap trimming performance, and snapdir handling on cache eviction.

Peering enhancements include clearing rollback PG metadata on PG deletion, addressing occasional stalls during peering or activation, and displaying past_interval values correctly.

Backfill enhancements include making backfill reservation denial handling more robust, fixing full OSD checks during backfill, and removing bad backfill assertions for mixed-version clusters.

Additional enhancements include cleanly aborting set-alloc-hint operations during upgrade; cancelling callback on blacklisted watchers; not aborting deep scrub if hinfo is missing; parsing ioprio properly; processing admin socket dump_ops_in_flight properly; handling map gaps in map advance code; handling undefined CRUSH results in interval check; including shard in JSON dump of ghobject; and, fixing invalid memory reference in log trimming.

6 CHAPTER 5. CEPH BLOCK DEVICE

CHAPTER 5. CEPH BLOCK DEVICE

Block device enhancements are to librbd, and include capping memory utilization for read requests; preventing closure of a closed parent image on failure; ensuring diff tests run properly; and, protecting list_children from invalid pools.

The Ceph kernel block device is only available for RHEL 7 and beyond. It is not available or supported on RHEL 6 and earlier versions of RHEL.

7 Red Hat Ceph Storage 1.2.3 Release Notes

CHAPTER 6. CEPH OBJECT GATEWAY

Gateway enhancements include packaging improvements; ensuring sysvinit scripts run the Ceph Object Gateway under a context as needed; and, using standard rules for RHEL7. The gateway now adds .log messages to the default log path and separates civetweb logs from the rgw log. There is also a fix for civetweb URL decoding.

The gateway uses mod-proxy-fcgi instead of mod-fastcgi, and includes some clean up for the FastCGI request context.

The gateway now sets a length for Keystone token validation, and improves subuser creation for Swift. There is also a fix for the object tail test.

The gateway has a few improvements for REST calls; it will no longer try to authenticate CORS preflight requests; calculates hash codes properly during PUT operations; and, it converts header underscores to dashes.

On copy operations, the gateway will now copy object data even if the copy target is in a different pool from the copy source.

8