The Site Architecture You Can Edit Varnish Mobile? Ryan Lane Wikimedia Foundation Membase? Swift.

Slides:



Advertisements
Similar presentations
Box User Days 1 – 2 april Box Enterprise Leuven –What? –Why? –How? Box Essentials –Adding content –Finding what you need.
Advertisements

© N. Ganesan, Ph.D., All rights reserved. Active Directory Nanda Ganesan, Ph.D.
Wikis in Binghamton University Libraries Abigail Bordeaux Erin Rushton Marcy Strong.
Additional SugarCRM details for complete, functional, and portable deployment.
Intro to Google Apps B3: Working in Google Drive.
Module 8 Configuring and Securing SharePoint Services and Service Applications.
Hands-On Microsoft Windows Server Security Enhancements in Windows Server 2008 Windows Server 2008 was created to emphasize security –Reduced attack.
Sarasota Policy Wiki Why Wiki? To provide a new platform for community input on public policies and issues. To encourage engagement.
Created by: Maria Abrahms Modified Date: Classification: How to get it done Contributing to OpenStack.
Cloud Standard API and Contextualization
Sakai/OSP Portfolio UvA Bas Toeter Universiteit van Amsterdam
| nectar.org.au NECTAR TRAINING Module 10 Beyond the Dashboard.
Object-Oriented Analysis & Design Subversion. Contents  Configuration management  The repository  Versioning  Tags  Branches  Subversion 2.
Web Scripting [PHP] CIS166AE Wednesdays 6:00pm – 9:50pm Rob Loy.
© Wiley Inc All Rights Reserved. MCSE: Windows Server 2003 Active Directory Planning, Implementation, and Maintenance Study Guide, Second Edition.
Module 11: Implementing ISA Server 2004 Enterprise Edition.
Planning a Group Policy Management and Implementation Strategy Lesson 10.
Drupal 7 LDAP Project Overview with Authentication and Authorization Examples
Magellan: Experiences from a Science Cloud Lavanya Ramakrishnan.
Support in setting up a non-grid Atlas Tier 3 Doug Benjamin Duke University.
EXperimental Infrastructures for the Future Internet Training Session “Service Integration” Álvaro Alonso Joaquín Salvachúa UPM-DIT.
Module 4 Planning for Group Policy. Module Overview Planning Group Policy Application Planning Group Policy Processing Planning the Management of Group.
Administering Group Policy Chapter Eleven. Exam Objectives in this Chapter  Plan a Group Policy strategy using Resultant Set of Policy Planning mode.
EXPOSING OVS STATISTICS FOR Q UANTUM USERS Tomer Shani Advanced Topics in Storage Systems Spring 2013.
Using Heat to Deploy and Manage Applications in OpenStack Trevor Roberts Jr, VMware, Inc. CNA1763 #CNA1763.
Computing Services Charles (Cal) Loomis & Mohammed Airaj LAL, Univ. Paris-Sud, CNRS/IN2P October 2013.
OpenStack overview of the project Belmiro Daniel Rodrigues Moreira CERN IT-PES-PS January 2011 Disclaimer: This presentation reflects the experience and.
Virtual Lab Overview 5/21/2015 xxxxxxxxxx NWS/MDL/CIRA.
Cloud Installation & Configuration Management. Outline  Definitions  Tools, “Comparison”  References.
Information Initiative Center, Hokkaido University North 11, West 5, Sapporo , Japan Tel, Fax: General.
Gateways security Aashish Sharma Security Engineer National Center for Supercomputing Applications (NCSA) University of Illinois at Urbana-Champaign.
Wikimedia architecture Ryan Lane Wikimedia Foundation Inc.
Wikimedia architecture Ryan Lane Wikimedia Foundation Inc.
Chapter 1 Introducing Windows Server 2012/R2
THE BATTLE OF CLOUDS Openstack vs. Amazon
Module 3: Enabling Access to Internet Resources
Computing Clusters, Grids and Clouds Globus data service
Proposed IT Infrastructure for TOP OS project
Efficient development and deployment of Hydra projects using Vagrant
Open Source Systems Administration
Enabling Secure Internet Access with TMG
Embeddable Discussions Ivelin Elenchev
Cloud Adoption Framework
Enterprise Library Overview
Testing Activities on the CERT-TB Status report
Lab 1 introduction, debrief
Acutelearn Amazon Web Services Training Classroom Training Instructor led trainings at Acutelearn premises Corporate Training Custom tailored trainings.
OpenStack Ani Bicaku 18/04/ © (SG)² Konsortium.
Onboarding Session Victoria Martinez de la Cruz (vkmc)
What Is Sharepoint? Mohsen Ashkboos
Systems Analysis and Design 5th Edition Chapter 8. Architecture Design
Dev Test on Windows Azure Solution in a Box
Planning a Group Policy Management and Implementation Strategy
Getting Started with Contribution to Openstack
Windows Server 2008 Administration
Chapter 27: System Security
Searchlight Lei Zhang Search service for OpenStack
Lab 7 - Topics Establishing SSH Connection Install SSH Configure SSH
HC Hyper-V Module GUI Portal VPS Templates Web Console
OpenStack-alapú privát felhő üzemeltetés
Cloud Computing.
* Introduction to Cloud computing * Introduction to OpenStack * OpenStack Design & Architecture * Demonstration of OpenStack Cloud.
LearningSpace 2.0.
Getting Started with Microsoft Azure at CSU
Use this presentation with Section 2 of the Deployment Workbook.
APACHE WEB SERVER.
Slides prepared by Sarah Benis Scheier-Dolberg
Private Cloud Time Attendance System
ZORAN BARAC DATA ARCHITECT at CIN7
Presentation transcript:

The Site Architecture You Can Edit Varnish Mobile? Ryan Lane Wikimedia Foundation Membase? Swift

Content

Interface

Software Development

Localization

Architecture Documentation

Admin logs

Architecture config files

Monitoring

Performance Statistics

Philosophy: Community Empowerment

Empowerment and Growth

Early Community: No staff

Current Ops Situation: No new non-staff

Current Dev Situation: Minimal staff and community project collaboration

OpenStack: An Empowerment Technology

Community Oriented Test and Development

Goals ● Improved staff and volunteer collaboration ● Privilege escalation for non-ops ● Environment for testing major changes

How to achieve these goals ● Build a production cluster clone ● Allow liberal access to the clone ● Provide a way to add new architecture without affecting clone ● Provide a way to make changes without root ● Provide a way to migrate changes to production

Basic use case ● Ops makes initial default project ● Clone of production cluster ● Move puppet configuration to git repo – Production and test/dev branches

Basic use case ● New projects mirror community or foundation initiatives ● Devs build architecture in new project ● Devs request merge for puppet changes via gerrit ● Project instances moved to default project and tested ● Project moved to production cluster

Implementation Details

Test/Dev Architecture

OpenStack Configuration ● Current: ● One zone: 1 controller, 3 compute nodes ● Future: ● Test/dev zone per datacenter ● Production zone per datacenter ● Wikimedia Labs

Test/Dev Architecture

OpenStackManager ● MediaWiki extension ● Support for instance, security group, address, volume, key, sudo, DNS, and LDAP management ● Using EC2 API ● Self-documenting via MediaWiki templates

Semantic MediaWiki Integration ● Templates contain semantic annotations ● Nova information queryable via annotations ● Queries displayable via numerous outputs ● Example: Display the sum of storage in GB used for instances in project “tesla” who have the puppet variable “storage_server” set to “true”

Test/Dev Architecture

LDAP Integration ● MediaWiki/Gerrit/Nova/Puppet/DNS with LDAP backend ● Using OpenDJ from ForgeRock ● Instances configured by puppet to use LDAP ● Wiki account = Shell account ● Nova projects = Posix Groups ● Special project role = Sudo access

Authn/Authz Design ● User accounts stored in LDAP ● Managed by MediaWiki (LdapAuthentication and OpenStackManager extensions) ● MediaWiki account = Nova/Gerrit/Shell account ● UUIDs for Nova, passwords for Gerrit/MediaWiki/sudo, SSH keys for shell access ● Default gid/shell via MediaWiki configuration ● Sudo policies managed via puppet and LDAP

Test/Dev Architecture

Puppet Integration ● Puppet w/ LDAP backend ● Instance creation = Puppet node LDAP entry ● Variables always added via MediaWiki: – Project – Instance creator's wiki user name, address, and language ● More puppet classes and variables via MediaWiki config

Test/Dev Architecture

PowerDNS Integration ● PowerDNS w/LDAP backend ● Manages public and private domains ● Instance creation = Private DNS LDAP entry ● Can add public DNS entries to floating IPs

Test/Dev Architecture

CloudInit Integration ● Extensive use of CloudInit ● Default cloud init via MediaWiki config options ● Cloud-config, scripts, and upstarts supported ● Using to connect instances with puppet

Test/Dev Architecture

Gerrit Integration ● Puppet config in gerrit ● All test/dev members can branch ● First change approval by community ● Final approvals and merges by ops team

Join our community ● We are hiring ● We love contributors

Uses outside of Wikimedia ● Way to balance ops sanity and developer access ● Our architecture as a reference use

Uses outside of Wikimedia ● Self-documenting architecture ● Queryable architecture

Questions? Comments? Ryan Lane Wikimedia Foundation IRC: Ryan_Lane on Freenode; channels: #openstack, #mediawiki, #wikimedia- operations, #wikimedia-tech