This document is for describing options to Diego manifest generation.
Generate a manifest for a Diego deployment to accompany an existing CF deployment.
generate-deployment-manifest <MANDATORY ARGUMENTS> [OPTIONAL ARGUMENTS]
-c <cf-path> Path to CF manifest file.
-i <iaas-path> Path to IaaS-settings stub file.
-p <property-path> Path to property-overrides stub file.
-n <count-path> Path to instance-count-overrides stub file.
-v <versions-path> Path to release-versions stub file.
-s <sql-db-path> Path to SQL stub file.
-x Opt out of deploying etcd with the database vms (requires sql)
-b Opt into using capi-release for bridge components.
-d <voldriver-path> Path to voldriver stub file.
-N <netman-path> Path to netman stub file.
-B Opt out of deprecated CC bridge components.
-R Opt into using local route-emitter configuration for cells.
-L Opt into using garden-linux-release for cells. (DEPRECATED)
scripts/generate-deployment-manifest \
-c ../cf-release/bosh-lite/deployments/cf.yml \
-i manifest-generation/bosh-lite-stubs/iaas-settings.yml \
-p manifest-generation/bosh-lite-stubs/property-overrides.yml \
-n manifest-generation/bosh-lite-stubs/instance-count-overrides.yml \
-v manifest-generation/bosh-lite-stubs/release-versions.yml \
-s manifest-generation/bosh-lite-stubs/mysql/diego-sql.yml \
-x \
-d manifest-generation/bosh-lite-stubs/experimental/voldriver/drivers.yml \
-N manifest-generation/bosh-lite-stubs/experimental/netman/stub.yml \
-b \
-R
When fully migrated data from an etcd release to SQL, or a fresh install using SQL use the -x flag to not deploy etcd to the database VMs.
Use garden-linux-release instead of garden-runc as the container backend.
Note: garden-runc is the replacement for garden-linux-release, and we strongly recommend migrating to garden-runc.
Use the cc-bridge components (e.g., stager, nsync, tps, etc.) from capi-release instead of cf-release.
Use the local route-emitter on the cell VMs.
Note: This option can be safely used on a fresh deploy. We recommend that you disable the global route-emitter
configuration when opting into the local route-emitter configuration on fresh deploys. To remove the global
route-emitter configuration, you can specify 0 instances for the route_emitter_z1
, route_emitter_z2
,
and route_emitter_z3
VMs in the instance-count-overrides stubs.
Note: To ensure zero downtime when upgrading an existing environment using the global route-emitter, you will need
to perform two deploys: one to enable the local route-emitter configuration, and one to remove the global route-emitter
configuration. To remove the global route-emitter configuration, you can specify 0 instances for the route_emitter_z1
,
route_emitter_z2
, and route_emitter_z3
VMs in the instance-count-overrides stubs.
To specify the CF manifest and used to pull CF related properties into the generated Diego manifest
The file to specify the IaaS specific values. Items such as the subnet-configs, stemcell specifications etc.
The bosh-lite IaaS-settings example can be found iaas-settings.yml.
The file to override specific diego properties
The bosh-lite property-overrides example can be found property-overrides.yml
The file is used override the instance count for jobs in the diego manifest
The bosh-lite instance-count-overrides example can be found instance-count-overrides.yml
The file is used to override the default (latest) release version for the releases used in the manifest
release-versions:
etcd: 35
cflinuxfs2-rootfs: 1.12.0
diego: 1.1450.0
garden-runc: 1.0.2
The optional -s flag is used to specify the stub for SQL and needs to be specific to either MySQL or Postgres.
sql_overrides:
bbs:
db_driver: mysql
db_host: 10.244.7.2
db_port: 3306
db_username: diego
db_password: diego
db_schema: diego
max_open_connections: 500
sql_overrides:
bbs:
db_driver: postgres
db_host: 10.244.0.30
db_port: 5524
db_username: diego
db_password: admin
db_schema: diego
max_open_connections: 500
The optional -d flag is used to specify the file for volume drivers.
volman_overrides:
releases:
- name: cephfs-bosh-release
version: "latest"
driver_templates:
- name: cephdriver
release: cephfs-bosh-release
The optional -N flag is used to specify the path for the netman stub file. Netman requires Garden-runC, therefore the -g flag must also be set.
The optional flag -B will disable deprecated CC bridge components. At the moment those components are NSync and Stager. Those components are now part of the Cloud Controller. Keep in mind that in order to use this flag and still have CF working properly you will need to first enable this feature in cf-release via Cloud Controller properties.
Generate a windows manifest for a Diego deployment to accompany an existing CF deployment.
generate-windows-cell-deployment-manifest <MANDATORY ARGUMENTS> [OPTIONAL ARGUMENTS]
-c <cf-path> Path to CF manifest file.
-i <iaas-path> Path to IaaS-settings stub file.
-p <property-path> Path to property-overrides stub file.
-n <count-path> Path to instance-count-overrides stub file.
-v <versions-path> Path to release-versions stub file.
-R Opt into using local route-emitter configuration for cells.
generate-windows-cell-deployment-manifest \
-c ../cf-release/bosh-lite/deployments/cf.yml \
-i manifest-generation/bosh-lite-stubs/iaas-settings.yml \
-p manifest-generation/bosh-lite-stubs/property-overrides.yml \
-n manifest-generation/bosh-lite-stubs/instance-count-overrides.yml \
-v manifest-generation/bosh-lite-stubs/release-versions.yml \
-R
To specify the CF manifest and used to pull CF related properties into the generated Diego Windows manifest
The file to specify the IaaS specific values. Items such as the subnet-configs, stemcell specifications etc.
The file to override specific Diego Windows properties
The file is used override the instance count for jobs in the Diego Windows manifest
The file is used to override the default (latest) release version for the releases used in the manifest
Use the local route-emitter on the windows cell VMs.
Note: This option can be safely used on a fresh deploy. We recommend that you disable the global route-emitter
configuration in your diego deployment when opting into the local route-emitter configuration on fresh deploys.
To remove the global route-emitter configuration, you can specify 0 instances for the route_emitter_z1
, route_emitter_z2
,
and route_emitter_z3
VMs in the instance-count-overrides stubs for the diego deployment.
Note: To ensure zero downtime when upgrading an existing environment using the global route-emitter, you will need
to perform two deploys: one to enable the local route-emitter configuration for windows cells, and one to remove the global route-emitter
configuration from your diego deployment. To remove the global route-emitter configuration, you can specify 0 instances for the route_emitter_z1
,
route_emitter_z2
, and route_emitter_z3
VMs in the instance-count-overrides stubs for the diego deployment.