How to Migrate, Manage and Centralize your Web Infrastructure with Drupal


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

How to Migrate, Manage and Centralize your Web Infrastructure with Drupal

  1. 1. How to Migrate, Manage and Centralize your Web Infrastructure with Drupal Jim Keller Principal, Context
  2. 2. 9-person Drupal team based just Outside of Philadelphia Background in Software Development Extensive server management & website deployment experience
  3. 3. A common problem - Different departments within an organization create, manage, and maintain their own website - No thought given to scalability, centralization, or ongoing viability - No consistency in approach
  4. 4. In the end, organizations are left with a tangled mess of different platforms, different development techniques, and proprietary components
  5. 5. A plan Assess What do we have now, and who is it important to? Migrate & Integrate Transferring data from one platform to another, or sharing data between systems Manage Keeping everything running Maintain Preventing the mess from happening again
  6. 6. Drupal
  7. 7. What is Drupal? A content management system An application development framework A multi-site management platform
  8. 8. Who uses Drupal?
  9. 9. Who uses Drupal?
  10. 10. The Plan Migration to Drupal
  11. 11. Assess Before making any kind of platform decision, take an inventory of your current web properties Start slow and break the process into manageable chunks Collaborate with stakeholders to identify priorities Take extra time assessing integrations / data sharing components
  12. 12. Migrate Drupal 7 Entities Entities provide a single building block for all types of data stored in Drupal Entities can be blog posts, news entries, users, taxonomy terms, comments – any piece of data is considered an entity Entities have fields, not unlike tables in a database Drupal modules act on entities using the entity API. Once a piece of data has been imported into Drupal as an entity, it can be manipulated, displayed, aggregated, or referenced by other entities.
  13. 13. Migrate The Feeds Module: Your friend in migration One-off imports and periodic aggregation of content Create nodes, users, taxonomy terms or simple database records from import Import or aggregate RSS/Atom feeds Extensible to import any other kind of content Import or aggregate CSV files Granular mapping of input elements to Drupal content elements Import or aggregate OPML files PubSubHubbub support Exportable configurations Batched import for large files ...Combine with the Feeds Tamper module for custom pre-processing of incoming data
  14. 14. Migrate You may have to write some custom code to massage your data into place, but Drupal can make this process approachable Learn more about feeds: The developer's guide to feeds: Contributed Plugin modules for feeds:
  15. 15. Integrate Drupal provides almost limitless opportunity to integrate outside systems, but there are Some important decisions to be made before beginning the technical aspects of integration: 1. Does the cost (both time, money, and opportunity) of performing the integration outweigh the benefit of actually having the systems integrated? 2. Can the existing system and the new system live harmoniously, but still remain separate, without compromising user experience or internal workflows? 3. Does the existing system provide strong integration opportunities, without the need to rebuild a significant portion of the application’s business logic?
  16. 16. Integrate Some help with your integration, courtesy of Drupal: The services module – “A standardized solution of integrating external applications with Drupal. Service callbacks may be used with multiple interfaces like REST, XMLRPC, JSON, JSON RPC, SOAP, AMF, etc.” Custom Drupal modules You probably won’t come away with a successful integration without building a few of these. Don’t be afraid to build custom where needed, but remember to search first so you don’t reinvent the wheel. Feeds, Again Feeds can be your friend here as well. For integrations that don’t require realtime communication, a custom feeds plugin running on a set interval is a practical way to import and export data.
  17. 17. Manage Drupal Multi-Site Multi-site capabilities are built into Drupal core A single Drupal core installation can drive dozens of sites Module installations can be shared across multiple sites, creating a centralized hub for management &updates
  18. 18. Manage Drupal Multi-Site Module installations can be shared across multiple sites, creating a centralized hub for management & updates
  19. 19. Manage Enterprise Hosting Drupal can run on Linux or Windows, and supports a number of database engines including mySQL and MS-SQL Drupal has a 40-person security team Drupal has been combat tested on high-profile, high traffic sites Enterprise hosting platform and 24/7 support through Acquia
  20. 20. Manage New Relic Integration Provides traffic & bandwidth reports, server performance & resource usage data, downtime alerts
  21. 21. Maintain Policies and Procedures Create standards and best practice recommendations for your organization Having clear, written policies and procedures for change management is critical to ensuring that Make sure stakeholders are aware of the procedures and have adequate time to account for them in planning
  22. 22. Maintain Policies and Procedures Provide a list of the approved, activated modules developers will have access to in your multi-site environment
  23. 23. Maintain Policies and Procedures Provide documentation on how to properly structure sites for deployment
  24. 24. Maintain Policies and Procedures Provide documentation for change management
  25. 25. Other Considerations For another time... Adoption Helping people understand the benefits of change Training Centralizing helps makes training efforts much more practical Ongoing Support Keeping your users happy and productive
  26. 26. Thank You