All of lore.kernel.org
 help / color / mirror / Atom feed
* rados_dll: A Windows port of librados
@ 2015-03-19  5:35 Alistair Israel
  2015-03-19  7:41 ` Loic Dachary
  2015-03-19 15:27 ` Sage Weil
  0 siblings, 2 replies; 8+ messages in thread
From: Alistair Israel @ 2015-03-19  5:35 UTC (permalink / raw)
  To: ceph-devel

Hi, ceph.

We are pleased to announce our first milestone in bringing Ceph to the
Windows platform, by porting librados into rados.dll.

https://github.com/AcalephStorage/rados_dll

Many thanks to dketor@gmail.com and the ceph-dokan project for
providing the springboard and early consultation with which we were
able to embark upon this course (we've also forked ceph-dokan and are
looking to be active contributors to that project).

### Overview

  * rados_dll is built using mingw, like ceph-dokan
  * Currently, it builds rados.dll, used by rados_client.exe
  * rados.dll provides the librados C API (linking C++ using .DLLs is
problematic)
  * rados_client.exe follows example code here
(http://ceph.com/docs/master/rados/api/librados-intro/) to drive
rados.dll, connect to a Ceph cluster and perform I/O
  * LGLP v2.1

### Details

Currently, rados_dll is built, similar to ceph-dokan, from source
files copied over from ceph/src and with _WIN32 specific
modifications. It is built using gcc, and uses winsock.

### Next steps

We've had to disable cephx authentication for now, obviously we need
to get this ported and working properly.

Currently, the build environment has to be carefully prepared by hand.
We're looking to add scripts to help ease and automate that process.

We're looking to streamline merging of changes from 'upstream' ceph.
First, we intend to remove unmodified source files from the src/
directory and use upstream ceph/src directly.

Next, we're looking to use tools (e.g. diff/patch, sed) to the apply
_WIN32 specific modifications in an automated manner whenever possible
to generate _WIN32 sources.

We hope to gain enough traction and credibility to contribute _WIN32
specific sections (with appropriate guards) to ceph core code.
Eventually, hopefully, we might be able to build rados.dll (along with
other Ceph components that can be ported to Windows) directly from a
single set of source files.

Finally, our Makefile is hand-written (as with ceph-dokan), and we
welcome any help to be able to standardise on using the autotools
toolchain to automate that as well (or integrate with upstream).

### Roadmap

We're looking at tackling RBD soon, and provide a native, Windows
system-level block device backed by Ceph. ;)

We welcome any and all comments, suggestions, and support.

### Who we are

Acaleph is a small startup headquartered in Singapore, but operating mostly from
the Philippines, and we provide Ceph deployment, integration, support
and other services.

Julio Telan is a graduating student from De La Salle University
spending his internship at Acaleph, mentored by yours truly.

Cheers!

Alistair A. Israel, alistair@acale.ph
Julio Telan, julio_telan@dlsu.edu.ph

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-03-24 15:59 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-19  5:35 rados_dll: A Windows port of librados Alistair Israel
2015-03-19  7:41 ` Loic Dachary
2015-03-19 15:27 ` Sage Weil
2015-03-20  2:45   ` Ketor D
2015-03-24 12:14     ` Alistair Israel
2015-03-24 15:59       ` Ketor D
2015-03-24 11:26   ` Alistair Israel
2015-03-24 13:55     ` Gregory Farnum

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.