poolparty deployment
TRANSCRIPT
-
8/14/2019 Poolparty Deployment
1/77
Ari LernerMichael Fairchild
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
2/77
I have a great idea!
This site,its lets you post messages to your friends,
and they can follow you...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
3/77
write an application...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
4/77
write an application...instantiate servers...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
5/77
write an application...
instantiate servers...configure servers...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
6/77
write an application...instantiate servers...configure servers...
scale them up...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
7/77
write an application...instantiate servers...
configure servers...scale them up...reconfigure...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
8/77
write an application...instantiate servers...
configure servers...scale them up...
reconfigure..scale down...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
9/77
and pay for it ?!?
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
10/77
Wouldnt it be nice if you could just
write one fileto do all that?
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
11/77
clouds.rb
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
12/77
cloud :twitterclonedo
end
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
13/77
cloud :twitterclonedoinstances 1..10000
end
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
14/77
cloud :twitterclonedo
instances 1..10000using :ec2
end
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
15/77
Its just Ruby
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
16/77
cloud :twitterclonedo
instances 1..1000using :ec2
has_file "/etc/motd"do
content "hello you"
endend
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
17/77
Lets go already!
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
18/77
write an application...instantiate servers...
configure servers...scale them up...
reconfigure..scale down...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
19/77
Ew
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
20/77
cloud-start
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
21/77
cloud-start -s examples/fairchild.rb
*** Starting cloud pp1
0 running instances (1 - 3)
Adding default gem depdendencies
...
75.101.181.64 stderr => [Sat, 04 Apr 2009 16:46:01 +0000] INFO: Ran
execute[line_in_/etc/profile] successfully
[Sat, 04 Apr 2009 16:46:01 +0000] INFO: Chef Run complete in 29.883499
seconds
Your cloud has started. Your ip is 75.101.181.64
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
22/77
launching...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
23/77
bootstrapping...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
24/77
configuring...
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
25/77
cloud-list
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
26/77
$ cloud-list -s examples/fairchild.rb*** Listing cloud pp1****** Active instancesmaster 75.101.181.64 i-516f0f38
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
27/77
cloud-ssh
cloud-ssh -s examples/fairchild.rb
master 75.101.181.64 i-516f0f38Welcome to your PoolParty instanceroot@ip-10-251-201-157:~#
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
28/77
poolparty core resources
crondirectoryexecfile
hostmountpackageremote_file
symlinkuservariable
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
29/77
Puppet
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
30/77
Chef
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
31/77
Chef
Chef is a state based, declarative configurationmanagement engine.
You define recipes of how you want your system tolook and then chef makes it so.
~Ezra Zygmuntovich
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
32/77
chef doinclude_recipies "~/recipies/*"
has_git_repos :name => "/srv/paparazzi"do
source "git://github.com/auser/
paparazzi.git"at "/srv"
end
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
33/77
include_recipe "apache2"
include_recipe "passenger"
include_recipe "rails"
web_app "paparazzi"do
docroot "/var/www/paparazzi/public"
template "paparazzi.conf.erb"server_name "www.paparazzi.com"
server_aliases [node[:hostname],
node[:fqdn],
"paparazzi.com"]rails_env "production"
end
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
34/77
cloud :twitterclonedo
instances 1..1000
using :ec2
chef do
include_recipes "~/recipies/*"
has_git_repos :name => "/var/www/paparazzi"do
source "git://github.com/auser/paparazzi.git"
at "/var/www" end
end
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
35/77
cloud-configure
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
36/77
Pushes configuration
changes to the cloud
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
37/77
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
38/77
Idempotent
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
39/77
unchanged when
multiplied by itself
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
40/77
Run it more than onceand it wont change
things unless it should
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
41/77
cloud-configure
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
42/77
cloud-configure
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
43/77
-
8/14/2019 Poolparty Deployment
44/77
-
8/14/2019 Poolparty Deployment
45/77
-
8/14/2019 Poolparty Deployment
46/77
OMG!Oprah mentioned
twitterclone!
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
47/77
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
48/77
-
8/14/2019 Poolparty Deployment
49/77
collective metricsaveraged across the cloud
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
50/77
Unequal use of resources
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
51/77
My database server is overloaded,but my web server isnt
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
52/77
multiple clouds
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
53/77
pool :twitterclonedo
instances 1..4000
cloud :dbdo
expand_when "memory > 0.9"
end
cloud :webserverdo
maximum_instances 10
expand_when "load > 1.2"
end
end
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
54/77
:instances => 2..5
:using => :ec2:ami => 'alestic ubuntu 8.1'
:contract_when => "load < 0.65"
:expand_when => "load > 1.9"
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
55/77
cloud :twitterclonedo
end
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
56/77
Decentralized
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
57/77
-
8/14/2019 Poolparty Deployment
58/77
Only cloud architecture
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
59/77
Ruby
(my)(postgre)sql(lite)
python
c
PHP
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
60/77
-
8/14/2019 Poolparty Deployment
61/77
transcoding cloudemail blasting cloud
particle beam simulation cloud(getting girls) social networks
...
Monday, June 22, 2009
f
-
8/14/2019 Poolparty Deployment
62/77
future
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
63/77
more remoter bases
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
64/77
using :ec2
using :vmware
using :gogrid
using :slicehostusing :vbox
using :ssh
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
65/77
-
8/14/2019 Poolparty Deployment
66/77
launch_new_instance!terminate_instance(id)
describe_instance(id)describe_instances
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
67/77
-
8/14/2019 Poolparty Deployment
68/77
Butterfly
-
8/14/2019 Poolparty Deployment
69/77
Butterfly
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
70/77
-
8/14/2019 Poolparty Deployment
71/77
tighter integration ofDNS
round robin load
balancing
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
72/77
quorum based actions
independent nodesnominate actions based
on local state
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
73/77
cloud-terminate
Monday, June 22, 2009
C it
-
8/14/2019 Poolparty Deployment
74/77
Community
http://poolpartyrb.com
#poolpartyrb (@freenode)
[email protected]@atti.com
Monday, June 22, 2009
http://poolpartyrb.com/http://poolpartyrb.com/mailto:[email protected]:[email protected]:[email protected]:[email protected]://poolpartyrb.com/http://poolpartyrb.com/http://poolpartyrb.com/http://poolpartyrb.com/ -
8/14/2019 Poolparty Deployment
75/77
Questions?
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
76/77
Thank you
Monday, June 22, 2009
-
8/14/2019 Poolparty Deployment
77/77
Alternatives
Rightscale
Heroku
Scalr