peeringdb 2 - enog · 2016. 8. 22. · peeringdb 2.0 arnold nipper [email protected] 7 - 8 june,...

33
PeeringDB 2.0 Arnold Nipper [email protected] 7 - 8 June, 2016 ENOG11, Moscow 1

Upload: others

Post on 11-Sep-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

PeeringDB 2.0

[email protected]

7-8June,2016 ENOG11,Moscow 1

Page 2: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Agenda

• PeeringDB2.0• MembershipandGovernance• CommiFees•  Sponsorship•  InformaJonandResources

7-8June,2016 ENOG11,Moscow 2

Page 3: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

What is PeeringDB?

•  PeeringDBisthedatabaseofpeeringinformaJonontheInternet•  ContainspeeringlocaJonandcontactinformaJonfor

•  Networks•  Exchanges•  FaciliJes

•  APeeringDBrecordmakesiteasyforpeopletofindyou,andhelpsyoutoestablishpeering

•  Ifyouaren’tregisteredinPeeringDB,youcanregisterathFps://www.peeringdb.com/register

• WeusebasicverificaJonfornewaccountsandrequirecurrentwhoisinformaJon

•  PleaseupdateyourwhoisinformaJon•  Pleaseregisterfromacompanyemailaddress

7-8June,2016 ENOG11,Moscow 3

Page 4: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

PeeringDB 2.0 is Here!

• PeeringDB2.0launched15March,2016•  Backenddatabase(1.0)disconJnuedsimultaneously•  LastlegacySQLdumpforpublicconsumpJon:hFps://peeringdb.com/v1/dbexport/peeringdb.sql

•  InvesJgaJng404sforoldSQLtocontactusers•  [email protected]

• Challengesduringthelaunch•  Veryminorbugfixesrequired,butoverallasuccess!•  LotsofsupportJckets•  20C(developercontractor)veryresponsivetocommunity-thanks!

• Currentrelease:2.0.10

7-8June,2016 ENOG11,Moscow 4

Page 5: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Key New Infrastructure Features •  CompleterewriteinPython

•  Python:fastandclean,widelyusedandsupported•  HTML5:adapJvedesignfordesktopandmobile•  SupportforamulJdeveloperenvironment

•  RedesignedschemawithdatavalidaJon•  Alldataispermissionedandeditable•  InputvalidaJononfields:IPaddresses,emailaddresses,etc.•  ValidaJoninPeeringDBrecord:dropdownboxtoselectASNatexchange

•  Dataversioning•  Revisionhistoryforeverydatachange•  Easytorestoreandrollback•  HistoricaldataimportfromCAIDAgoingbackto2010(notavailableyet)

•  RESTfulAPI•  Stateless•  Incrementaldatabasesyncs•  WithdocumentaJonandtools,ohmy!

7-8June,2016 ENOG11,Moscow 5

Page 6: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Key New User Features •  FaciliJesandexchangescannowupdatetheirowninfo

•  NetworksaresJllrequiredtoassociatetheirrecordatafacilityorexchange•  MulJplerecordsofanytypecanbeassociatedwithanorganizaJon

•  SimplerorganizaJonmanagementwithasingleaccountfornetwork,facility,exchangerecords

•  OneaccountcanmanagemulJpleorganizaJons•  Manageallofthethingswithasingleaccount

•  Userscanmanagetheiraccounts•  AdminaccountforanorganizaJoncandelegatefine-grainedpermissions

•  Contactinfohaspermissions•  Private/users/publicpermissions•  Allusersmustregister,nomoreguestaccount•  Publicviewcanseeallinfoexceptcontactinfo(nologinneeded)

•  APIsandlocaldatabasesync•  SyncPeeringDBtoalocaldatabaseinanyengineformat

7-8June,2016 ENOG11,Moscow 6

Page 7: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Multiple Records Under a Single Organization

7-8June,2016 ENOG11,Moscow 7

Facili1esareShownHereLINXhas1Facility

NetworksareShownHereLINXhas2NetworkRecords

ExchangesareShownHereLINXhas6ExchangeRecords

Page 8: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

One Account Managing Multiple Organizations

7-8June,2016 ENOG11,Moscow 8

Account“job”isAffiliatedwith4Organiza1ons

Page 9: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Request Ownership of an Existing Organization •  NetworkrecordsshouldalreadyhaveanorganizaJonadmincopiedfromPeeringDB1.0

•  FacilityandexchangerecordswillneedtohaveanorganizaJonadminassigned

7-8June,2016 ENOG11,Moscow 9

Click“RequestOwnership”GeneratesaSupportTicketforValidaJonandApproval

Page 10: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Register or Request Affiliation to an Existing Organization

7-8June,2016 ENOG11,Moscow 10

1.GotoYourProfile2.ConfirmEmailAddress(ClickHereifnotConfirmed)

3.EnterASNorOrganiza1onHereAutocompleteonExisJngASNsandOrganizaJonsin

PeeringDB

4.Click“Affiliate”ExisJng:OrganizaJon

AdminNeedstoApproveNew:GeneratesaSupportTicketforValidaJonand

Approval

Page 11: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Organization User Management

7-8June,2016 ENOG11,Moscow 11

ApproveorDenyPendingRequests

DelegatePermissionsforMembersAdminsHaveAccesstoEverything

ChangeUserAccessLevelsAdmin–Administrator

Member–DelegatePermissions

RemoveUsersFromtheOrganiza1onDoesnotRemovetheUserAccountFromPeeringDB

Page 12: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Administrative Permission Delegation

7-8June,2016 ENOG11,Moscow 12

User“rho”canManagethe“EquinixConnect”NetworkRecord,andAnyExchangeorFacility

User“equinix-uk”canManageSeveralNetworkRecords,butnoExchangesorFacili1es

Create–NewEntriesinRecordUpdate–ChangeExis1ngEntriesinRecordDelete–DeleteEntriesinRecord

Page 13: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Network Record Contact Information Permissions

7-8June,2016 ENOG11,Moscow 13

SeparateVisibilityPreferencesforEachRolePrivate–OrganizaJonOnly(Default)

Users–RegisteredUsersOnlyPublic–Anyone(noLoginRequired)

Roles:AbusePolicy

TechnicalNOC

PublicRelaJonsSales

Page 14: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Networks from ENOG area (selected)

7-8June,2016 ENOG11,Moscow 14

IXP #networks@PeeringDB #networksseen@IXP

MSK-IX 133 380

DATA-IX 80

DTEL-IX 58 95

UA-IX 44 102

SPB-IX 38 85

GigaNET 26 22

Global-IX 12

EKT-IX 12 43

PIRIX 11

NSK-IX 10 48

Page 15: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

RESTful API Designed for Automation

•  AlloperaJonsaresupportedandaredesignedtobeautomated•  Read•  Create•  Update•  Delete

•  Eachobjecttypehasanassociatedtag•  org•  net•  ix•  fac

•  Listofobjects:hFps://peeringdb.com/apidocs/•  APIdocumentaJon:hFp://docs.peeringdb.com/api_specs/

7-8June,2016 ENOG11,Moscow 15

Page 16: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Quick Examples Return Output in JSON

•  Listallnetworks:curl -X GET https://<username>:<password>@www.peeringdb.com/api/net

•  Showaspecificnetwork:curl -X GET https://<username>:<password>@www.peeringdb.com/api/net/20

7-8June,2016 ENOG11,Moscow 16

{"meta": {}, "data": [{"id": 20, "org_id": 10356, "org": {"id": 10356, "name": "20C", "website": "http://20c.com", "notes": "", "net_set": [20], "fac_set": [], "ix_set": [], "address1": "", "address2": "", "city": "Chicago", "country": "US", "state": "IL", "zipcode": "", "created": "2014-11-17T14:59:34Z", "updated": "2016-03-23T20:39:18Z", "status": "ok"}, "name": "20C", "aka": "", "website": "http://20c.com", "asn": 63311, " ... }

Page 17: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Local Database Sync

• DatabasesyncgivesyoualocalcopyofPeeringDBforcustomizaJonorinternaluse

•  Syncasomenasyoulike•  Incrementalsyncissupported

•  ImprovesperformanceandreducesloadonPeeringDBservers• Buildcustomindexesandinterfaces• Addcustomfields• Choiceofdatabaseengines

•  Currentlysupported:MySQL,Postgres,SQLite

•  SyncusingtheprovidedtoolsorbuildyourownusingtheAPI

7-8June,2016 ENOG11,Moscow 17

Page 18: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Django Library

• django-peeringdbisaDjangolibrarywithalocalPeeringDBdatabasesync

• Definesthedatabaseschematocreatealocaldatabasecopy•  Easytointegrateinacommonframeworkforlocalstoolsandcustominterfaces

•  SupportsmulJpledatabaseengines(MySQL,Postgres,SQLite)• AvailableathFp://peeringdb.github.io/django-peeringdb/

7-8June,2016 ENOG11,Moscow 18

Page 19: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Python Client

• peeringdb-pyisaPythonclientforPeeringDB• GetsobjectsandoutputsinJSONorYAMLformat• Providesawhois-likedisplayofrecords•  Integratedlocaldatabasesync• PythonlibraryforintegraJonwithcustomtools

• AvailableathFp://peeringdb.github.io/peeringdb-py/•  ExamplesathFps://github.com/grizz/pdb-examples

7-8June,2016 19ENOG11,Moscow

Page 20: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Agenda

• PeeringDB2.0• MembershipandGovernance• Commiaees•  Sponsorship•  Informa1onandResources

7-8June,2016 ENOG11,Moscow 20

Page 21: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Membership and Governance

•  PeeringDBorganizaJonformallyformed16Dec,2015

•  PeeringDB501(c)(6)filed7Jan,2016(approved24Feb,2016)•  2ndelecJonsheldApril2016:94organizaJonsregistered,80voted•  292addressessubscribedtotheGovernancemailinglist(asof16May2016)

•  AcorporaJon,limitedliabilitycompany,partnershiporotherlegalbusinessenJtymaybeaMemberoftheCorporaJon.MembershipisdeterminedbyhavingbothanacJvePeeringDB.comaccountandanindividualrepresentaJveorrolesubscripJontothePeeringDBGovernancemailinglist:

•  hFp://lists.peeringdb.com/cgi-bin/mailman/lisJnfo/pdb-gov•  MoreinformaJonavailableathFp://gov.peeringdb.com/

7-8June,2016 ENOG11,Moscow 21

Page 22: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Board of Directors and Officers

7-8June,2016 ENOG11,Moscow 22

ChrisCaputo–Secretary&Treasurer(Non-BoardMember)

PatrickGilmore–Director(TermExpires2017)

MaFGriswold–Director(TermExpires2017)

AaronHughes–President(TermExpires2018)

ArnoldNipper–Director(TermExpires2017)

JobSnijders–VicePresident(TermExpires2018)

Page 23: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Committees

•  ManageadministraJonofuseraccountsandPeeringDBrecords

•  AnswersupportJckets•  BoardmembersJobSnijders(Chair)andArnoldNipper(ViceChair)

•  Seeking0communityvolunteers(1yearterm)

•  Contact:[email protected]

•  Askforinputfromthecommunityondesiredfeatures

•  ManageroadmapanddevelopmentprioriJes

•  WriteSoWstosolicitbidstocompleterequestedfeatures

•  BoardmembersAaronHughes(Chair)andMaFGriswold(ViceChair)

•  Seeking0communityvolunteers(1yearterm)

•  Contact:[email protected]

7-8June,2016 ENOG11,Moscow 23

AdminCommiFee ProductCommiFee

Page 24: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

KateGerry

PatrickGilmore

CharlesGucker

GregHankins

FlorianHibler

EricLindsjö

ArnoldNipper–ViceChair

RobertPhilips

EduardoAscençoReis

JobSnijders–Chair

MichaelSJll

WaltWollny

Admin Committee

7-8June,2016 ENOG11,Moscow 24

Page 25: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

KarthikArumugham

MaFGriswold–ViceChair

GregHankins

AaronHughes–Chair

MarJnJ.Levy

EricLoos

StephenMcManus

ArnoldNipper

KayRechthien

Product Committee

7-8June,2016 ENOG11,Moscow 25

Page 26: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Become a PeeringDB Sponsor!

•  DiamondSponsorship-$25,000/year•  Limitedto2sponsors•  VerylargelogoontoplineofSponsorspage•  DiamondSponsorbadgedisplayonallrecords

•  PlaJnumSponsorship-$10,000/year•  LargelogoonsecondlineofSponsorspage•  PlaJnumSponsorbadgedisplayonallrecords

•  GoldSponsorship-$5,000/year•  MediumlogoonthirdlineofSponsorspage•  GoldSponsorbadgedisplayonallrecords

•  SilverSponsorship-$2,500/year•  SmalllogoonfourthlineofSponsorspage•  SilverSponsorbadgedisplayonallrecords

•  [email protected]

7-8June,2016 ENOG11,Moscow 26

Page 27: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

DiamondSponsors

Pla1numSponsors

GoldSponsors

SilverSponsors

Thank you to our sponsors!

7-8June,2016 ENOG11,Moscow 2727

Page 28: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Information and Resources

•  Announce:hFp://lists.peeringdb.com/cgi-bin/mailman/lisJnfo/pdb-announce

•  Governance:hFp://lists.peeringdb.com/cgi-bin/mailman/lisJnfo/pdb-gov

•  Technical:hFp://lists.peeringdb.com/cgi-bin/mailman/lisJnfo/pdb-tech

•  UserDiscuss:hFp://lists.peeringdb.com/cgi-bin/mailman/lisJnfo/user-discuss

•  Docs,presentaJons,guides:hFp://docs.peeringdb.com/

•  BoardandOfficers:[email protected]

•  Admins:[email protected]• @PeeringDB•  hFps://www.facebook.com/peeringdb/

7-8June,2016 ENOG11,Moscow 28

Page 29: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Thanks to Richard Turkbergen

ThePeeringDBBoardherebyexpressesitsenormous

appreciaJontoRichardA.Turkbergen(néeSteenbergen)forhiscreaJonanddonaJonofPeeringDBtotheorganizaJon.

7-8June,2016 ENOG11,Moscow 29

Page 30: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Questions?

7-8June,2016 ENOG11,Moscow 30

Page 31: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Adding a New Exchange to Your Organization

7-8June,2016 ENOG11,Moscow 31

GeneratesaSupportTicketforValida1onandApproval

EnterExchangeInfoHere,ThenClick

“SubmitExchange”

Page 32: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Editing Your Exchange Record

7-8June,2016 ENOG11,Moscow 32

EnterExchangeInfoHere,ThenClick“Save”

NetworksareS1llRequiredtoAssociatetheirRecordata

FacilityorExchange

Page 33: PeeringDB 2 - ENOG · 2016. 8. 22. · PeeringDB 2.0 Arnold Nipper arnold@peeringdb.com 7 - 8 June, 2016 ENOG11, Moscow 1

Editing Your Exchange Record

7-8June,2016 ENOG11,Moscow 33

EnterLANInfoHereName–OpJonalNameDOT1Q–802.1QTag

MTUIPv4/IPv6Addresses

AddFacili1esHereAutocompleteon

ExisJngFaciliJes,MustContactSupporttoAdd

aNewFacility