Data Driven Infrastructure
-
Upload
puppet-labs -
Category
Technology
-
view
758 -
download
2
description
Transcript of Data Driven Infrastructure
![Page 1: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/1.jpg)
Friday, August 23, 13
![Page 2: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/2.jpg)
DataDrivenInfrastructure
Friday, August 23, 13
![Page 3: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/3.jpg)
Friday, August 23, 13
![Page 4: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/4.jpg)
?
Friday, August 23, 13
![Page 6: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/6.jpg)
Let meTell youa story
Friday, August 23, 13
![Page 7: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/7.jpg)
What is a
Cloud
Friday, August 23, 13
![Page 8: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/8.jpg)
I don’t have to think about IT
With the Cloud...
Friday, August 23, 13
![Page 9: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/9.jpg)
Friday, August 23, 13
![Page 10: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/10.jpg)
aaSPlatformSoftware
InfrastructureFriday, August 23, 13
![Page 11: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/11.jpg)
Friday, August 23, 13
![Page 12: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/12.jpg)
Friday, August 23, 13
![Page 13: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/13.jpg)
Where is our cloud?
Friday, August 23, 13
![Page 14: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/14.jpg)
Friday, August 23, 13
![Page 15: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/15.jpg)
UtopiaFriday, August 23, 13
![Page 16: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/16.jpg)
James Fryman
Friday, August 23, 13
![Page 17: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/17.jpg)
Friday, August 23, 13
![Page 18: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/18.jpg)
Automations Junkie
Friday, August 23, 13
![Page 19: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/19.jpg)
Are youCrazy?
Friday, August 23, 13
![Page 20: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/20.jpg)
Goals?Data?What
Friday, August 23, 13
![Page 21: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/21.jpg)
Goals?Data?What
Friday, August 23, 13
![Page 22: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/22.jpg)
Goals?Data?What
Friday, August 23, 13
![Page 23: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/23.jpg)
Machine
Parsable
Friday, August 23, 13
![Page 24: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/24.jpg)
There is SystemOne
Friday, August 23, 13
![Page 25: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/25.jpg)
Feedback
PuppetDBProvisioning
Configuring
Destroying
gPanel
Friday, August 23, 13
![Page 26: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/26.jpg)
Partsof the
System
Friday, August 23, 13
![Page 27: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/27.jpg)
provisioner
Friday, August 23, 13
![Page 28: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/28.jpg)
Home GrownFriday, August 23, 13
![Page 29: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/29.jpg)
Home Grown
Friday, August 23, 13
![Page 30: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/30.jpg)
controller
Friday, August 23, 13
![Page 31: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/31.jpg)
Lots O’ Models
Friday, August 23, 13
![Page 32: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/32.jpg)
file { '/etc/facter/facts.d/quagga_manage_service': ensure => present, replace => false,} if $::quagga_manage_service { $service_state[ensure] = running $service_state[enable] = true} else { $service_state[ensure] = undef $service_state[enable] = undef} service { 'quagga': ensure => $service_state[ensure], enable => $service_state[enable],}
Friday, August 23, 13
![Page 33: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/33.jpg)
orchestrator
Friday, August 23, 13
![Page 34: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/34.jpg)
ChatOps
Friday, August 23, 13
![Page 35: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/35.jpg)
ChatOps
Friday, August 23, 13
![Page 36: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/36.jpg)
Feedbackof the
System
Friday, August 23, 13
![Page 37: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/37.jpg)
Metrics&Monitoring
Friday, August 23, 13
![Page 38: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/38.jpg)
begin JSON.parse(RestClient.get(url)).each do |cache| data["#{cache['target']}"] = 0 count = 0 cache["datapoints"].each do |point| unless (point[0].nil?) data["#{cache['target']}"] += point[0] count += 1 end end data["#{cache['target']}"] /= count data["total"] += data["#{cache['target']}"] endrescue ZeroDivisionError => e puts "UNKNOWN metric not in graphite!" exit EXIT_UNKNOWNrescue => e puts e.message exit EXIT_CRITICALend
Friday, August 23, 13
![Page 39: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/39.jpg)
begin JSON.parse(RestClient.get(url)).each do |cache| data["#{cache['target']}"] = 0 count = 0 cache["datapoints"].each do |point| unless (point[0].nil?) data["#{cache['target']}"] += point[0] count += 1 end end data["#{cache['target']}"] /= count data["total"] += data["#{cache['target']}"] endrescue ZeroDivisionError => e puts "UNKNOWN metric not in graphite!" exit EXIT_UNKNOWNrescue => e puts e.message exit EXIT_CRITICALend
Friday, August 23, 13
![Page 40: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/40.jpg)
event
Friday, August 23, 13
![Page 41: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/41.jpg)
eventlog
Friday, August 23, 13
![Page 42: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/42.jpg)
eventalertlog
Friday, August 23, 13
![Page 43: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/43.jpg)
eventalertlog error
Friday, August 23, 13
![Page 44: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/44.jpg)
Must self-correct
Friday, August 23, 13
![Page 45: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/45.jpg)
Feedback
PuppetDBProvisioning
Configuring
Destroying
gPanel
Friday, August 23, 13
![Page 46: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/46.jpg)
Friday, August 23, 13
![Page 47: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/47.jpg)
Deployable using text files
Friday, August 23, 13
![Page 48: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/48.jpg)
Modularity
Friday, August 23, 13
![Page 49: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/49.jpg)
haproxy::proxy { $es_proxy_name: proxy => 'listen', mode => 'http', ip => $::ipaddress_lo, port => '9200', config => { balance => 'roundrobin', }, }
Friday, August 23, 13
![Page 50: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/50.jpg)
haproxy::proxy { $es_proxy_name: proxy => 'listen', mode => 'http', ip => $::ipaddress_lo, port => '9200', config => { balance => 'roundrobin', }, }
Friday, August 23, 13
![Page 51: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/51.jpg)
haproxy::proxy::member { $es_proxy_name: hostname => $::ec2_local_ipv4, port => '9200', param => [ 'weight 1', 'maxconn 1000', 'check', ], }
Friday, August 23, 13
![Page 52: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/52.jpg)
collectd::plugin { [ 'cpu', 'load', 'memory', 'swap', 'irq', 'exec', 'entropy', ]: }
collectd::plugin { [ 'df', 'interface', 'protocols', 'disk', ]: config => true }
Friday, August 23, 13
![Page 53: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/53.jpg)
Level 4:Templates
Level 5:Data Driven
Friday, August 23, 13
![Page 54: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/54.jpg)
SelfAuthoritative
Friday, August 23, 13
![Page 55: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/55.jpg)
def self.collect_resources(resource) query = [ "and", ["=", "type", "File"], ["=", "exported", true], ["=", "tag", "nagios::object::#{resource}"], ["=", ["node", "active"], true] ] self.search('/v2/resources', query.to_json) end
Friday, August 23, 13
![Page 56: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/56.jpg)
def self.collect_resources(resource) query = [ "and", ["=", "type", "File"], ["=", "exported", true], ["=", "tag", "nagios::object::#{resource}"], ["=", ["node", "active"], true] ] self.search('/v2/resources', query.to_json) end
Friday, August 23, 13
![Page 57: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/57.jpg)
# Seed the initial file with false, and enable # on next run with gh-nagios enable_pager <hostname>
file { '/etc/facter/facts.d/enable_pager.txt': ensure => file, owner => 'root', group => 'root', mode => '0644', content => 'enable_pager=false', replace => false,}
Friday, August 23, 13
![Page 58: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/58.jpg)
@@file { "/etc/nagios/objects/${type}.d/${filename}.cfg": content => template('nagios/etc/nagios/object.erb'), mode => '0444', group => 'nagios', notify => Service['nagios'], }
Friday, August 23, 13
![Page 59: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/59.jpg)
Tips
Friday, August 23, 13
![Page 60: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/60.jpg)
Refactoring
Friday, August 23, 13
![Page 61: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/61.jpg)
Refactoring
Friday, August 23, 13
![Page 62: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/62.jpg)
least to most
specificFriday, August 23, 13
![Page 63: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/63.jpg)
frymanet.com
mysqlnginx rails
rubycommon admin
package repos
Friday, August 23, 13
![Page 64: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/64.jpg)
graduate to
paramsFriday, August 23, 13
![Page 65: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/65.jpg)
class ntp::params { $defaults = { package => { version => ‘latest’, }, config => { servers => [‘pool.ntp.org’], }, }}
Friday, August 23, 13
![Page 66: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/66.jpg)
externalize
Friday, August 23, 13
![Page 67: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/67.jpg)
class ntp::params { $defaults = { package => { version => hiera(‘ntp_package_version’), }, config => { servers => hiera(‘ntp_servers’), }, }}
Friday, August 23, 13
![Page 68: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/68.jpg)
CloudFormation
Friday, August 23, 13
![Page 69: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/69.jpg)
CloudFormation
Friday, August 23, 13
![Page 70: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/70.jpg)
"Resources": { "RendererServerGroup": { "Type": "AWS::AutoScaling::AutoScalingGroup", "Properties": { "AvailabilityZones": { "Fn::GetAZs": "" }, "LaunchConfigurationName": { "Ref": "LaunchConfig" }, "MinSize": "2", "MaxSize": "16", "Tags": [ { "Key": "Environment", "Value": "Production", "PropagateAtLaunch": "true" }, { "Key": "Role", "Value": "renderer", "PropagateAtLaunch": "true" } ] } },Friday, August 23, 13
![Page 71: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/71.jpg)
Autoloading
Friday, August 23, 13
![Page 72: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/72.jpg)
# autoloader.ppclass nagios::autoload_helpers { $helpers = get_nagios_helpers()
case $::puppetversion { /^3/: { include $helpers } default: { nagios::autoload_helpers::import_shim { $helpers: } } }}
Friday, August 23, 13
![Page 73: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/73.jpg)
# autoloader.ppclass nagios::autoload_helpers { $helpers = get_nagios_helpers()
case $::puppetversion { /^3/: { include $helpers } default: { nagios::autoload_helpers::import_shim { $helpers: } } }}
Friday, August 23, 13
![Page 74: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/74.jpg)
module Puppet::Parser::Functions newfunction(:get_nagios_helpers, :type => :rvalue, :doc => "Grab all modules that have nagios helpers for import") do
module_path = File.expand_path('..', Puppet::Module.find('nagios',compiler.environment.to_s).path)
helpers = Dir["#{module_path}/**/nagios/helpers.pp"].map do |d| "#{d.split('/')[-4]}::nagios::helpers" done
helpers endend
Friday, August 23, 13
![Page 75: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/75.jpg)
Modeling
Friday, August 23, 13
![Page 76: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/76.jpg)
Be Dynamic
Friday, August 23, 13
![Page 77: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/77.jpg)
Be Dynamic
Friday, August 23, 13
![Page 78: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/78.jpg)
<%- if @comment -%>### <%= @comment %><%- end -%><%= @type %> <% if @label %><%= @label %><% end %> {<%- @config.sort.reverse.each do |key,value| -%> <%- if value.class == Array -%> <%- value.each do |element| -%> <%= key %>(<%= element %>); <%- end -%> <%- else -%> <%= key %>(<%= value %>); <%- end -%><%- end -%>};
Friday, August 23, 13
![Page 79: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/79.jpg)
Fencing Resources
Friday, August 23, 13
![Page 80: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/80.jpg)
# Seed the initial file with false, and enable # on next run with gh-nagios enable_pager <hostname>
file { '/etc/facter/facts.d/enable_pager.txt': ensure => file, owner => 'root', group => 'root', mode => '0644', content => 'enable_pager=false', replace => false,}
Friday, August 23, 13
![Page 81: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/81.jpg)
if $::enable_pager { @@file { "/etc/nagios/objects/${type}.d/${filename}.cfg": content => template('nagios/etc/nagios/object.erb'), mode => '0444', group => 'nagios', notify => Service['nagios'], }}
Friday, August 23, 13
![Page 82: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/82.jpg)
Buy it?
Friday, August 23, 13
![Page 83: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/83.jpg)
Buy it?
Friday, August 23, 13
![Page 84: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/84.jpg)
It’s About
Friday, August 23, 13
![Page 85: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/85.jpg)
Missing?What’s
Friday, August 23, 13
![Page 86: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/86.jpg)
Language
Friday, August 23, 13
![Page 87: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/87.jpg)
Predictive Analysis
Friday, August 23, 13
![Page 88: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/88.jpg)
Coming
Home
Friday, August 23, 13
![Page 89: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/89.jpg)
Goals?Data?What
Friday, August 23, 13
![Page 90: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/90.jpg)
SystemsThinking
Recap
Friday, August 23, 13
![Page 91: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/91.jpg)
There is SystemOne
Machine
ParsableMust be aKnownQuantity
SelfAuthoritative
Must self-correctFriday, August 23, 13
![Page 92: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/92.jpg)
Friday, August 23, 13
![Page 95: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/95.jpg)
what’s next?
Friday, August 23, 13
![Page 96: Data Driven Infrastructure](https://reader037.fdocuments.net/reader037/viewer/2022103114/554f48dab4c905423f8b4b3c/html5/thumbnails/96.jpg)
what’s next?
Friday, August 23, 13