SlideShare ist ein Scribd-Unternehmen logo
1 von 65
Downloaden Sie, um offline zu lesen
Really large scale
systems configuration
Config Management @ Facebook
Phil Dibowitz
Atmosphere – May 2014
Configuration Management Experience
●
Co-authored Spine (2005-2007)
●
Authored Provision
Scale Experience
●
Ticketmaster, Google, Facebook
Passionate about scaling configuration management
Who am I?
http://coolinterestingstuff.com/amazing-space-images/
Scaling
Scaling Configuration Management
How many homogeneous systems can I maintain?
How many heterogeneous systems can I maintain?
How many people are needed?
Can I safely delegate delta configuration?
The Goal
http://www.prathidhwani.org/sports/goal-2012-the-beautiful-game-is-back/
The Goal
●
4 people
●
Hundreds of thousands of heterogeneous systems
●
Service owners own/adjust relevant settings
What did we need?
https://www.asburyseminary.edu/elink/my-profile-on-the-hub/
1. Basic
Scalable
Building
Blocks
1. Basic Scalable Build Blocks
Distributed! Everything on the client (duh!)
1. Basic Scalable Build Blocks
Distributed! Everything on the client (duh!)
Deterministic! The system you want on every run
Idempotent! Only the necessary changes
Extensible! Tied into internal systems
Flexible! No dictated workflow
http://www.greenbookblog.org/2012/03/21/big-data-opportunity-or-threat-for-market-research/
2. Configuration as Data
2. Configuration as Data
Service Owner
http://www.flickr.com/photos/laurapple/7370381182/
I want
• shared mem
• VIP
• core files somewhere else
• service running
• less/more/no nscd caching
2. Configuration as Data
Service owners may not know:
• How to configure VIPs
• Optimal sysctl settings
• Network settings
• Authentication settings
http://livelovesweat.wordpress.com/2011/12/07/the-importance-of-flexibility/
3. Flexibility
3. Flexibility
• Super-fast prototyping
• Internal assumptions can be changed - easily
• Extend in new ways – easily
• Adapt to our workflow ...
3. Flexibility - Example
• Template /etc/sysctl.conf
• Build a hash of default sysctls
• Provide these defaults early in “run”
• Let any engineer munge the bits they want
• /etc/sysctl.conf template interpolated “after”
http://www.flickr.com/photos/75905404@N00/7126147125/
Picking a tool
Why Chef?
Easier to see from a problem with Chef
Problem (for us): node.save()
●
Scale issues with 15k-node clusters
●
Standard solution sucks (disable ohai plugins)
Solution (for us): whitelist_node_attrs
• New cookbook re-opens Chef::Node.save()
• Deletes non-white-listed attrs before saving
• Have as much data as you want during the run
• We send < 1kb back to the server!
Code available:
https://github.com/opscode-cookbooks/whitelist-node-attrs
Chef: whitelist_node_attrs
class Chef
class Node
alias_method :old_save, :save
# Overwrite chef’s node.save to whitelist. doesn’t get “later” than this
def save
Chef::Log.info(“Whitelisting node attributes”)
whitelist = self[:whitelist].to_hash
self.default_attrs = Whitelist.filter(self.default_attrs, whitelist)
self.normal_attrs = Whitelist.filter(self.normal_attrs, whitelist)
self.override_attrs = Whitelist.filter(self.override_attrs, whitelist)
self.automatic_attrs = Whitelist.filter(self.override_attrs, whitelist)
old_save
end
end
end
Chef: whitelist_node_attrs
Well... that’s flexible!
(we did this a few times)
Our desired workflow
Our Desired Workflow
• Provide API for anyone, anywhere to extend configs by
munging data structures
• Engineers don’t need to know what they’re building on, just
what they want to change
• Engineers can change their systems without fear of changing
anything else
• Testing should be easy
• And...
Something Different
“Moving idempotency up”
Or
“Idempotent Systems”
http://www.flickr.com/photos/esi_design/4548531839/sizes/l/in/photostream/
Moving Idempotency Up
●
Idempotent records can get stale
●
Remove cron/sysctl/user/etc. resource
●
Resulting entry not removed => stale entries
●
Idempotent systems control a set of configs
●
Remove cron/sysctl/user/etc.
●
No longer rendered in config
Idempotent Records vs. Systems
This is a pain:
Idempotent Records vs. Systems
This is better:
Case Study
Case Study: sysctl
●
fb_sysctl/attributes/default.rb
●
Provides defaults looking at hw, kernel, etc.
●
fb_sysctl/recipes/default.rb
●
Defines a template
●
fb_sysctl/templates/default/sysctl.conf.erb
●
3-line template
Case Study: sysctl
# Generated by Chef, do not edit directly!
<%- node['fb']['fb_sysctl'].to_hash.keys.sort.each do |key| %>
<%= key %> = <%= node['fb']['fb_sysctl'][key] %>
<%- end %>
Template:
# Generated by Chef, do not edit directly!
...
net.ipv6.conf.eth0.accept_ra = 1
net.ipv6.conf.eth0.accept_ra_pinfo = 0
net.ipv6.conf.eth0.autoconf = 0
...
Result:
Case Study: sysctl
In the cookbook for the DB servers:
node.default['fb']['fb_sysctl']['kernel.shmmax'] = 19541180416
node.default['fb']['fb_sysctl']['kernel.shmall'] = 5432001
fb_database/recipes/default.rb
Case Study: sysctl
How does this help us scale?
• Delegation is simple, thus...
• Fewer people need to manage configs, therefore...
• Significantly better heterogenous scale
Other Examples
node.default['fb']['fb_networking']['want_ipv6'] = true
Want IPv6?
node.is_layer3?
Want to know what kind of network?
node.default['fb']['fb_cron']['jobs']['myjob'] = {
'time' => '*/15 * * * *',
'command' => 'thing',
'user' => 'myservice',
}
New cronjob?
Other Examples: DSR
LB
Web Web Web
Internet
Other Examples: DSR
node.add_dsr_vip('10.1.1.2')
Our Chef Infrastructure
Our Chef Infrastructure
Open Source Chef and Enterprise Chef
Our Chef Infrastructure - Customizations
• Stateless Chef Servers
• No search
• No databags
• Separate Failure Domains
• Tiered Model
Production: Global
SVN RepoSVN Repo
CodeCode Cluster 1Cluster 1
ReviewReview
LintLint
Cluster 2Cluster 2 Cluster 3Cluster 3 Cluster 4Cluster 4
Production: Cluster
Chef FE 2Chef FE 2Chef FE 1Chef FE 1
LB
LB
Chef BE 2Chef BE 2
Chef FE 3Chef FE 3
Web Web SVC DB DB
(grocery-delivery)
Chef BE 1Chef BE 1
(grocery-delivery)
SVNSVN
Assumptions
• Server is basically stateless
• Node data not persistent
• No databags
• Grocery-delivery keeps roles/cookbooks in sync
• Chef only knows about the cluster it is in
Implementation Details
•Grocery-delivery runs on every backend, every minute
•Persistent data needs to come from FB systems of
record (SOR)
•Ohai is tied into necessary SORs
•Runlist is forced on every run by node
Implementation Details: Client
●
Report Handlers feed data into monitoring:
●
Last exception seen
●
Success/Failure of run
●
Number of resources
●
Time to run
●
Time since last run
●
Other system info
Implementation Details: Server
●
chef-server-stats gathers data for monitoring:
●
Stats (postgres, authz [opc], etc.)
●
Errors (nginx, erchef, etc.)
●
Grocery-delivery syncs cookbooks, roles, (databags):
●
Pluggable and configurable
●
Both open-source:
●
https://github.com/facebook/chef-utils
But does it scale?
Scale
• Cluster size ~10k+ nodes
• Lots of clusters
• 15 minute convergence (14 min splay)
• grocery-delivery runs every minute
Scale - Erchef
Pre-erchef vs Post-erchef
(Enterprise Chef 1.4+)
Scale - Erchef
Scale – Open Source Chef Server 11
Let’s throw more than a cluster at
a Chef instance!
(Open Source Chef 11.0)
Scale – Open Source Chef Server 11
Testing: Multi-prong approach
• Foodcritic pre-commits for sanity
• Chefspec for unit-testing of core/critical cookbooks
• Taste-tester for full test-in-prod
Testing: taste-tester
•Manage a local chef-zero instance
•Track changes to local git repo, upload deltas
•Point real production servers at chef-zero for testing
•Configurable, with plug-in framework
Testing: taste-tester
desktop$ taste-tester test -s server1.example.com
Sync your repo to chef-zero; Test on a prod machine
Run Chef on test server
server1# chef-client
Fix bugs, re-sync
desktop$ vim … ; taste-tester upload
Available at http://github.com/facebook/chef-utils
Our source...
•Chef-server-stats – Get perf stats from chef-servers
•Taste-tester – Our testing system (new!)
•Grocery-delivery – Our cookbook syncing system
(rewritten and re-released!)
•Between-meals – changes-tracking lib for TT and GD
(new!)
•Example cookbooks – fb_cron and fb_sysctl (new!)
•Philosophy.md – Ideas in this talk in text form (new!)
Our source...
Coming soon...
rubygems.org releases of TT, BM, GD
Lessons
Lessons
• Idempotent systems > idempotent records
• Delegating delta config == easier heterogeneity
• Full programming languages > restrictive DSLs
• Scale is more than just a number of clients
• Easy abstractions are critical
• Testing against real systems is useful and necessary
Summary
So how about those types of scale?
Summary
How many homogeneous systems can you
maintain?
How many heterogeneous systems can you
maintain?
How many people are needed?
Can you safely delegate delta configuration?
>> 17k
> 17k
~4
Yes
Thanks
●
Opscode
●
Adam Jacob, Chris Brown, Steven Danna, & the erchef and
bifrost teams
●
Andrew Crump
●
foodcritic rules!
●
Everyone I work(ed) with
●
Aaron, Bethanye, David, KC, Larry, Marcin, Pedro, Tyler
INFRASTRUCTURE

Weitere ähnliche Inhalte

Was ist angesagt?

Environments - Fundamentals Webinar Series Week 5
Environments - Fundamentals Webinar Series Week 5Environments - Fundamentals Webinar Series Week 5
Environments - Fundamentals Webinar Series Week 5
Chef
 

Was ist angesagt? (20)

Opscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with ChefOpscode Webinar: Managing Your VMware Infrastructure with Chef
Opscode Webinar: Managing Your VMware Infrastructure with Chef
 
Chef-Zero & Local Mode
Chef-Zero & Local ModeChef-Zero & Local Mode
Chef-Zero & Local Mode
 
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...
 
Velocity2011 chef-workshop
Velocity2011 chef-workshopVelocity2011 chef-workshop
Velocity2011 chef-workshop
 
Automating your infrastructure with Chef
Automating your infrastructure with ChefAutomating your infrastructure with Chef
Automating your infrastructure with Chef
 
The unintended benefits of Chef
The unintended benefits of ChefThe unintended benefits of Chef
The unintended benefits of Chef
 
Introduction to Chef - Techsuperwomen Summit
Introduction to Chef - Techsuperwomen SummitIntroduction to Chef - Techsuperwomen Summit
Introduction to Chef - Techsuperwomen Summit
 
Introduction to Chef - April 22 2015
Introduction to Chef - April 22 2015Introduction to Chef - April 22 2015
Introduction to Chef - April 22 2015
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to Chef
 
Ansible 101 - Presentation at Ansible STL Meetup
Ansible 101 - Presentation at Ansible STL MeetupAnsible 101 - Presentation at Ansible STL Meetup
Ansible 101 - Presentation at Ansible STL Meetup
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to Chef
 
Infrastructure modeling with chef
Infrastructure modeling with chefInfrastructure modeling with chef
Infrastructure modeling with chef
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to Chef
 
Ansible 2 and Ansible Galaxy 2
Ansible 2 and Ansible Galaxy 2Ansible 2 and Ansible Galaxy 2
Ansible 2 and Ansible Galaxy 2
 
Opscode Webinar: Cooking with Chef on Microsoft Windows
Opscode Webinar: Cooking with Chef on Microsoft WindowsOpscode Webinar: Cooking with Chef on Microsoft Windows
Opscode Webinar: Cooking with Chef on Microsoft Windows
 
Infrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & AnsibleInfrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & Ansible
 
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...
Chef Fundamentals Training Series Module 3: Setting up Nodes and Cookbook Aut...
 
Overview of chef ( Infrastructure as a Code )
Overview of chef ( Infrastructure as a Code )Overview of chef ( Infrastructure as a Code )
Overview of chef ( Infrastructure as a Code )
 
Environments - Fundamentals Webinar Series Week 5
Environments - Fundamentals Webinar Series Week 5Environments - Fundamentals Webinar Series Week 5
Environments - Fundamentals Webinar Series Week 5
 
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6Community Cookbooks & further resources - Fundamentals Webinar Series Part 6
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6
 

Andere mochten auch

Designing Ultra Large Scale Systems List
Designing Ultra Large Scale Systems ListDesigning Ultra Large Scale Systems List
Designing Ultra Large Scale Systems List
Crafitti Consulting
 

Andere mochten auch (7)

Acm Tech Talk - Decomposition Paradigms for Large Scale Systems
Acm Tech Talk - Decomposition Paradigms for Large Scale SystemsAcm Tech Talk - Decomposition Paradigms for Large Scale Systems
Acm Tech Talk - Decomposition Paradigms for Large Scale Systems
 
Energy Efficiency in Large Scale Systems
Energy Efficiency in Large Scale SystemsEnergy Efficiency in Large Scale Systems
Energy Efficiency in Large Scale Systems
 
NEW ALGORITHMS FOR SECURE OUTSOURCING OF LARGE-SCALE SYSTEMS OF LINEAR EQUAT...
 NEW ALGORITHMS FOR SECURE OUTSOURCING OF LARGE-SCALE SYSTEMS OF LINEAR EQUAT... NEW ALGORITHMS FOR SECURE OUTSOURCING OF LARGE-SCALE SYSTEMS OF LINEAR EQUAT...
NEW ALGORITHMS FOR SECURE OUTSOURCING OF LARGE-SCALE SYSTEMS OF LINEAR EQUAT...
 
Designing Ultra Large Scale Systems List
Designing Ultra Large Scale Systems ListDesigning Ultra Large Scale Systems List
Designing Ultra Large Scale Systems List
 
Architectural Tactics for Large Scale Systems
Architectural Tactics for Large Scale SystemsArchitectural Tactics for Large Scale Systems
Architectural Tactics for Large Scale Systems
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post Formats
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome Economy
 

Ähnlich wie Atmosphere 2014: Really large scale systems configuration - Phil Dibowitz

Chef for Openstack
Chef for OpenstackChef for Openstack
Chef for Openstack
Mohit Sethi
 
PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopers
Bryan Cafferky
 
Introduction To Continuous Compliance & Remediation
Introduction To Continuous Compliance & RemediationIntroduction To Continuous Compliance & Remediation
Introduction To Continuous Compliance & Remediation
Nicole Johnson
 
Open Source Recipes for Chef Deployments of Hadoop
Open Source Recipes for Chef Deployments of HadoopOpen Source Recipes for Chef Deployments of Hadoop
Open Source Recipes for Chef Deployments of Hadoop
DataWorks Summit
 

Ähnlich wie Atmosphere 2014: Really large scale systems configuration - Phil Dibowitz (20)

Chef for openstack
Chef for openstackChef for openstack
Chef for openstack
 
Chef for Openstack
Chef for OpenstackChef for Openstack
Chef for Openstack
 
Node object and roles - Fundamentals Webinar Series Part 3
Node object and roles - Fundamentals Webinar Series Part 3Node object and roles - Fundamentals Webinar Series Part 3
Node object and roles - Fundamentals Webinar Series Part 3
 
Using Nagios with Chef
Using Nagios with ChefUsing Nagios with Chef
Using Nagios with Chef
 
What is Chef and how we use it at tripsta
What is Chef and how we use it at tripstaWhat is Chef and how we use it at tripsta
What is Chef and how we use it at tripsta
 
Chef - Infrastructure Automation for the Masses
Chef - Infrastructure Automation for the Masses�Chef - Infrastructure Automation for the Masses�
Chef - Infrastructure Automation for the Masses
 
PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopers
 
Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011
 
Common Challenges in DevOps Change Management
Common Challenges in DevOps Change ManagementCommon Challenges in DevOps Change Management
Common Challenges in DevOps Change Management
 
AWS OpsWorks for Chef Automate
AWS OpsWorks for Chef AutomateAWS OpsWorks for Chef Automate
AWS OpsWorks for Chef Automate
 
Adding Security to Your Workflow With InSpec - SCaLE17x
Adding Security to Your Workflow With InSpec - SCaLE17xAdding Security to Your Workflow With InSpec - SCaLE17x
Adding Security to Your Workflow With InSpec - SCaLE17x
 
Introduction To Continuous Compliance & Remediation
Introduction To Continuous Compliance & RemediationIntroduction To Continuous Compliance & Remediation
Introduction To Continuous Compliance & Remediation
 
Configuration Management with AWS OpsWorks for Chef Automate
Configuration Management with AWS OpsWorks for Chef AutomateConfiguration Management with AWS OpsWorks for Chef Automate
Configuration Management with AWS OpsWorks for Chef Automate
 
Open Source Recipes for Chef Deployments of Hadoop
Open Source Recipes for Chef Deployments of HadoopOpen Source Recipes for Chef Deployments of Hadoop
Open Source Recipes for Chef Deployments of Hadoop
 
Compliance Automation with InSpec
Compliance Automation with InSpecCompliance Automation with InSpec
Compliance Automation with InSpec
 
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
 
Overview of Chef - Fundamentals Webinar Series Part 1
Overview of Chef - Fundamentals Webinar Series Part 1Overview of Chef - Fundamentals Webinar Series Part 1
Overview of Chef - Fundamentals Webinar Series Part 1
 
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
 
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...
 
Node collaboration - sharing information between your systems
Node collaboration - sharing information between your systemsNode collaboration - sharing information between your systems
Node collaboration - sharing information between your systems
 

Kürzlich hochgeladen

No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
Sheetaleventcompany
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
Kayode Fayemi
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
raffaeleoman
 

Kürzlich hochgeladen (20)

Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)
 
Causes of poverty in France presentation.pptx
Causes of poverty in France presentation.pptxCauses of poverty in France presentation.pptx
Causes of poverty in France presentation.pptx
 
lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.
 
Busty Desi⚡Call Girls in Sector 51 Noida Escorts >༒8448380779 Escort Service-...
Busty Desi⚡Call Girls in Sector 51 Noida Escorts >༒8448380779 Escort Service-...Busty Desi⚡Call Girls in Sector 51 Noida Escorts >༒8448380779 Escort Service-...
Busty Desi⚡Call Girls in Sector 51 Noida Escorts >༒8448380779 Escort Service-...
 
Dreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video TreatmentDreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video Treatment
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubs
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
 
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyCall Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
 
Dreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIIDreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio III
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
 
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
 
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 97 Noida Escorts >༒8448380779 Escort Service
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
 
My Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle BaileyMy Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle Bailey
 
SaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, YardstickSaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, Yardstick
 

Atmosphere 2014: Really large scale systems configuration - Phil Dibowitz