Everything ruby

  • 984 views
Uploaded on

Compared to 2 - 3 years back today's eco-system around IT Operations has changed significantly, The definitive responsibility line between infrastructure administrators and developers has been …

Compared to 2 - 3 years back today's eco-system around IT Operations has changed significantly, The definitive responsibility line between infrastructure administrators and developers has been blurring continuously. We have experienced that developers want to experience same level of ease as its publicly available in form of commodity hardware, computing, monitoring, deployment and source control systems. Lots of IT organizations still go through lot of manual process for provisioning, monitoring, analysis, setup and do not take advantage new age tools. We had these issues in our existing environment as well. WE have been managing our servers using new age configuration management tools but thats not sufficient as we did not bring that advantage to our end users.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
984
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
11
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Transcript

  • 1. Everything Ruby Ajey Gore @ajeygore
  • 2. About me• Developer• Sys Ad• DevOps
  • 3. More like a discussion• Listen to our experiences• Tell us about your experiences
  • 4. About the talk
  • 5. • Ruby for development• Ruby for operations• Used it for both - single team
  • 6. Why Ruby?
  • 7. • Nice language• OpenSource• DSLs can be built easily• Great community• Multiple implementations (JRuby, MRI etc)
  • 8. Development
  • 9. Build and testing
  • 10. Provisioning
  • 11. require fogfog = Fog::Compute.new( :provider => AWS, :region=>eu-west-1, :aws_access_key_id => yyy, :aws_secret_access_key => xxxx)server = fog.servers.create( :image_id=>ami-311f2b45, :flavor_id=>t1.micro, :key_name => pey-pair-name)
  • 12. Deployment
  • 13. role :app, "A", "B"role :web, "C"task :deploy, :roles => :app do run deployend
  • 14. ConfigurationManagement
  • 15. execute yum -y update -securitypackage httpdservice httpd do action :runendcookbook_file "/etc/httpd/conf.d/mysite.conf"do source "etc/httpd/conf.d/mysite.conf" owner root group root mode 0644 notifies :reload, service[httpd] end
  • 16. pipe configuration with provisioning
  • 17. knife ec2 server create -r ‘role[web_server]’
  • 18. Orchestration
  • 19. New Host
  • 20. MonitoringNew Host
  • 21. Monitoring BackupNew Host Schedule
  • 22. Monitoring BackupNew Host Schedule Enter into proxy
  • 23. mco rpc chef --with-fact ‘role=monitor’mco rpc chef --with-fact ‘role=app’mco rpc backup --with-fact ‘role=db’mco rpc deploy --with-fact ‘role=app’mco rpc chef --with-fact ‘role=loadbalancer’
  • 24. Monitoring
  • 25. { "client": { "name": "webapp01.local", "address": "10.0.0.1", "subscriptions": [ "web" ] }}
  • 26. Supervising
  • 27. Bluepill.application("httpd") do |app| app.process("httpd") do |process| process.start_command = "/usr/bin/apachctl start" process.pid_file = "/var/run/httpd.pid" endend
  • 28. Ruby is ubiquitous• Provisioning• Configuration• Development• Continuous Integration• Deployment• Monitoring
  • 29. Everything Ruby
  • 30. References• Fog - cloud provisioning and management• Chef - configuration management• MCollective - service and system services orchestration• Sensu - system monitoring• Bluepill - supervising system services