This repository has been archived by the owner on Jan 21, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 485
/
spec
435 lines (390 loc) · 15.3 KB
/
spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
---
name: cloud_controller_ng
templates:
nginx_ctl.erb: bin/nginx_ctl
nginx.conf.erb: config/nginx.conf
drain.rb: bin/drain
mime.types: config/mime.types
cloud_controller_api.yml.erb: config/cloud_controller_ng.yml
cloud_controller_api_ctl.erb: bin/cloud_controller_ng_ctl
cloud_controller_api_worker_ctl.erb: bin/cloud_controller_worker_ctl
handle_nfs_or_local_blobstore.sh.erb: bin/handle_nfs_or_local_blobstore.sh
stacks.yml.erb: config/stacks.yml
syslog_forwarder.conf.erb: config/syslog_forwarder.conf
nfs-common: config/nfs-common
idmapd.conf.erb: config/idmapd.conf
newrelic.yml.erb: config/newrelic.yml
nginx_newrelic_plugin_ctl.erb: bin/nginx_newrelic_plugin_ctl
newrelic_plugin.yml.erb: config/newrelic_plugin.yml
packages:
- common
- cloud_controller_ng
- nginx
- nginx_newrelic_plugin
- libpq
- mysqlclient
- sqlite
- ruby
- syslog_aggregator
- buildpack_java
- buildpack_ruby
- buildpack_nodejs
properties:
ssl.skip_cert_verify:
description: "specifies that the job is allowed to skip ssl cert verification"
default: false
syslog_aggregator.address:
description: "IP address for syslog aggregator"
syslog_aggregator.port:
description: "TCP port of syslog aggregator"
syslog_aggregator.all:
description: "Define whether forwarders should send all their syslog data to our aggregator."
default: false
syslog_aggregator.transport:
description: "Transport to be used when forwarding logs (tcp|udp|relp)."
default: "tcp"
name:
default: "vcap"
description:
build:
default: "2222"
description:
version:
default: "2"
description:
support_address:
default: "http://support.cloudfoundry.com"
description:
description:
default: "Cloud Foundry sponsored by Pivotal"
description:
domain:
description: "domain where cloud_controller will listen (api.domain) often the same as the system domain"
system_domain:
description: "Domain reserved for CF operator, base URL where the login, uaa, and other non-user apps listen"
system_domain_organization:
description: "The User Org that owns the system_domain, required if system_domain is defined"
default: ""
app_domains:
description: "Array of domains for user apps (example: 'user.app.space.foo', a user app called 'neat' will listen at 'http://neat.user.app.space.foo')"
networks.apps:
description: "TODO"
nats.user:
description: "Username for cc client to connect to NATS"
nats.password:
description: "Password for cc client to connect to NATS"
nats.address:
description: "IP address of Cloud Foundry NATS server"
nats.port:
description: "IP port of Cloud Foundry NATS server"
nats.machines:
description: "IP of each NATS cluster member."
nfs_server.address:
description: "NFS server for droplets and apps (not used in an AWS deploy, use s3 instead)"
nfs_server.share:
description: "NFS server for droplets and apps (not used in an AWS deploy, use s3 instead)"
nfs_server.nfsv4:
description: "bool to use NFS4 (not used in an AWS deploy, use s3 instead)"
nfs_server.idmapd_domain:
description: "Domain name for NFS idmapd"
default: "localdomain"
nfs_server.pipefs_directory:
description: "Pipefs directory for NFS idmapd"
default: "/var/lib/nfs/rpc_pipefs"
request_timeout_in_seconds:
description: "Timeout for requests in seconds."
default: 300
ccng.external_port:
description: "External Cloud Controller port"
default: 9022
ccng.jobs.global.timeout_in_seconds:
description: "The longest any job can take before it is cancelled unless overriden per job"
default: 14400 # 4 hours
ccng.jobs.app_bits_packer.timeout_in_seconds:
description: "The longest this job can take before it is cancelled"
ccng.jobs.app_events_cleanup.timeout_in_seconds:
description: "The longest this job can take before it is cancelled"
ccng.jobs.app_usage_events_cleanup.timeout_in_seconds:
description: "The longest this job can take before it is cancelled"
ccng.jobs.blobstore_delete.timeout_in_seconds:
description: "The longest this job can take before it is cancelled"
ccng.jobs.blobstore_upload.timeout_in_seconds:
description: "The longest this job can take before it is cancelled"
ccng.jobs.droplet_deletion.timeout_in_seconds:
description: "The longest this job can take before it is cancelled"
ccng.jobs.droplet_upload.timeout_in_seconds:
description: "The longest this job can take before it is cancelled"
ccng.jobs.model_deletion.timeout_in_seconds:
description: "The longest this job can take before it is cancelled"
ccng.app_events.cutoff_age_in_days:
description: "How old an app event should stay in cloud controller database before being cleaned up"
default: 31
ccng.app_usage_events.cutoff_age_in_days:
description: "How old an app usage event should stay in cloud controller database before being cleaned up"
default: 31
ccng.audit_events.cutoff_age_in_days:
description: "How old an audit event should stay in cloud controller database before being cleaned up"
default: 31
ccng.billing_event_writing_enabled:
description: "If true, billing events are written to the CCDB."
default: true
ccng.info.name:
description: "name attribute in the /info endpoint"
ccng.info.build:
description: "build attribute in the /info endpoint"
ccng.info.version:
description: "version attribute in the /info endpoint"
ccng.info.support_address:
description: "URL for the support attribute in the /info endpoint"
ccng.info.description:
description: "free form description for attribute in the /info endpoint"
ccng.api_version:
description: "API version for cloud_controller. Tells clienets what version to speak to this cloud_controller"
ccng.directories.tmpdir:
default: "/var/vcap/data/cloud_controller_ng/tmp"
ccng.external_host:
default: "api"
description: "Host part of the cloud_controller api URI, will be joined with value of 'domain'"
ccng.cc_partition:
default: "default"
description: "Deprecated. Defines a 'partition' for the health_manager job"
ccng.bootstrap_admin_email:
default: "admin@example.com"
description: "Deprecated."
ccng.bulk_api_user:
default: "bulk_api"
description: "User used to access the bulk_api, health_manager uses it to connect to the cc, announced over NATS"
ccng.bulk_api_password:
description: "Password used to access the bulk_api, health_manager uses it to connect to the cc, announced over NATS"
ccng.uaa_resource_id:
default: "cloud_controller"
description: "Name of service to register to UAA"
ccng.db_logging_level:
default: "debug2"
description: "Log level for cc database operations"
ccng.logging_level:
default: "debug2"
description: "Log level for cc"
ccng.logging_max_retries:
default: 1
description: "Passthru value for Steno logger"
ccng.staging_timeout_in_seconds:
default: 900
description: "Timeout for staging a droplet"
ccng.maximum_health_check_timeout:
default: 180
description: "Maximum health check timeout that can be set for the app"
ccng.stacks:
default:
- name: "lucid64"
description: "Ubuntu 10.04"
description: "Tag used by the DEA to describe capabilities (i.e. 'Windows7', 'python-linux'). DEA and CC must agree."
ccng.staging_upload_user:
default: ""
description: "S3 Access key for staging droplets on AWS installs; Blobstore user for other IaaSs"
ccng.staging_upload_password:
default: ""
description: "S3 Secure Access Key for staging droplets on AWS installs; Blobstore password for other IaaSs"
ccng.quota_definitions:
description: "Hash of default quota definitions. Overriden by custom quota definitions."
ccng.default_quota_definition:
default: default
description: "Local to use a local (NFS) file system. AWS to use AWS."
ccng.default_fog_connection.provider:
description: "Local fog provider (should always be 'Local'), used if fog_connection hash is not provided in the manifest"
default: "Local"
ccng.default_fog_connection.local_root:
description: "Local root when fog provider is not overridden (should be an NFS mount if using more than one cloud controller)"
default: "/var/vcap/nfs/shared"
ccng.resource_pool.minimum_size:
description: "Minimum size of a resource to add to the pool"
default: 65536
ccng.resource_pool.maximum_size:
description: "Maximum size of a resource to add to the pool"
default: 536870912
ccng.resource_pool.resource_directory_key:
description: "Directory (bucket) used store app resources. It does not have be pre-created."
default: "cc-resources"
ccng.resource_pool.fog_connection:
description: "Fog connection hash"
ccng.resource_pool.cdn.uri:
description: "URI for a CDN to used for resource pool downloads"
default: ""
ccng.resource_pool.cdn.private_key:
description: "Private key for signing download URIs"
default: ""
ccng.resource_pool.cdn.key_pair_id:
description: "Key pair name for signed download URIs"
default: ""
ccng.packages.app_package_directory_key:
description: "Directory (bucket) used store app packages. It does not have be pre-created."
default: "cc-packages"
ccng.packages.max_package_size:
description: "Maximum size of application package"
default: 1073741824
ccng.packages.fog_connection:
description: "Fog connection hash"
ccng.packages.cdn.uri:
description: "URI for a CDN to used for app package downloads"
default: ""
ccng.packages.cdn.private_key:
description: "Private key for signing download URIs"
default: ""
ccng.packages.cdn.key_pair_id:
description: "Key pair name for signed download URIs"
default: ""
ccng.droplets.droplet_directory_key:
description: "Directory (bucket) used store droplets. It does not have be pre-created."
default: "cc-droplets"
ccng.droplets.fog_connection:
description: "Fog connection hash"
ccng.droplets.cdn.uri:
description: "URI for a CDN to used for droplet downloads"
default: ""
ccng.droplets.cdn.private_key:
description: "Private key for signing download URIs"
default: ""
ccng.droplets.cdn.key_pair_id:
description: "Key pair name for signed download URIs"
default: ""
ccng.buildpacks.buildpack_directory_key:
description: "Directory (bucket) used store buildpacks. It does not have be pre-created."
default: "cc-buildpacks"
ccng.buildpacks.fog_connection:
description: "Fog connection hash"
ccng.buildpacks.cdn.uri:
description: "URI for a CDN to used for buildpack downloads"
default: ""
ccng.buildpacks.cdn.private_key:
description: "Private key for signing download URIs"
default: ""
ccng.buildpacks.cdn.key_pair_id:
description: "Key pair name for signed download URIs"
default: ""
ccdb_ng.databases:
description:
ccdb_ng.roles:
description:
ccdb_ng.db_scheme:
description:
default: postgres
ccdb_ng.address:
description:
ccdb_ng.port:
description:
ccdb_ng.max_connections:
default: 25
description: "Maximum connections for Sequel"
ccdb_ng.max_ar_connections:
default: 5
description: "Maximum connections for ActiveRecord"
ccdb_ng.pool_timeout:
default: 10
description:
uaa.cc.token_secret:
description:
uaa.no_ssl:
description: "when true, uaa uses http, otherwise it uses https"
default: false
uaa.url:
description:
login.url:
description:
uaa.jwt.verification_key:
default: ""
description: "ssl cert defined in the manifest by the UAA, required by the cc to communicate with UAA"
login.enabled:
default: true
description: "whether use login as the authorization endpoint or not"
loggregator_endpoint.host:
description: "The host used to emit messages to the Loggregator"
loggregator_endpoint.port:
description: "The port used to emit messages to the Loggregator"
default: 3456
loggregator_endpoint.shared_secret:
description: "The key used to sign log messages"
logger_endpoint.use_ssl:
description: "Whether to use ssl for logger endpoint listed at /v2/info"
default: true
logger_endpoint.port:
description: "Port for logger endpoint listed at /v2/info"
default: 443
ccng.db_encryption_key:
default: ""
description: "key for encrypting sensitive values in the CC database"
ccng.tasks_disabled:
default: false
description: "Disable tasks endpoint"
ccng.default_app_memory:
default: 1024
description: "How much memory given to an app if not specified"
ccng.maximum_app_disk_in_mb:
default: 2048
description: "The maximum amount of disk a user can request"
ccng.hm9000_noop:
default: true
description: "Disable processing HM9000 messages"
ccng.diego:
default: false
description: "Enable diego support"
ccng.flapping_crash_count_threshold:
default: 3
description: "The threshold of crashes after which the app is marked as flapping"
ccng.client_max_body_size:
default: "1280M"
description: "Maximum body size for nginx"
ccng.disable_custom_buildpacks:
default: false
description: "Disable external (i.e. git) buildpacks? (Admin buildpacks and system buildpacks only.)"
ccng.broker_client_timeout_seconds:
default: 60
description: "For requests to service brokers, this is the HTTP (open and read) timeout setting."
ccng.development_mode:
default: false
description: "Enable development features for monitoring and insight"
ccng.newrelic.license_key:
default: ~
description: "The api key for NewRelic. Setting this value will activate NewRelic monitoring."
ccng.newrelic.environment_name:
default: "development"
description: "The environment name used by NewRelic"
ccng.newrelic.developer_mode:
default: false
description: "Activate NewRelic developer mode"
ccng.newrelic.monitor_mode:
default: false
description: "Activate NewRelic monitoring"
ccng.newrelic.log_file_path:
default: "/var/vcap/sys/log/cloud_controller_ng/newrelic"
description: "The location for NewRelic to log to"
ccng.newrelic.capture_params:
default: false
description: "Capture and send query params to NewRelic"
ccng.newrelic.transaction_tracer.enabled:
default: false
description: "Enable transaction tracing in NewRelic"
ccng.newrelic.transaction_tracer.record_sql:
default: "off"
description: "NewRelic's SQL statement recording mode: [off | obfuscated | raw]"
ccng.jobs.local.number_of_workers:
default: 2
description: "Number of local cloud_controller_worker workers"
ccng.jobs.generic.number_of_workers:
default: 1
description: "Number of generic cloud_controller_worker workers"
dea_next.staging_memory_limit_mb:
description: "Memory limit in mb for staging tasks"
default: 1024
ccng.renderer.max_results_per_page:
description: "Maximum number of results returned per page"
default: 100
ccng.renderer.default_results_per_page:
description: "Default number of results returned per page if user does not specify"
default: 50
ccng.renderer.max_inline_relations_depth:
description: "Maximum depth of inlined relationships in the result"
default: 2
uaa.clients.cc_service_broker_client.secret:
description: "Used for generating SSO clients for service brokers."
ccng.install_buildpacks:
description: "Set of buildpacks to install during deploy"