1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
24 # Environment description
25 "description": "OpenSource-xxx",
28 "cookbook_versions": {
29 "Deploy-SDandC": "= 1.0.0"
31 "json_class": "Chef::Environment",
32 "chef_type": "environment",
34 "default_attributes": {
36 # IPs used for docker configuration
42 "application": "eth0",
46 # Configuration parameters used in portal properties
48 "ecomp_rest_url": "http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/auxapi",
49 "ueb_url_list": "10.0.11.1,10.0.11.1",
50 "app_secret": "XftIATw9Jr3VzAcPqt3NnJOu",
51 "app_key": "x9UfO7JsDn8BESVX",
52 "inbox_name": "ECOMP-PORTAL-INBOX",
53 "ecomp_redirect_url": "http://portal.api.simpledemo.openecomp.org:8989/ECOMPPORTAL/login.htm",
54 "app_topic_name": "ECOMP-PORTAL-OUTBOX-SDC1",
55 "decryption_key": "AGLDdG4D04BKm2IxIWEr8o=="
58 # Configuration parameters used by SDC to work with Dmaap
60 "PublicKey": "iPIxkpAMI8qTcQj8",
61 "SecretKey": "Ehq3WyT4bkif4zwgEbvshGal",
62 "fqdn": ["10.0.11.1", "10.0.11.1"]
65 # IPs used for docker configuration
73 "override_attributes": {
75 # FE and BE listening ports
85 # Elasticsearch configuration
87 "cluster_name": "SDC-ES-",
88 "ES_path_home": "/usr/share/elasticsearch",
89 "ES_path_data": "/usr/share/elasticsearch/data",
90 "num_of_replicas": "0",
94 # Cassandra configuration
96 "concurrent_reads": "32",
98 "data_dir": "/var/lib/cassandra/data",
99 "hinted_handoff_enabled": "true",
100 "cassandra_user": "asdc_user",
101 "cassandra_password": "Aa1234%^!",
102 "concurrent_writes": "32",
103 "cluster_name": "SDC-CS-",
104 "multithreaded_compaction": "false",
105 "cache_dir": "/var/lib/cassandra/saved_caches",
106 "log_file": "/var/lib/cassandra/log/system.log",
107 "phi_convict_threshold": "8",
108 "commitlog_dir": "/var/lib/cassandra/commitlog"
113 Backend Configurations
114 ======================
116 BE-configuration.yaml
117 ---------------------
121 # Request headers for identification of the user that made the request
122 identificationHeaderFields:
126 - HTTP_IV_REMOTE_ADDRESS
129 # Catalog backend hostname
130 beFqdn: <%= @host_ip %>
132 # Catalog backend http port
133 beHttpPort: <%= @catalog_port %>
135 # Catalog backend http context
136 beContext: /sdc/rest/config/get
138 # Catalog backend protocol
141 # Catalog backend ssl port
142 beSslPort: <%= @ssl_port %>
144 # Catalog backend configuration vesrion
147 # Catalog backend configuration release date
150 # Catalog tosca current conformance version
151 toscaConformanceLevel: 4.0
153 # Catalog minimum tosca conformance version
154 minToscaConformanceLevel: 3.0
156 # Titan configuration file location
157 titanCfgFile: /var/lib/jetty/config/catalog-be/titan.properties
159 # Does titan holds the persistency data in memory
160 titanInMemoryGraph: false
162 # The timeout for titan to lock on an object in a transaction
163 titanLockTimeout: 1800
165 # The interval to try and reconnect to titan DB when it is down during SDC startup
166 titanReconnectIntervalInSeconds: 3
168 # The read timeout towards Titan DB when health check is invoked
169 titanHealthCheckReadTimeout: 1
171 # The interval to try and reconnect to Elasticsearch when it is down during SDC startup
172 esReconnectIntervalInSeconds: 3
174 # The interval to try and reconnect to UEB health check when it is down during SDC startup
175 uebHealthCheckReconnectIntervalInSeconds: 15
177 # The read timeout towards UEB when helath check is invoked
178 uebHealthCheckReadTimeout: 4
180 # Protocols being used in SDC
186 # Under each import there is the file the data will be imported from
193 file: capabilities.yml
195 file: relationships.yml
202 # Deprecated. Will be removed in future releases
209 cassandraHosts: <%= @cassandra_ip %>
211 # Cassandra local data center name
212 localDataCenter: <%= @DC_NAME %>
214 # The read timeout towards Cassandra when health check is invoked
215 reconnectTimeout : 30000
217 # Should an authentication be used when accessing Cassandra
220 # Username for accessing Cassandra
223 # Password for accessing Cassnadra
224 password: {{cassandra_password}}
226 # Does an ssl should be used
229 # Location of .truststore file
230 truststorePath : /config/.truststore
232 # The .truststore file password
233 truststorePassword : Aa123456
235 # Keyspaces configuration for Cassandra
237 - { name: dox, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
238 - { name: sdcaudit, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
239 - { name: sdcartifact, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
240 - { name: sdccomponent, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
241 - { name: sdcrepository, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['<%= @DC_NAME %>','<%= @rep_factor %>']}
243 # Application-specific settings of ES
246 # Mapping of index prefix to time-based frame. For example, if below is configured:
248 # - indexPrefix: auditingevents
249 # creationPeriod: minute
251 # then ES object of type which is mapped to "auditingevents-*" template, and created on 2015-12-23 13:24:54, will enter "auditingevents-2015-12-23-13-24" index.
252 # Another object created on 2015-12-23 13:25:54, will enter "auditingevents-2015-12-23-13-25" index.
253 # If creationPeriod: month, both of the above will enter "auditingevents-2015-12" index.
255 # PLEASE NOTE: the timestamps are created in UTC/GMT timezone! This is needed so that timestamps will be correctly presented in Kibana.
257 # Legal values for creationPeriod - year, month, day, hour, minute, none (meaning no time-based behaviour).
259 # If no creationPeriod is configured for indexPrefix, default behavour is creationPeriod: month.
260 indicesTimeFrequency:
261 - indexPrefix: auditingevents
262 creationPeriod: month
263 - indexPrefix: monitoring_events
264 creationPeriod: month
266 # Artifact types placeholder
283 - AAI_VF_MODULE_MODEL
284 - AAI_VF_INSTANCE_MODEL
291 # License types placeholder
297 # Resource types placeholder
298 resourceTypes: &allResourceTypes
307 #Deployment resource artifacts placeHolder
308 deploymentResourceArtifacts:
310 # Deployment resource instance artifacts placeholders
311 # For each artifact the following properties exists:
313 # displayName - The display name of the artifact
314 # type - The type of the artifact
315 # description - The description of the artifact
316 # fileExtension - The file extension of the artifact file for uploading
317 deploymentResourceInstanceArtifacts:
319 displayName: "HEAT ENV"
321 description: "Auto-generated HEAT Environment deployment artifact"
324 displayName: "VF HEAT ENV"
326 description: "VF Auto-generated HEAT Environment deployment artifact"
329 # Tosca artifacts placeholders
330 # For each artifact there is a template and a scar.
331 # For each one the following properties exists:
333 # artifactName - The suffix of the artifact file
334 # displayName - The display name of the artifact
335 # type - The type of the artifact
336 # description - The description of the artifact
339 artifactName: -template.yml
340 displayName: Tosca Template
342 description: TOSCA representation of the asset
344 artifactName: -csar.csar
345 displayName: Tosca Model
347 description: TOSCA definition package of the asset
349 # Resource category to exclude
350 excludeResourceCategory:
353 # Resource type to exclude
357 # Informational resource artifacts placeHolder
358 # For each artifact the following properties exists:
360 # displayName - The display name of the artifact
361 # type - The type of the artifact
362 informationalResourceArtifacts:
364 displayName: Features
367 displayName: Capacity
370 displayName: Vendor Test Result
373 displayName: Test Scripts
376 displayName: Cloud Questionnaire (completed)
378 HEATTemplateFromVendor:
379 displayName: HEAT Template from Vendor
381 resourceSecurityTemplate:
382 displayName: Resource Security Template
385 # Service category to exclude
386 excludeServiceCategory:
388 # Informational service artifacts placeHolder
389 # For each artifact the following properties exists:
391 # displayName - The display name of the artifact
392 # type - The type of the artifact
393 informationalServiceArtifacts:
395 displayName: Service Artifact Plan
397 summaryOfImpactsToECOMPElements:
398 displayName: Summary of impacts to ECOMP elements,OSSs, BSSs
400 controlLoopFunctions:
401 displayName: Control Loop Functions
404 displayName: Dimensioning Info
407 displayName: Affinity Rules
410 displayName: Operational Policies
412 serviceSpecificPolicies:
413 displayName: Service-specific Policies
416 displayName: Engineering Rules (ERD)
418 distributionInstructions:
419 displayName: Distribution Instructions
421 certificationTestResults:
422 displayName: TD Certification Test Results
424 deploymentVotingRecord:
425 displayName: Deployment Voting Record
427 serviceQuestionnaire:
428 displayName: Service Questionnaire
430 serviceSecurityTemplate:
431 displayName: Service Security Template
434 # Service api artifacts placeHolder
435 # For each artifact the following properties exists:
437 # displayName - The display name of the artifact
438 # type - The type of the artifact
441 displayName: Configuration
444 displayName: Instantiation
447 displayName: Monitoring
450 displayName: Reporting
459 # The maximum number of keys permited for additional information on service
460 additionalInformationMaxNumberOfKeys: 50
462 # Collect process statistics
465 # Should monitoring be enabled
468 # In case of going through the FE server proxy the information to the BE
471 # What is the interval of the statistics collection
472 probeIntervalInSeconds: 15
474 defaultHeatArtifactTimeoutMinutes: 60
476 # Service deployment artifacts placeHolder
477 # For each artifact the following properties exists:
479 # acceptedTypes - File types that can be uploaded as each artifact
480 serviceDeploymentArtifacts:
487 MODEL_INVENTORY_PROFILE:
493 UCPE_LAYER_2_CONFIGURATION:
504 AAI_VF_INSTANCE_MODEL:
515 # Resource deployment artifacts placeHolder
516 # For each artifact the following properties exists:
518 # acceptedTypes - File types that can be uploaded as each artifact
519 # validForRespurceTypes - Resource types that support each artifact.
520 # If left empty it means all resource types are valid
521 resourceDeploymentArtifacts:
526 validForResourceTypes: *allResourceTypes
531 validForResourceTypes: *allResourceTypes
536 validForResourceTypes: *allResourceTypes
541 validForResourceTypes: *allResourceTypes
544 validForResourceTypes: *allResourceTypes
548 validForResourceTypes: *allResourceTypes
552 validForResourceTypes: *allResourceTypes
556 validForResourceTypes: *allResourceTypes
560 validForResourceTypes: *allResourceTypes
561 MODEL_INVENTORY_PROFILE:
564 validForResourceTypes: *allResourceTypes
568 validForResourceTypes: *allResourceTypes
569 LIFECYCLE_OPERATIONS:
573 validForResourceTypes:
580 validForResourceTypes: *allResourceTypes
584 validForResourceTypes: *allResourceTypes
587 validForResourceTypes:
593 validForResourceTypes:
599 validForResourceTypes:
605 validForResourceTypes:
610 validForResourceTypes:
615 validForResourceTypes:
621 validForResourceTypes:
626 validForResourceTypes:
630 validForResourceTypes: *allResourceTypes
633 validForResourceTypes: *allResourceTypes
636 validForResourceTypes: *allResourceTypes
642 validForResourceTypes:
646 # Resource instance deployment artifacts placeHolder
647 # For each artifact the following properties exists:
649 # acceptedTypes - File types that can be uploaded as each artifact
650 # validForRespurceTypes - Resource types that support each artifact.
651 # If left empty it means all resource types are valid
652 resourceInstanceDeploymentArtifacts:
666 DCAE_INVENTORY_TOSCA:
673 DCAE_INVENTORY_POLICY:
678 DCAE_INVENTORY_BLUEPRINT:
680 DCAE_INVENTORY_EVENT:
684 validForResourceTypes: *allResourceTypes
687 validForResourceTypes: *allResourceTypes
694 # Resource informational artifacts placeHolder
695 # For each artifact the following properties exists:
697 # acceptedTypes - File types that can be uploaded as each artifact
698 # validForRespurceTypes - Resource types that support each artifact.
699 # If left empty it means all resource types are valid
700 resourceInformationalArtifacts:
703 validForResourceTypes: *allResourceTypes
706 validForResourceTypes: *allResourceTypes
709 validForResourceTypes: *allResourceTypes
712 validForResourceTypes: *allResourceTypes
715 validForResourceTypes: *allResourceTypes
718 validForResourceTypes: *allResourceTypes
721 validForResourceTypes: *allResourceTypes
724 validForResourceTypes: *allResourceTypes
727 validForResourceTypes: *allResourceTypes
730 validForResourceTypes:
741 validForResourceTypes: *allResourceTypes
744 validForResourceTypes: *allResourceTypes
747 validForResourceTypes:
752 # Resource informational deployment artifact placeholder
753 resourceInformationalDeployedArtifacts:
755 # Requirements needed to be fulfilled before certificattion
756 requirementsToFulfillBeforeCert:
758 # Capabillities needed to be fulfilled before certificattion
759 capabilitiesToConsumeBeforeCert:
761 # Urls that should not be logged
763 - /sdc2/rest/healthCheck
765 # When component is being set as deleted those are the clean configurations
766 cleanComponentsConfiguration:
768 # The interval to check for deleted components to clean
769 cleanIntervalInMinutes: 1440
771 # The components types to delete
776 # Deprecated. Will be removed in future releases
777 artifactsIndex: resources
779 # Used to add header and footer to heatENV files generated by SDC
780 heatEnvArtifactHeader: ""
781 heatEnvArtifactFooter: ""
785 # Onboarding protocol
788 # Onboarding backend hostname
789 host: <%= @host_ip %>
791 # Onboarding backend http port
792 port: <%= @catalog_port %>
794 # The url that being used when downloading CSARs
795 downloadCsarUri: "/onboarding-api/v1.0/vendor-software-products/packages"
797 # Url for onboarding health check
798 healthCheckUri: "/onboarding-api/v1.0/healthcheck"
802 # Switchover configuration is used for geo redundency to provide automatic failovers
812 changePriorityUser: ecompasdc
813 changePriorityPassword: ecompasdc123
815 publishNetworkBody: '{"note":"comment"}'
817 beSet: { changePriorityUrl: "", changePriorityBody: '{"name":"","uri":"","no_ad_redirection":false,"v4groups":{"failover_groups":["","","failover_policy":["FAILALL"]},"comment":"","intended_app_proto":"DNS"}'}
818 feSet: { changePriorityUrl: "", changePriorityBody: '{"name":"","uri":"","no_ad_redirection":false,"v4groups":{"failover_groups":["",""],"failover_policy":["FAILALL"]},"comment":"","intended_app_proto":"DNS"}'}
820 # Cache for datatypes. Improving run times for data type search
825 pollIntervalInSec: 60
827 # Deprecated. Will be removed in future releases
832 resourcesSizeInCache: 300
833 servicesSizeInCache: 200
834 productsSizeInCache: 100
836 syncIntervalInSecondes: 43200
837 waitOnShutDownInMinutes: 10
838 numberOfCacheWorkers: 4
840 # Validators for tosca properties
842 stringMaxLength: 2500
844 # Should audit be disabled
847 # VF module validations properties
849 min_vf_module_instances:
852 max_vf_module_instances:
860 forNonBaseModule: Expansion
862 # For each generic node type defining it's coresponding class
863 genericAssetNodeTypes:
864 VFC: org.openecomp.resource.abstract.nodes.VFC
865 CVFC: org.openecomp.resource.abstract.nodes.VFC
866 VF : org.openecomp.resource.abstract.nodes.VF
867 PNF: org.openecomp.resource.abstract.nodes.PNF
868 Service: org.openecomp.resource.abstract.nodes.service
871 BE-distribution-engine-configuration.yaml
872 -----------------------------------------
878 <% node['UEB']['fqdn'].each do |conn| -%>
883 uebPublicKey: <%= node['UEB']['PublicKey'] %>
886 uebSecretKey: <%= node['UEB']['SecretKey'] %>
888 # Topic name for receiving distribution notification
889 distributionNotifTopicName: SDC-DISTR-NOTIF-TOPIC
891 # Topic name for distribution status
892 distributionStatusTopicName: SDC-DISTR-STATUS-TOPIC
894 # Distibution initializtion retry interval time
895 initRetryIntervalSec: 5
897 # Distribution initializtion maximum interval time
898 initMaxIntervalSec: 60
900 # Deprecated. Will be removed in future releases
901 distribNotifServiceArtifactTypes:
905 # Deprecated. Will be removed in future releases
906 distribNotifResourceArtifactTypes:
911 # Distribution environments
913 - <%= node.chef_environment %>
915 distributionStatusTopic:
917 # Distribution status polling interval
918 pollingIntervalSec: 60
920 # Distribution status fetch time
923 # Distribution status consumer group
924 consumerGroup: sdc-<%= node.chef_environment %>
926 # Distribution status consumer id
927 consumerId: sdc-<%= node.chef_environment %>1
929 distributionNotificationTopic:
931 # Minimum pool size for distribution notifications
934 # Maximum pool size for distribution notifications
935 maxThreadPoolSize: 10
937 # Maximum waiting time after sending a notification
938 maxWaitingAfterSendingSeconds: 5
940 # Deprecated. Will be removed in future releases
945 # STarting the distribution engine
946 startDistributionEngine: true
948 #This is false by default, since ONAP Dmaap currently doesn't support https
949 # Does https should be used with Dmaap
950 useHttpsWithDmaap: false
953 BE-onboarding-configuration.yaml
954 --------------------------------
960 # Backend onboarding notifications polling interval in milliseconds
961 pollingIntervalMsec: 2000
963 # Backend onboarding notifications selection size
966 # Backend onboarding norifications backend hostname
967 beHost: <%= @catalog_ip %>
969 # Backend onboarding notifications backend http port
970 beHttpPort: <%= @catalog_port %>
978 # Titan storage backend
979 storage.backend=cassandra
981 # Titan storage hostname
982 storage.hostname=<%= @CASSANDRA_IP %>
984 # Titan storage port]
987 # Titan storage username
988 storage.username=<%= @CASSANDRA_USR %>
990 # Titan storage password
991 storage.password=<%= @CASSANDRA_PWD %>
993 # Titan storage connection timeout
994 storage.connection-timeout=10000
996 # Titan cassandra keyspace name
997 storage.cassandra.keyspace=sdctitan
999 # Is Titan cassandra ssl is enabled
1000 storage.cassandra.ssl.enabled=false
1002 # Titan cassandra ssl truststore file location
1003 storage.cassandra.ssl.truststore.location=/var/lib/jetty/config/.truststore
1005 # Titan cassandra ssl truststore file password
1006 storage.cassandra.ssl.truststore.password=Aa123456
1008 # Does titan should use cache
1009 cache.db-cache = false
1011 # How long in milliseconds should the cache keep entries before flushing them
1012 cache.db-cache-clean-wait = 20
1014 # Default experation time in milliseconds for entries in the cache
1015 cache.db-cache-time = 180000
1017 # Size of titan database cache
1018 cache.db-cache-size = 0.5
1020 # Titan cassandra read consistency level
1021 storage.cassandra.read-consistency-level=LOCAL_QUORUM
1023 # Titan cassandra write consistency level
1024 storage.cassandra.write-consistency-level=LOCAL_QUORUM
1026 # Titan cassandra replication strategy class name
1027 storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.NetworkTopologyStrategy
1029 # Titan cassandra replication startegy options
1030 storage.cassandra.replication-strategy-options=<%= @DC_NAME %>,<%= @rep_factor %>
1032 # Titan cassandra local data center name
1033 storage.cassandra.astyanax.local-datacenter=<%= @DC_NAME %>
1035 # Number of times the system attempts to acquire a lock before giving up and throwing an exception
1036 storage.lock.retries=5
1038 # Number of milliseconds the system waits for a lock application to be acknowledged by the storage backend
1039 storage.lock.wait-time=500
1042 Frontend Configuration
1043 ======================
1045 FE-configuration.yaml
1046 ---------------------
1050 # Catalog frontend hostname
1051 feFqdn: <%= @fe_host_ip %>
1053 # Catalog backend hostname
1054 beHost: <%= @be_host_ip %>
1056 # Catalog backend http port
1057 beHttpPort: <%= @catalog_port %>
1059 # Catalog backend http context
1060 beContext: /sdc2/rest/v1/catalog/upload/resources
1062 # Catalog backend protocol
1065 # Catalog backend ssl port
1066 beSslPort: <%= @ssl_port %>
1068 # Threadpool size for handling requests
1071 # Request processing timeout (seconds)
1074 # Health check timeout in milliseconds
1075 healthCheckSocketTimeoutInMs: 5000
1077 # Health check inteval in seconds
1078 healthCheckIntervalInSeconds: 5
1082 # Onboarding protocol
1085 # Onboarding frontend hostname
1086 host: <%= @fe_host_ip %>
1088 # Onboarding frontend port
1091 # Onboarding frontend health check url
1092 healthCheckUri: "/onboarding/v1.0/healthcheck"
1094 # Request headers for identification of the user that made the request
1095 identificationHeaderFields:
1097 - &HTTP_IV_USER HTTP_IV_USER
1103 - &HTTP_CSP_ATTUID HTTP_CSP_ATTUID
1104 - &csp-attuid csp-attuid
1106 - &HTTP_CSP_WSTYPE HTTP_CSP_WSTYPE
1107 - &csp-wstype csp-wstype
1109 # Optional request headers
1110 optionalHeaderFields:
1112 - &HTTP_CSP_FIRSTNAME HTTP_CSP_FIRSTNAME
1113 - &csp-firstname csp-firstname
1115 - &HTTP_CSP_LASTNAME HTTP_CSP_LASTNAME
1116 - &csp-lastname csp-lastname
1118 - &HTTP_IV_REMOTE_ADDRESS HTTP_IV_REMOTE_ADDRESS
1119 - &iv-remote-address iv-remote-address
1121 - &HTTP_CSP_EMAIL HTTP_CSP_EMAIL
1122 - &csp-email csp-email
1124 # Frontend configuration version
1127 # Frontend configuration release date
1128 released: 2012-11-30
1130 # Connection parameters
1132 url: jdbc:mysql://localhost:3306/db
1135 # Protocols being used in SDC
1140 # Collect process statistics
1143 # Should monitoring be enabled
1146 # In case of going through the FE server proxy the information to the BE
1149 # What is the interval of the statistics collection
1150 probeIntervalInSeconds: 15
1153 kibanaHost: localhost
1158 # Kibana usage protocol
1159 kibanaProtocol: http
1162 FE-onboarding-configuration.yaml
1163 --------------------------------
1169 # Frontend onboarding notifications polling interval in milliseconds
1170 pollingIntervalMsec: 2000
1172 # Frontend onboarding notifications selection size
1175 # Frontend onboarding norifications backend hostname
1176 beHost: <%= @catalog_ip %>
1178 # Frontend onboarding notifications backend http port
1179 beHttpPort: <%= @catalog_port %>