Enviar búsqueda
Cargar
Introduction to CloudForecast / YAPC::Asia 2010 Tokyo
•
Descargar como KEY, PDF
•
11 recomendaciones
•
11,194 vistas
Masahiro Nagano
Seguir
Tecnología
Entretenimiento y humor
Denunciar
Compartir
Denunciar
Compartir
1 de 113
Descargar ahora
Recomendados
Nubilus Perl
Nubilus Perl
Flavio Poletti
Perl Web Client
Perl Web Client
Flavio Poletti
Design Patterns avec PHP 5.3, Symfony et Pimple
Design Patterns avec PHP 5.3, Symfony et Pimple
Hugo Hamon
Doctrine MongoDB ODM (PDXPHP)
Doctrine MongoDB ODM (PDXPHP)
Kris Wallsmith
Silex meets SOAP & REST
Silex meets SOAP & REST
Hugo Hamon
Electrify your code with PHP Generators
Electrify your code with PHP Generators
Mark Baker
The History of PHPersistence
The History of PHPersistence
Hugo Hamon
Advanced symfony Techniques
Advanced symfony Techniques
Kris Wallsmith
Recomendados
Nubilus Perl
Nubilus Perl
Flavio Poletti
Perl Web Client
Perl Web Client
Flavio Poletti
Design Patterns avec PHP 5.3, Symfony et Pimple
Design Patterns avec PHP 5.3, Symfony et Pimple
Hugo Hamon
Doctrine MongoDB ODM (PDXPHP)
Doctrine MongoDB ODM (PDXPHP)
Kris Wallsmith
Silex meets SOAP & REST
Silex meets SOAP & REST
Hugo Hamon
Electrify your code with PHP Generators
Electrify your code with PHP Generators
Mark Baker
The History of PHPersistence
The History of PHPersistence
Hugo Hamon
Advanced symfony Techniques
Advanced symfony Techniques
Kris Wallsmith
Database Design Patterns
Database Design Patterns
Hugo Hamon
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Masahiro Nagano
News of the Symfony2 World
News of the Symfony2 World
Fabien Potencier
Symfony components in the wild, PHPNW12
Symfony components in the wild, PHPNW12
Jakub Zalas
Symfony War Stories
Symfony War Stories
Jakub Zalas
Introducing Assetic (NYPHP)
Introducing Assetic (NYPHP)
Kris Wallsmith
PHP 5.3 and Lithium: the most rad php framework
PHP 5.3 and Lithium: the most rad php framework
G Woo
The Zen of Lithium
The Zen of Lithium
Nate Abele
Looping the Loop with SPL Iterators
Looping the Loop with SPL Iterators
Mark Baker
Speed up your developments with Symfony2
Speed up your developments with Symfony2
Hugo Hamon
Doctrine fixtures
Doctrine fixtures
Bill Chang
How to stand on the shoulders of giants
How to stand on the shoulders of giants
Ian Barber
Symfony 2 (PHP Quebec 2009)
Symfony 2 (PHP Quebec 2009)
Fabien Potencier
Parsing JSON with a single regex
Parsing JSON with a single regex
brian d foy
Generated Power: PHP 5.5 Generators
Generated Power: PHP 5.5 Generators
Mark Baker
Drush. Secrets come out.
Drush. Secrets come out.
Alex S
Introdução ao Perl 6
Introdução ao Perl 6
garux
PHP Language Trivia
PHP Language Trivia
Nikita Popov
Symfony 2.0 on PHP 5.3
Symfony 2.0 on PHP 5.3
Fabien Potencier
Perl Bag of Tricks - Baltimore Perl mongers
Perl Bag of Tricks - Baltimore Perl mongers
brian d foy
Operation Oriented Web Applications / Yokohama pm7
Operation Oriented Web Applications / Yokohama pm7
Masahiro Nagano
ZeroMQ Is The Answer
ZeroMQ Is The Answer
Ian Barber
Más contenido relacionado
La actualidad más candente
Database Design Patterns
Database Design Patterns
Hugo Hamon
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Masahiro Nagano
News of the Symfony2 World
News of the Symfony2 World
Fabien Potencier
Symfony components in the wild, PHPNW12
Symfony components in the wild, PHPNW12
Jakub Zalas
Symfony War Stories
Symfony War Stories
Jakub Zalas
Introducing Assetic (NYPHP)
Introducing Assetic (NYPHP)
Kris Wallsmith
PHP 5.3 and Lithium: the most rad php framework
PHP 5.3 and Lithium: the most rad php framework
G Woo
The Zen of Lithium
The Zen of Lithium
Nate Abele
Looping the Loop with SPL Iterators
Looping the Loop with SPL Iterators
Mark Baker
Speed up your developments with Symfony2
Speed up your developments with Symfony2
Hugo Hamon
Doctrine fixtures
Doctrine fixtures
Bill Chang
How to stand on the shoulders of giants
How to stand on the shoulders of giants
Ian Barber
Symfony 2 (PHP Quebec 2009)
Symfony 2 (PHP Quebec 2009)
Fabien Potencier
Parsing JSON with a single regex
Parsing JSON with a single regex
brian d foy
Generated Power: PHP 5.5 Generators
Generated Power: PHP 5.5 Generators
Mark Baker
Drush. Secrets come out.
Drush. Secrets come out.
Alex S
Introdução ao Perl 6
Introdução ao Perl 6
garux
PHP Language Trivia
PHP Language Trivia
Nikita Popov
Symfony 2.0 on PHP 5.3
Symfony 2.0 on PHP 5.3
Fabien Potencier
Perl Bag of Tricks - Baltimore Perl mongers
Perl Bag of Tricks - Baltimore Perl mongers
brian d foy
La actualidad más candente
(20)
Database Design Patterns
Database Design Patterns
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
Designing Opeation Oriented Web Applications / YAPC::Asia Tokyo 2011
News of the Symfony2 World
News of the Symfony2 World
Symfony components in the wild, PHPNW12
Symfony components in the wild, PHPNW12
Symfony War Stories
Symfony War Stories
Introducing Assetic (NYPHP)
Introducing Assetic (NYPHP)
PHP 5.3 and Lithium: the most rad php framework
PHP 5.3 and Lithium: the most rad php framework
The Zen of Lithium
The Zen of Lithium
Looping the Loop with SPL Iterators
Looping the Loop with SPL Iterators
Speed up your developments with Symfony2
Speed up your developments with Symfony2
Doctrine fixtures
Doctrine fixtures
How to stand on the shoulders of giants
How to stand on the shoulders of giants
Symfony 2 (PHP Quebec 2009)
Symfony 2 (PHP Quebec 2009)
Parsing JSON with a single regex
Parsing JSON with a single regex
Generated Power: PHP 5.5 Generators
Generated Power: PHP 5.5 Generators
Drush. Secrets come out.
Drush. Secrets come out.
Introdução ao Perl 6
Introdução ao Perl 6
PHP Language Trivia
PHP Language Trivia
Symfony 2.0 on PHP 5.3
Symfony 2.0 on PHP 5.3
Perl Bag of Tricks - Baltimore Perl mongers
Perl Bag of Tricks - Baltimore Perl mongers
Similar a Introduction to CloudForecast / YAPC::Asia 2010 Tokyo
Operation Oriented Web Applications / Yokohama pm7
Operation Oriented Web Applications / Yokohama pm7
Masahiro Nagano
ZeroMQ Is The Answer
ZeroMQ Is The Answer
Ian Barber
Crazy things done on PHP
Crazy things done on PHP
Taras Kalapun
Symfony without the framework
Symfony without the framework
GOG.com dev team
Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)
Kang-min Liu
ZeroMQ Is The Answer: PHP Tek 11 Version
ZeroMQ Is The Answer: PHP Tek 11 Version
Ian Barber
(DEV305) Building Apps with the AWS SDK for PHP | AWS re:Invent 2014
(DEV305) Building Apps with the AWS SDK for PHP | AWS re:Invent 2014
Amazon Web Services
Using ngx_lua in UPYUN
Using ngx_lua in UPYUN
Cong Zhang
Simple Ways To Be A Better Programmer (OSCON 2007)
Simple Ways To Be A Better Programmer (OSCON 2007)
Michael Schwern
EC2
EC2
Igor Kapkov
Nko workshop - node js crud & deploy
Nko workshop - node js crud & deploy
Simon Su
4069180 Caching Performance Lessons From Facebook
4069180 Caching Performance Lessons From Facebook
guoqing75
Debugging: Rules And Tools - PHPTek 11 Version
Debugging: Rules And Tools - PHPTek 11 Version
Ian Barber
20 modules i haven't yet talked about
20 modules i haven't yet talked about
Tatsuhiko Miyagawa
Automate Your FME Server Installs, Take a Five Minute Break
Automate Your FME Server Installs, Take a Five Minute Break
Safe Software
ZeroMQ Is The Answer: DPC 11 Version
ZeroMQ Is The Answer: DPC 11 Version
Ian Barber
Presentation1
Presentation1
Rahadyan Gusti
Curscatalyst
Curscatalyst
Kar Juan
Perl web frameworks
Perl web frameworks
diego_k
Facebook的缓存系统
Facebook的缓存系统
yiditushe
Similar a Introduction to CloudForecast / YAPC::Asia 2010 Tokyo
(20)
Operation Oriented Web Applications / Yokohama pm7
Operation Oriented Web Applications / Yokohama pm7
ZeroMQ Is The Answer
ZeroMQ Is The Answer
Crazy things done on PHP
Crazy things done on PHP
Symfony without the framework
Symfony without the framework
Good Evils In Perl (Yapc Asia)
Good Evils In Perl (Yapc Asia)
ZeroMQ Is The Answer: PHP Tek 11 Version
ZeroMQ Is The Answer: PHP Tek 11 Version
(DEV305) Building Apps with the AWS SDK for PHP | AWS re:Invent 2014
(DEV305) Building Apps with the AWS SDK for PHP | AWS re:Invent 2014
Using ngx_lua in UPYUN
Using ngx_lua in UPYUN
Simple Ways To Be A Better Programmer (OSCON 2007)
Simple Ways To Be A Better Programmer (OSCON 2007)
EC2
EC2
Nko workshop - node js crud & deploy
Nko workshop - node js crud & deploy
4069180 Caching Performance Lessons From Facebook
4069180 Caching Performance Lessons From Facebook
Debugging: Rules And Tools - PHPTek 11 Version
Debugging: Rules And Tools - PHPTek 11 Version
20 modules i haven't yet talked about
20 modules i haven't yet talked about
Automate Your FME Server Installs, Take a Five Minute Break
Automate Your FME Server Installs, Take a Five Minute Break
ZeroMQ Is The Answer: DPC 11 Version
ZeroMQ Is The Answer: DPC 11 Version
Presentation1
Presentation1
Curscatalyst
Curscatalyst
Perl web frameworks
Perl web frameworks
Facebook的缓存系统
Facebook的缓存系统
Más de Masahiro Nagano
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Masahiro Nagano
Rhebok, High Performance Rack Handler / Rubykaigi 2015
Rhebok, High Performance Rack Handler / Rubykaigi 2015
Masahiro Nagano
Big Master Data PHP BLT #1
Big Master Data PHP BLT #1
Masahiro Nagano
Stream processing in Mercari - Devsumi 2015 autumn LT
Stream processing in Mercari - Devsumi 2015 autumn LT
Masahiro Nagano
メルカリのデータベース戦略 / PHPとMySQLの怖い話 MyNA会2015年8月
メルカリのデータベース戦略 / PHPとMySQLの怖い話 MyNA会2015年8月
Masahiro Nagano
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
Masahiro Nagano
Norikraで作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Norikraで作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Masahiro Nagano
メルカリでのNorikraの活用、 Mackerelを添えて
メルカリでのNorikraの活用、 Mackerelを添えて
Masahiro Nagano
Gazelle & CPAN modules for performance. Shibuya.pm Tech Talk #17 LT
Gazelle & CPAN modules for performance. Shibuya.pm Tech Talk #17 LT
Masahiro Nagano
Mackerel & Norikra mackerel meetup #4 LT
Mackerel & Norikra mackerel meetup #4 LT
Masahiro Nagano
ISUCON4 予選問題で(中略)、”my.cnf”に1行だけ足して予選通過ラインを突破するの術
ISUCON4 予選問題で(中略)、”my.cnf”に1行だけ足して予選通過ラインを突破するの術
Masahiro Nagano
Isucon makers casual talks
Isucon makers casual talks
Masahiro Nagano
blogサービスの全文検索の話 - #groonga を囲む夕べ
blogサービスの全文検索の話 - #groonga を囲む夕べ
Masahiro Nagano
Gazelle - Plack Handler for performance freaks #yokohamapm
Gazelle - Plack Handler for performance freaks #yokohamapm
Masahiro Nagano
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Masahiro Nagano
Web Framework Benchmarksと Perl の現状報告会 YAPC::Asia Tokyo 2014 LT
Web Framework Benchmarksと Perl の現状報告会 YAPC::Asia Tokyo 2014 LT
Masahiro Nagano
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
Masahiro Nagano
Webアプリケーションの パフォーマンス向上のコツ 実践編
Webアプリケーションの パフォーマンス向上のコツ 実践編
Masahiro Nagano
Webアプリケーションの パフォーマンス向上のコツ 概要編
Webアプリケーションの パフォーマンス向上のコツ 概要編
Masahiro Nagano
Webアプリケーションとメモリ
Webアプリケーションとメモリ
Masahiro Nagano
Más de Masahiro Nagano
(20)
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Rhebok, High Performance Rack Handler / Rubykaigi 2015
Rhebok, High Performance Rack Handler / Rubykaigi 2015
Big Master Data PHP BLT #1
Big Master Data PHP BLT #1
Stream processing in Mercari - Devsumi 2015 autumn LT
Stream processing in Mercari - Devsumi 2015 autumn LT
メルカリのデータベース戦略 / PHPとMySQLの怖い話 MyNA会2015年8月
メルカリのデータベース戦略 / PHPとMySQLの怖い話 MyNA会2015年8月
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
Norikraで作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
Norikraで作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
メルカリでのNorikraの活用、 Mackerelを添えて
メルカリでのNorikraの活用、 Mackerelを添えて
Gazelle & CPAN modules for performance. Shibuya.pm Tech Talk #17 LT
Gazelle & CPAN modules for performance. Shibuya.pm Tech Talk #17 LT
Mackerel & Norikra mackerel meetup #4 LT
Mackerel & Norikra mackerel meetup #4 LT
ISUCON4 予選問題で(中略)、”my.cnf”に1行だけ足して予選通過ラインを突破するの術
ISUCON4 予選問題で(中略)、”my.cnf”に1行だけ足して予選通過ラインを突破するの術
Isucon makers casual talks
Isucon makers casual talks
blogサービスの全文検索の話 - #groonga を囲む夕べ
blogサービスの全文検索の話 - #groonga を囲む夕べ
Gazelle - Plack Handler for performance freaks #yokohamapm
Gazelle - Plack Handler for performance freaks #yokohamapm
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Web Framework Benchmarksと Perl の現状報告会 YAPC::Asia Tokyo 2014 LT
Web Framework Benchmarksと Perl の現状報告会 YAPC::Asia Tokyo 2014 LT
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
Webアプリケーションの パフォーマンス向上のコツ 実践編
Webアプリケーションの パフォーマンス向上のコツ 実践編
Webアプリケーションの パフォーマンス向上のコツ 概要編
Webアプリケーションの パフォーマンス向上のコツ 概要編
Webアプリケーションとメモリ
Webアプリケーションとメモリ
Último
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
The Digital Insurer
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
apidays
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
Boston Institute of Analytics
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
MIND CTI
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
Khem
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
UK Journal
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Remote DBA Services
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
apidays
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
debabhi2
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
Khushali Kathiriya
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Andrey Devyatkin
Último
(20)
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Introduction to CloudForecast / YAPC::Asia 2010 Tokyo
1.
Introduction to CloudForecast YAPC::Asia
Tokyo 2010 @kazeburo
2.
3.
4.
CloudForecast
5.
6.
7.
8.
9.
10.
P
D A C
11.
P
D A C
12.
13.
14.
15.
16.
17.
18.
19.
20.
CloudForecast
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
# ubuntu $ sudo
apt-get install librrds-perl libsnmp-perl # CentOS (rrdtool EPEL ) $ sudo rpm -Uvh http://download.fedora.redhat.com/ pub/epel/5/x86_64/epel-release-5-4.noarch.rpm $ sudo yum install net-snmp-perl $ sudo yum install rrdtool-perl
34.
$ git clone
git://github.com/kazeburo/cloudforecast.git $ cd cloudforecast $ cpanm -L extlib --installdeps .
35.
# $ cp cloudforecast_sample.yaml
cloudforecast.yaml # $ cp server_list_sample.yaml server_list.yaml
36.
--- #Dev servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 --- #Production servers: - config: basic.yaml hosts: ....
37.
--- #Dev servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 --- #Production servers: - config: basic.yaml hosts: ....
38.
--- #Dev servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 --- #Production servers: - config: basic.yaml hosts: ....
39.
--- #Dev servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 --- #Production servers: - config: basic.yaml hosts: ....
40.
--- #Dev servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 --- #Production servers: - config: basic.yaml hosts: ....
41.
--- #Dev servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 --- #Production servers: - config: basic.yaml hosts: ....
42.
--- #Dev servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 --- #Production servers: - config: basic.yaml hosts: ....
43.
--- #Dev servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 - 192.168.67.2 server2 --- #Production servers: - config: basic.yaml hosts: ....
44.
--- component_config: resources: -
basic - traffic:eth0
45.
--- component_config: resources: -
basic - traffic:eth0
46.
--- component_config: resources: -
basic - traffic:eth0
47.
48.
49.
$ vim host_config/http8080_memcached11211.yaml --- component_config: resources:
- traffic:eth1 - basic
50.
$ vim host_config/http8080_memcached11211.yaml --- component_config: resources:
- traffic:eth1 - basic - httpd:8080:/server-status?auto - memcached:11211
51.
--- #MYHOME servers:
- config: basic.yaml hosts: - 127.0.0.1 server1 - 192.168.67.2 server2 - config: http8080_memcached11211.yaml label: App hosts: - 192.168.67.10 server3 Web
52.
# $ ./cloudforecast_radar -c
cloudforecast.yaml -l server_list.yaml # Web $ ./cloudforecast_web -p 5000 -c cloudforecast.yaml -l server_list.yaml
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
# site-lib $ mkdir
-p site-lib/CloudForecast/Data
65.
66.
$ telnet localhost
7003 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. status fetcher 10 3 8 updater 4 4 2 ledge 2 2 2 .
67.
$ telnet localhost
7003 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. status fetcher 10 3 8 updater 4 4 2 ledge 2 2 2 .
68.
$ telnet localhost
7003 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. status fetcher 10 3 8 updater 4 4 2 ledge 2 2 2 .
69.
$ telnet localhost
7003 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. status fetcher 10 3 8 updater 4 4 2 ledge 2 2 2 .
70.
$ telnet localhost
7003 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. status fetcher 10 3 8 updater 4 4 2 ledge 2 2 2 .
71.
$ telnet localhost
7003 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. status fetcher 10 3 8 updater 4 4 2 ledge 2 2 2 .
72.
1: package CloudForecast::Data::Gearmand; 2: 3:
use CloudForecast::Data -base; 4: use IO::Socket::INET; 5: 6: rrds ‘queue’, ‘GAUGE’; 7: rrds ‘proc’, ‘GAUGE’; 8: graphs 'queue' => 'Queue'; 9: ( )
73.
1: package CloudForecast::Data::Gearmand; 2: 3:
use CloudForecast::Data -base; 4: use IO::Socket::INET; 5: 6: rrds ‘queue’, ‘GAUGE’; 7: rrds ‘proc’, ‘GAUGE’; 8: graphs 'queue' => 'Queue'; 9: ( )
74.
1: package CloudForecast::Data::Gearmand; 2: 3:
use CloudForecast::Data -base; 4: use IO::Socket::INET; 5: 6: rrds ‘queue’, ‘GAUGE’; 7: rrds ‘proc’, ‘GAUGE’; 8: graphs 'queue' => 'Queue'; 9: ( )
75.
1: package CloudForecast::Data::Gearmand; 2: 3:
use CloudForecast::Data -base; 4: use IO::Socket::INET; 5: 6: rrds ‘queue’, ‘GAUGE’; 7: rrds ‘proc’, ‘GAUGE’; 8: graphs 'queue' => 'Queue'; 9: ( )
76.
rrds ‘queue’, ‘GAUGE’; #
rrds ‘key’, ‘TYPE’; # rrds [‘key’,‘TYPE’], []..;
77.
graphs 'queue' =>
'Queue'; # graphs ‘key1’ => ‘label’; # graphs ‘key2’ => ‘the great graph’; #
78.
graphs 'queue' =>
'Queue'; __DATA__ @@ queue DEF:my1a=<%RRD%>:queue:AVERAGE DEF:my2=<%RRD%>:proc:AVERAGE CDEF:my1=my1a,my2,- AREA:my2#0000C0:Running GPRINT:my2:LAST:Cur: %6.1lf GPRINT:my2:AVERAGE:Ave: %6.1lf GPRINT:my2:MAX:Max: %6.1lf GPRINT:my2:MIN:Min: %6.1lfc STACK:my1#00C000:Queue GPRINT:my1:LAST:Cur: %6.1lf GPRINT:my1:AVERAGE:Ave: %6.1lf GPRINT:my1:MAX:Max: %6.1lf GPRINT:my1:MIN:Min: %6.1lfc
79.
fetcher {
my ($queue, $proc) = ( 0, 0 ); my $c = shift; my @sysinfo = qw/job worker/; for my $job ( values %status ) { my $host = $c->address; $queue += $job->[1]; my $port = $c->args->[0] || 7003; $proc += $job->[2]; } my $sock = IO::Socket::INET->new( PeerAddr => $host, return [ $queue, $proc ]; PeerPort => $port, }; ); $sock->syswrite("statusrn"); $sock->sysread( my $raw_status, 8192 ); my %status; foreach my $line ( split /r?n/, $raw_status ) { my @st = split /s+/, $line; next unless @st == 4; $status{$st[0]} = @st; }
80.
fetcher {
my ($queue, $proc) = ( 0, 0 ); my $c = shift; my @sysinfo = qw/job worker/; for my $job ( values %status ) { my $host = $c->address; $queue += $job->[1]; my $port = $c->args->[0] || 7003; $proc += $job->[2]; } my $sock = IO::Socket::INET->new( PeerAddr => $host, return [ $queue, $proc ]; PeerPort => $port, }; ); $sock->syswrite("statusrn"); $sock->sysread( my $raw_status, 8192 ); my %status; foreach my $line ( split /r?n/, $raw_status ) { my @st = split /s+/, $line; next unless @st == 4; $status{$st[0]} = @st; }
81.
fetcher {
my ($queue, $proc) = ( 0, 0 ); my $c = shift; my @sysinfo = qw/job worker/; for my $job ( values %status ) { my $host = $c->address; $queue += $job->[1]; my $port = $c->args->[0] || 7003; $proc += $job->[2]; } my $sock = IO::Socket::INET->new( PeerAddr => $host, return [ $queue, $proc ]; PeerPort => $port, }; ); $sock->syswrite("statusrn"); $sock->sysread( my $raw_status, 8192 ); my %status; foreach my $line ( split /r?n/, $raw_status ) { my @st = split /s+/, $line; next unless @st == 4; $status{$st[0]} = @st; }
82.
#
# title { sysinfo { my $c = shift; my $c = shift; my $title = "Gearmand"; #$c->ledge_get('sysinfo') || []; if ( my $port = $c->args->[0] ) { [‘job’,‘worker’]; $title .= " ($port)"; }; } return $title; }; # KVS $c->ledge_set( 'key', @data, [expires] ); $c->ledge_add( 'key', @data, [expires] ); $c->ledge_get( 'key’ ); $c->ledge_delete( 'key’ );
83.
--- component_config: resources: -
traffic:eth1 - basic - gearmand:7003
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
Tips
106.
107.
$ vim cloudforecast.yaml --- config:
gearman_enable: 1 gearman_server: host: localhost port: 7003 data_dir: data host_config_dir: host_config ..
108.
# $ ./cf_fetcher_worker -c
cloudforecast.yaml --max-workers 20 --max-execution-time 60 # RRD $ ./cf_updater_worker -c cloudforecast.yaml --max-workers 4
109.
#!/bin/sh exec 2>&1 export CF_DEBUG=1 exec
/path/to/cloudforecast/cloudforecast_radar -r -c /path/to/cloudforecast/cloudforecast.yaml -l /path/to/cloudforecast/server_list.yaml
Notas del editor
Descargar ahora