Calamariwebinar Final 60171

Embed Size (px)

Citation preview

  • 8/10/2019 Calamariwebinar Final 60171

    1/29

    Calamari Overview

    June 2014

  • 8/10/2019 Calamariwebinar Final 60171

    2/29

    Calamari

    A high level interface for Cephadministrators:

    !

    Graphical user interface

    REST API

    !

    !

    First released in 2013 as part ofCeph Enterprise

    Inktank!

    Recently released as open sourcesoftware by Red Hat

    !

  • 8/10/2019 Calamariwebinar Final 60171

    3/29

    Ceph CLI

    # ceph statuscluster 2f4a59b1-ea72-4153-929e-eba559aca948

    healthmonma

    pmdsma

    posdmappgmap

    HEALTH_WARN

    3e1: 1 mons at

    near full osd(s){a=100.44.151.141:6789/0},{0=a=up:active}

    election epoe10:e16:

    v29:

    1/1/1 up3 osds: 3 up, 3 in264 pgs, 3 pools, 1894 bytes data, 20 objects

    315 GB used, 5655 MB / 338 GB avail128136

    7101 B/s

    active+clean+replayactive+clean rd,6 op/sclient io

  • 8/10/2019 Calamariwebinar Final 60171

    4/29

  • 8/10/2019 Calamariwebinar Final 60171

    5/29

  • 8/10/2019 Calamariwebinar Final 60171

    6/29

    For contrast: Ceph CLI

    # ceph osd dumpepoch 20fsid 2f4a59b1-ea72-4153-929e-eba559aca948 created

    2014-06-23 23:22:52.927811 modified 2014-06-2323:28:55.310487

    flagspool 0 'rbd' replicated size 3 min_size 1 crush_ruleset 0 object_hash rjenkins pg_nu

    pool 1 'cephfs_data' replicated size 3 min_size 1 crush_ruleset 0 object_hash rjenkistripe_width 0pool 2 'cephfs_metadata' replicated size 3 min_size 1 crush_ruleset 0 object_hash rjmax_osd 3osd.0 up in weight 1 up_from 19 up_thru 19 down_at 18 last_clean_interval [15,16)100.44.151.141:6804/29476 exists,up fc3c4961-1b55-4038-8b21-7b39f9c1d004osd.1 up in weight 1 up_from 19 up_thru 19 down_at 18 last_clean_interval [15,16)

    100.44.151.141:6810/29482 exists,up f246b34d-1023-4e86-a5cb-f068d2050a81osd.2 up in weight 1 up_from 19 up_thru 19 down_at 18 last_clean_interval [15,16)100.44.151.141:6822/29488 exists,upblacklist 100.44.151.141:6815/26222 blacklist100.44.151.141:6823/27374

    87335244-466c-4c42-859f-bf00109230a5expires 2014-06-23 23:49:11.465028 expires2014-06-23 23:52:52.126655

  • 8/10/2019 Calamariwebinar Final 60171

    7/29

  • 8/10/2019 Calamariwebinar Final 60171

    8/29

  • 8/10/2019 Calamariwebinar Final 60171

    9/29

  • 8/10/2019 Calamariwebinar Final 60171

    10/29

  • 8/10/2019 Calamariwebinar Final 60171

    11/29

  • 8/10/2019 Calamariwebinar Final 60171

    12/29

  • 8/10/2019 Calamariwebinar Final 60171

    13/29

  • 8/10/2019 Calamariwebinar Final 60171

    14/29

  • 8/10/2019 Calamariwebinar Final 60171

    15/29

  • 8/10/2019 Calamariwebinar Final 60171

    16/29

  • 8/10/2019 Calamariwebinar Final 60171

    17/29

  • 8/10/2019 Calamariwebinar Final 60171

    18/29

    REST example

  • 8/10/2019 Calamariwebinar Final 60171

    19/29

    Calamari API

    More than a proxy to Ceph CLI:

    High level operations: dont just issuea command, wait until it has taken

    effect.Consistency: dont consider operations

    complete until related state is updated in

    Calamari.

    Validation and informative errors.Asynchronous: a request ID to monitor

    for completion or cancellation, instead

    of blocking during operation.

    !

    !

    !

    !

  • 8/10/2019 Calamariwebinar Final 60171

    20/29

    Accessible APIdocumentation

    Available at http://calamari.readthedocs.org

  • 8/10/2019 Calamariwebinar Final 60171

    21/29

    Management Integration

    EASY

    isnow

    A higher level API iseasier to integrate with:

    !

    management tools likeHorizon

    open sourcemonitoring stacks

    your custom tools

    !

    !

    !

    Build custom dashboardsfor info you care about

    !

  • 8/10/2019 Calamariwebinar Final 60171

    22/29

    Calamari Architecture

    LAN

    salt-minion Diamond

    Ceph server

    salt-minion Diamond

    Ceph server

    salt-minion Diamond

    Ceph server

    salt-master graphite

    Calamari REST API

    Calamari service

    Calamari User Interface your app here

  • 8/10/2019 Calamariwebinar Final 60171

    23/29

    Technologies in Calamari

    Python/Javascript with emphasis onre-use:

    !

    Existing system components wherever!

    possible: SaltStack,Diamond, ZeroMQ,

    Familiar frameworks:

    graphite,PostgreSQL

    Django,!

    django-rest-framework, angular.js

    Downside: lots of dependencies - workongoing to simplify packaging.

    !

  • 8/10/2019 Calamariwebinar Final 60171

    24/29

    Calamari Extensibility

    Exploit existing frameworks pluginengines:

    !

    Extend agent-side code with existing

    module interfaces of Diamond andSaltStack

    Extend Calamari server with new

    ZeroRPC services and

    django-rest-framework ViewSets.

    !

    !

    REST is naturally extensible using URLnamespaces

    User Interface divided into apps

    !

    !

  • 8/10/2019 Calamariwebinar Final 60171

    25/29

    Calamari is now Open Source

    Source code:

    https://github.com/ceph/calamari

    https://github.com/ceph/calamari-clients

    Mailing list:

    http://lists.ceph.com/listinfo.cgi/ceph-calamari-ceph.c om

    Issue tracker:

    http://tracker.ceph.com/projects/calamari

    Documentation:

    http://calamari.readthedocs.orgLicensing:

    LGPL (python) and MIT (javascript)

  • 8/10/2019 Calamariwebinar Final 60171

    26/29

    Future

    Inktank Ceph Enterprise 1.2 coming soon:!

    http://www.inktank.com/enterprise/!

    Ceph Developer Summit!

    When: Tuesday June 24thWhere: online

    Plan Giant and Hammer Ceph releases

    Kick off community work on Calamari

    !

    !

    !

    !

    Get involved with the Ceph communityat:

    http://www.ceph.com

    !

  • 8/10/2019 Calamariwebinar Final 60171

    27/29

    "#$% &'()*

    &+%,#( -+.+/#'+(

    "#$%01'()*2,%34)%305#6

  • 8/10/2019 Calamariwebinar Final 60171

    28/29

    7

    9#%4)54 :1

    ;%8??>;@ABC@A

    -#%D4

  • 8/10/2019 Calamariwebinar Final 60171

    29/29

    B$)%3 *#G