Top Banner
Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek <[email protected]>
31

Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

Jan 12, 2016

Download

Documents

Elijah Butler
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

Is the

Apache Directory Server the new

challenger to FedoraDS and OpenLDAP ?

Emmanuel LécharnyIktek

<[email protected]>

Page 2: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

2

Planning

•1- Introduction•2- Features comparison•3- Compared performances•4- Future evolutions•5- Conclusion...•6- Q&A

Page 3: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

3

1-Introduction

Page 4: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

4

2-1 Functionalities

Page 5: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

5

Generalities

ApacheDS FedoraDS OpenLDAPLdapV3 Code Java C/C++ C/C++Documentation Well, err... Extensive SpareBooks None None 2Licence ASL 2.0 GPL OPLBacked by organizationApache RedHat ManyOrigin Genuine Michigan university

Page 6: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

6

Technical elements

ApacheDS FedoraDS OpenLDAPInstallation Installer Installer Package/buildBackend JDBM RDBMS allowed BDB, GDB...Transaction RDBMS ExtensionMulti-backend Yes Replication Mitosis M/M 4 ways M-M M-SSchema Compilation Dynamic/GUI Static/filesReferrals Attribute Encryption Subtrees specification

Page 7: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

7

Security

ApacheDS FedoraDS OpenLDAPSSL V3 TLS Soon... SASL Soon... ACIs Partial ?Attribute Encryption

Page 8: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

8

2-2 Apache DS

Page 9: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

9

Apache DS structure

Page 10: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

10

Apache Directory Server• Full RFCs compliance• Embeddable• Layered architecture• Extensible (Kerberos, DNS, DHCP...)• Implements X500 Administrative

model• Written in Java => multi-platform

Page 11: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

11

Apache DS X500 extensions

•X.500 Directory Administrative Model

•Basic Access Control Scheme•Collective Attributes•Subentries

Page 12: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

12

Subentries

• Selections• Exclusions• Levels• Filtering• ...

Page 13: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

13

ADS drawbacks• It's young !• Lot of bugs to be fixed (memory leaks)• Replication is to be delivered by october• Large object remains in memory• Backend : JDBM only at the moment• Documentation is lacking• It's a large piece of software, and we are

few working on it...

Page 14: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

14

3- Performance

Page 15: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

15

Tests

•3 tests :•Added 10K users•Random search through the base

•Delete all the 10K users•“Out of the box” installation• We just wanted to know if we are

really bad ;)

Page 16: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

16

Users• Use of MakeLdif to create users :

dn: uid=user.3776,ou=People,dc=cs,dc=hacettepe,dc=edu,dc=trobjectClass: topobjectClass: personobjectClass: organizationalPersonobjectClass: inetOrgPersongivenName: Janeczkasn: Favreaucn: Janeczka Favreauinitials: JFuid: user.3776mail: [email protected]: passwordtelephoneNumber: 510-586-6567homePhone: 143-449-3159pager: 012-704-9314mobile: 105-287-9092employeeNumber: 3776street: 55438 Ash Streetl: Steubenvillest: MTpostalCode: 77097postalAddress: Janeczka Favreau$55438 Ash Street$Steubenville, MT 77097description: This is the description for Janeczka Favreau.

Page 17: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

17

Typical search request

• Search for a single user, randomly picked

• Perform 10K searches• The cache is not likely to be used at run 1

• 10 runs• The fastest and slowest are removed

uid=user.@,ou=People,dc=cs,dc=hacettepe,dc=edu,dc=tr

Page 18: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

18

Insertion/deletion

Row 90

100

200

300

400

500

600Add 10K users

ADS AddFDS AddOL Add

Servers

Tim

e in s

eco

nds

Row 190

100

200

300

400

500

600Delete 10K users

ADS DelFDS DelOL Del

Servers

Tim

e in s

eco

nds

(Smaller pyramids is better)

Page 19: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

19

Search run

1

2

5

8

10

15

20

100

0

400

800

1200

1600

Ldap servers performance test : random search

ADS

FDS

OL

Nb threads

Searc

h R

eq/s

Page 20: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

20

Performance issues

• Better cache mechanism needed• ASN.1 codec can be improved (15% total)• Needeless Attribute checking (12% total)• DN processing optimization (10% total)• Serialization improvement• Some operations are done many times• Backend is not optimal• Memory allocation => GC

Page 21: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

21

What has already been done

• DN comparison improved : ADS 4x times faster !!! (with a single line modified :)• One day to work this out• Thanks to yourKit profiler!

• ASN.1 codec is much faster (10x)• 6 months of work, 40 000 SLOCs

• LdapDN is 2.7x faster than LdapName• 2 months of work, difficult to merge in

ADS :(

Page 22: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

22

4- Evolution

Page 23: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

23

Backend

• JDBM is the actual backend• Berkely DB JE© is a possible target• RDBMS soon...• Needs :

• Fast backend• Reliable backend

• Transactions support

Page 24: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

24

Tooling (RCP- Eclipse plugin)

• Start/Stop• Import/export

• LDIF• DSML 1.0/2.0

• UI Schema Manager• Ldap Browser• Ldap Proxy

Page 25: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

25

Replication• Replication is a must-have

• Master-Slave replication (OpenLDAP) OR• Multi-Master replication (FDS)

• RFC 3384 => Multi Master replication• Draft by Zeilenga says : 'LDAP Multi-

master Replication Considered Harmful'

• What about ADS ?

Page 26: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

26

SP and Triggers

• SP : stored procedure• Support Java language, but scripting

languages as Janino or Jython may be added later

• Ease some management operations

• Triggers with pre/post operations• Fine grained replication • E-Provisioning

Page 27: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

27

Standards• New RFCs : RFCs 4510 -> 4519

• Better X500 compliance• Internationalization explained• Clarification on previous RFCs• Imply some modification, but not so

much.

• Collectives attributes support (RFC 3671)

• Subentries support (RFC 3672)

Page 28: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

28

5-Conclusion

Page 29: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

29

Links• Apache Directory Server site and

documentation :• http://directory.apache.org/

• http://directory.apache.org/subprojects/apacheds/features.html

• http://directory.apache.org/subprojects/apacheds/index.html

• http://directory.apache.org/subprojects/mina/index.html

• Articles• http://www-128.ibm.com/developerworks/opensource/edu/os-dw-os-ag-ld

ap1.html

• http://www-128.ibm.com/developerworks/java/library/j-apacheds1/

• http://www-128.ibm.com/developerworks/java/library/j-apacheds2/

• http://www.screaming-penguin.com/main.php?storyid=4972

Page 30: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

30

Thanks !• Alex Karasulu, “the brain” !• Trustin Lee, Mina's father• Ersin Er, Sp and Triggers• Stefan Zoerner, tests and docos• Brett Porter, Maven and now MVN :)• And Peter Royal, Cyrille Leclerc, Stéphane

Bailliez, Pierre-Arnaud Marcelot for their help and support !

Special thanks to Zinedine Zidane !

Page 31: Is the Apache Directory Server the new challenger to FedoraDS and OpenLDAP ? Emmanuel Lécharny Iktek.

31

6-Q&A