configmap.yaml.j2 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664
  1. # More info about the template: https://docs.openstack.org/kuryr-kubernetes/latest/installation/containerized.html#generating-kuryr-resource-definitions-for-kubernetes
  2. apiVersion: v1
  3. kind: ConfigMap
  4. metadata:
  5. name: kuryr-config
  6. namespace: {{ kuryr_namespace }}
  7. data:
  8. kuryr.conf: |+
  9. [DEFAULT]
  10. #
  11. # From kuryr_kubernetes
  12. #
  13. # Directory for Kuryr vif binding executables. (string value)
  14. #bindir = /usr/libexec/kuryr
  15. # Neutron subnetpool name will be prefixed by this. (string value)
  16. #subnetpool_name_prefix = kuryrPool
  17. # baremetal or nested-containers are the supported values. (string value)
  18. #deployment_type = baremetal
  19. # If set to true, the logging level will be set to DEBUG instead of the default
  20. # INFO level. (boolean value)
  21. # Note: This option can be changed without restarting.
  22. #debug = false
  23. # The name of a logging configuration file. This file is appended to any
  24. # existing logging configuration files. For details about logging configuration
  25. # files, see the Python logging module documentation. Note that when logging
  26. # configuration files are used then all logging configuration is set in the
  27. # configuration file and other logging configuration options are ignored (for
  28. # example, logging_context_format_string). (string value)
  29. # Note: This option can be changed without restarting.
  30. # Deprecated group/name - [DEFAULT]/log_config
  31. #log_config_append = <None>
  32. # Defines the format string for %%(asctime)s in log records. Default:
  33. # %(default)s . This option is ignored if log_config_append is set. (string
  34. # value)
  35. #log_date_format = %Y-%m-%d %H:%M:%S
  36. # (Optional) Name of log file to send logging output to. If no default is set,
  37. # logging will go to stderr as defined by use_stderr. This option is ignored if
  38. # log_config_append is set. (string value)
  39. # Deprecated group/name - [DEFAULT]/logfile
  40. #log_file = <None>
  41. # (Optional) The base directory used for relative log_file paths. This option
  42. # is ignored if log_config_append is set. (string value)
  43. # Deprecated group/name - [DEFAULT]/logdir
  44. #log_dir = <None>
  45. # Uses logging handler designed to watch file system. When log file is moved or
  46. # removed this handler will open a new log file with specified path
  47. # instantaneously. It makes sense only if log_file option is specified and
  48. # Linux platform is used. This option is ignored if log_config_append is set.
  49. # (boolean value)
  50. #watch_log_file = false
  51. # Use syslog for logging. Existing syslog format is DEPRECATED and will be
  52. # changed later to honor RFC5424. This option is ignored if log_config_append
  53. # is set. (boolean value)
  54. #use_syslog = false
  55. # Enable journald for logging. If running in a systemd environment you may wish
  56. # to enable journal support. Doing so will use the journal native protocol
  57. # which includes structured metadata in addition to log messages.This option is
  58. # ignored if log_config_append is set. (boolean value)
  59. #use_journal = false
  60. # Syslog facility to receive log lines. This option is ignored if
  61. # log_config_append is set. (string value)
  62. #syslog_log_facility = LOG_USER
  63. # Log output to standard error. This option is ignored if log_config_append is
  64. # set. (boolean value)
  65. #use_stderr = false
  66. # Format string to use for log messages with context. (string value)
  67. #logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
  68. # Format string to use for log messages when context is undefined. (string
  69. # value)
  70. #logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
  71. # Additional data to append to log message when logging level for the message
  72. # is DEBUG. (string value)
  73. #logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
  74. # Prefix each line of exception output with this format. (string value)
  75. #logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
  76. # Defines the format string for %(user_identity)s that is used in
  77. # logging_context_format_string. (string value)
  78. #logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
  79. # List of package logging levels in logger=LEVEL pairs. This option is ignored
  80. # if log_config_append is set. (list value)
  81. #default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
  82. # Enables or disables publication of error events. (boolean value)
  83. #publish_errors = false
  84. # The format for an instance that is passed with the log message. (string
  85. # value)
  86. #instance_format = "[instance: %(uuid)s] "
  87. # The format for an instance UUID that is passed with the log message. (string
  88. # value)
  89. #instance_uuid_format = "[instance: %(uuid)s] "
  90. # Interval, number of seconds, of log rate limiting. (integer value)
  91. #rate_limit_interval = 0
  92. # Maximum number of logged messages per rate_limit_interval. (integer value)
  93. #rate_limit_burst = 0
  94. # Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
  95. # or empty string. Logs with level greater or equal to rate_limit_except_level
  96. # are not filtered. An empty string means that all levels are filtered. (string
  97. # value)
  98. #rate_limit_except_level = CRITICAL
  99. # Enables or disables fatal status of deprecations. (boolean value)
  100. #fatal_deprecations = false
  101. [binding]
  102. # Configuration options for container interface binding.
  103. #
  104. # From kuryr_kubernetes
  105. #
  106. # The name prefix of the veth endpoint put inside the container. (string value)
  107. #veth_dst_prefix = eth
  108. # Driver to use for binding and unbinding ports. (string value)
  109. # Deprecated group/name - [binding]/driver
  110. #default_driver = kuryr.lib.binding.drivers.veth
  111. default_driver = kuryr.lib.binding.drivers.vlan
  112. [cni_daemon]
  113. #
  114. # From kuryr_kubernetes
  115. #
  116. # Enable CNI Daemon configuration. (boolean value)
  117. daemon_enabled = true
  118. # Bind address for CNI daemon HTTP server. It is recommened to allow only local
  119. # connections. (string value)
  120. bind_address = 127.0.0.1:50036
  121. # Maximum number of processes that will be spawned to process requests from CNI
  122. # driver. (integer value)
  123. #worker_num = 30
  124. # Time (in seconds) the CNI daemon will wait for VIF annotation to appear in
  125. # pod metadata before failing the CNI request. (integer value)
  126. #vif_annotation_timeout = 120
  127. # Kuryr uses pyroute2 library to manipulate networking interfaces. When
  128. # processing a high number of Kuryr requests in parallel, it may take kernel
  129. # more time to process all networking stack changes. This option allows to tune
  130. # internal pyroute2 timeout. (integer value)
  131. #pyroute2_timeout = 30
  132. # Set to True when you are running kuryr-daemon inside a Docker container on
  133. # Kubernetes host. E.g. as DaemonSet on Kubernetes cluster Kuryr is supposed to
  134. # provide networking for. This mainly means thatkuryr-daemon will look for
  135. # network namespaces in $netns_proc_dir instead of /proc. (boolean value)
  136. docker_mode = true
  137. # When docker_mode is set to True, this config option should be set to where
  138. # host's /proc directory is mounted. Please note that mounting it is necessary
  139. # to allow Kuryr-Kubernetes to move host interfaces between host network
  140. # namespaces, which is essential for Kuryr to work. (string value)
  141. netns_proc_dir = /host_proc
  142. [kubernetes]
  143. #
  144. # From kuryr_kubernetes
  145. #
  146. # The root URL of the Kubernetes API (string value)
  147. api_root = {{ openshift.master.api_url }}
  148. # Absolute path to client cert to connect to HTTPS K8S_API (string value)
  149. # ssl_client_crt_file = /etc/kuryr/controller.crt
  150. # Absolute path client key file to connect to HTTPS K8S_API (string value)
  151. # ssl_client_key_file = /etc/kuryr/controller.key
  152. # Absolute path to ca cert file to connect to HTTPS K8S_API (string value)
  153. ssl_ca_crt_file = /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  154. # The token to talk to the k8s API
  155. token_file = /var/run/secrets/kubernetes.io/serviceaccount/token
  156. # HTTPS K8S_API server identity verification (boolean value)
  157. # TODO (apuimedo): Make configurable
  158. ssl_verify_server_crt = True
  159. # The driver to determine OpenStack project for pod ports (string value)
  160. pod_project_driver = default
  161. # The driver to determine OpenStack project for services (string value)
  162. service_project_driver = default
  163. # The driver to determine Neutron subnets for pod ports (string value)
  164. pod_subnets_driver = default
  165. # The driver to determine Neutron subnets for services (string value)
  166. service_subnets_driver = default
  167. # The driver to determine Neutron security groups for pods (string value)
  168. pod_security_groups_driver = default
  169. # The driver to determine Neutron security groups for services (string value)
  170. service_security_groups_driver = default
  171. # The driver that provides VIFs for Kubernetes Pods. (string value)
  172. pod_vif_driver = nested-vlan
  173. # The driver that manages VIFs pools for Kubernetes Pods (string value)
  174. vif_pool_driver = {{ kuryr_openstack_pool_driver }}
  175. [neutron]
  176. # Configuration options for OpenStack Neutron
  177. #
  178. # From kuryr_kubernetes
  179. #
  180. # Authentication URL (string value)
  181. auth_url = {{ kuryr_openstack_auth_url }}
  182. # Authentication type to load (string value)
  183. # Deprecated group/name - [neutron]/auth_plugin
  184. auth_type = password
  185. # Domain ID to scope to (string value)
  186. user_domain_name = {{ kuryr_openstack_user_domain_name }}
  187. # User's password (string value)
  188. password = {{ kuryr_openstack_password }}
  189. # Domain name containing project (string value)
  190. project_domain_name = {{ kuryr_openstack_project_domain_name }}
  191. # Project ID to scope to (string value)
  192. # Deprecated group/name - [neutron]/tenant-id
  193. project_id = {{ kuryr_openstack_project_id }}
  194. # Token (string value)
  195. #token = <None>
  196. # Trust ID (string value)
  197. #trust_id = <None>
  198. # User's domain id (string value)
  199. #user_domain_id = <None>
  200. # User id (string value)
  201. #user_id = <None>
  202. # Username (string value)
  203. # Deprecated group/name - [neutron]/user-name
  204. username = {{kuryr_openstack_username }}
  205. # Whether a plugging operation is failed if the port to plug does not become
  206. # active (boolean value)
  207. #vif_plugging_is_fatal = false
  208. # Seconds to wait for port to become active (integer value)
  209. #vif_plugging_timeout = 0
  210. [neutron_defaults]
  211. ovs_bridge = br-int
  212. pod_security_groups = {{ kuryr_openstack_pod_sg_id }}
  213. pod_subnet = {{ kuryr_openstack_pod_subnet_id }}
  214. service_subnet = {{ kuryr_openstack_service_subnet_id }}
  215. project = {{ kuryr_openstack_pod_project_id }}
  216. # TODO (apuimedo): Remove the duplicated line just after this one once the
  217. # RDO packaging contains the upstream patch
  218. worker_nodes_subnet = {{ kuryr_openstack_worker_nodes_subnet_id }}
  219. external_svc_net = {{ kuryr_openstack_public_net_id }}
  220. {% if kuryr_openstack_public_subnet_id|default(false) %}
  221. external_svc_subnet = {{ kuryr_openstack_public_subnet_id }}
  222. {% endif %}
  223. [pod_vif_nested]
  224. worker_nodes_subnet = {{ kuryr_openstack_worker_nodes_subnet_id }}
  225. [pool_manager]
  226. #
  227. # From kuryr_kubernetes
  228. #
  229. # Absolute path to socket file that will be used for communication with the
  230. # Pool Manager daemon (string value)
  231. #sock_file = /run/kuryr/kuryr_manage.sock
  232. [vif_pool]
  233. #
  234. # From kuryr_kubernetes
  235. #
  236. # Set a maximun amount of ports per pool. 0 to disable (integer value)
  237. ports_pool_max = {{ kuryr_openstack_pool_max | default(0) }}
  238. # Set a target minimum size of the pool of ports (integer value)
  239. ports_pool_min = {{ kuryr_openstack_pool_min | default(1) }}
  240. # Number of ports to be created in a bulk request (integer value)
  241. ports_pool_batch = {{ kuryr_openstack_pool_batch | default(5) }}
  242. # Minimun interval (in seconds) between pool updates (integer value)
  243. ports_pool_update_frequency = {{ kuryr_openstack_pool_update_frequency | default(20) }}
  244. # Pod VIF drivers vs Pool Drivers mapping allowed
  245. pools_vif_drivers = nested:nested-vlan,neutron:neutron-vif
  246. [health_server]
  247. port = {{ kuryr_controller_healthcheck_port }}
  248. kuryr-cni.conf: |+
  249. [DEFAULT]
  250. #
  251. # From kuryr_kubernetes
  252. #
  253. # Directory for Kuryr vif binding executables. (string value)
  254. #bindir = /usr/libexec/kuryr
  255. # Neutron subnetpool name will be prefixed by this. (string value)
  256. #subnetpool_name_prefix = kuryrPool
  257. # baremetal or nested-containers are the supported values. (string value)
  258. #deployment_type = baremetal
  259. # If set to true, the logging level will be set to DEBUG instead of the default
  260. # INFO level. (boolean value)
  261. # Note: This option can be changed without restarting.
  262. #debug = false
  263. # The name of a logging configuration file. This file is appended to any
  264. # existing logging configuration files. For details about logging configuration
  265. # files, see the Python logging module documentation. Note that when logging
  266. # configuration files are used then all logging configuration is set in the
  267. # configuration file and other logging configuration options are ignored (for
  268. # example, logging_context_format_string). (string value)
  269. # Note: This option can be changed without restarting.
  270. # Deprecated group/name - [DEFAULT]/log_config
  271. #log_config_append = <None>
  272. # Defines the format string for %%(asctime)s in log records. Default:
  273. # %(default)s . This option is ignored if log_config_append is set. (string
  274. # value)
  275. #log_date_format = %Y-%m-%d %H:%M:%S
  276. # (Optional) Name of log file to send logging output to. If no default is set,
  277. # logging will go to stderr as defined by use_stderr. This option is ignored if
  278. # log_config_append is set. (string value)
  279. # Deprecated group/name - [DEFAULT]/logfile
  280. #log_file = <None>
  281. # (Optional) The base directory used for relative log_file paths. This option
  282. # is ignored if log_config_append is set. (string value)
  283. # Deprecated group/name - [DEFAULT]/logdir
  284. #log_dir = <None>
  285. # Uses logging handler designed to watch file system. When log file is moved or
  286. # removed this handler will open a new log file with specified path
  287. # instantaneously. It makes sense only if log_file option is specified and
  288. # Linux platform is used. This option is ignored if log_config_append is set.
  289. # (boolean value)
  290. #watch_log_file = false
  291. # Use syslog for logging. Existing syslog format is DEPRECATED and will be
  292. # changed later to honor RFC5424. This option is ignored if log_config_append
  293. # is set. (boolean value)
  294. #use_syslog = false
  295. # Enable journald for logging. If running in a systemd environment you may wish
  296. # to enable journal support. Doing so will use the journal native protocol
  297. # which includes structured metadata in addition to log messages.This option is
  298. # ignored if log_config_append is set. (boolean value)
  299. #use_journal = false
  300. # Syslog facility to receive log lines. This option is ignored if
  301. # log_config_append is set. (string value)
  302. #syslog_log_facility = LOG_USER
  303. # Log output to standard error. This option is ignored if log_config_append is
  304. # set. (boolean value)
  305. use_stderr = true
  306. # Format string to use for log messages with context. (string value)
  307. #logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
  308. # Format string to use for log messages when context is undefined. (string
  309. # value)
  310. #logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
  311. # Additional data to append to log message when logging level for the message
  312. # is DEBUG. (string value)
  313. #logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
  314. # Prefix each line of exception output with this format. (string value)
  315. #logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
  316. # Defines the format string for %(user_identity)s that is used in
  317. # logging_context_format_string. (string value)
  318. #logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
  319. # List of package logging levels in logger=LEVEL pairs. This option is ignored
  320. # if log_config_append is set. (list value)
  321. #default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
  322. # Enables or disables publication of error events. (boolean value)
  323. #publish_errors = false
  324. # The format for an instance that is passed with the log message. (string
  325. # value)
  326. #instance_format = "[instance: %(uuid)s] "
  327. # The format for an instance UUID that is passed with the log message. (string
  328. # value)
  329. #instance_uuid_format = "[instance: %(uuid)s] "
  330. # Interval, number of seconds, of log rate limiting. (integer value)
  331. #rate_limit_interval = 0
  332. # Maximum number of logged messages per rate_limit_interval. (integer value)
  333. #rate_limit_burst = 0
  334. # Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
  335. # or empty string. Logs with level greater or equal to rate_limit_except_level
  336. # are not filtered. An empty string means that all levels are filtered. (string
  337. # value)
  338. #rate_limit_except_level = CRITICAL
  339. # Enables or disables fatal status of deprecations. (boolean value)
  340. #fatal_deprecations = false
  341. [binding]
  342. # Configuration options for container interface binding.
  343. #
  344. # From kuryr_kubernetes
  345. #
  346. # Specifies the name of the Nova instance interface to link the virtual devices
  347. # to (only applicable to some binding drivers. (string value)
  348. link_iface = {{ kuryr_cni_link_interface }}
  349. [cni_daemon]
  350. #
  351. # From kuryr_kubernetes
  352. #
  353. # Enable CNI Daemon configuration. (boolean value)
  354. daemon_enabled = true
  355. # Bind address for CNI daemon HTTP server. It is recommened to allow only local
  356. # connections. (string value)
  357. bind_address = 127.0.0.1:50036
  358. # Maximum number of processes that will be spawned to process requests from CNI
  359. # driver. (integer value)
  360. #worker_num = 30
  361. # Time (in seconds) the CNI daemon will wait for VIF annotation to appear in
  362. # pod metadata before failing the CNI request. (integer value)
  363. #vif_annotation_timeout = 120
  364. # Kuryr uses pyroute2 library to manipulate networking interfaces. When
  365. # processing a high number of Kuryr requests in parallel, it may take kernel
  366. # more time to process all networking stack changes. This option allows to tune
  367. # internal pyroute2 timeout. (integer value)
  368. #pyroute2_timeout = 30
  369. # Set to True when you are running kuryr-daemon inside a Docker container on
  370. # Kubernetes host. E.g. as DaemonSet on Kubernetes cluster Kuryr is supposed to
  371. # provide networking for. This mainly means thatkuryr-daemon will look for
  372. # network namespaces in $netns_proc_dir instead of /proc. (boolean value)
  373. docker_mode = true
  374. # When docker_mode is set to True, this config option should be set to where
  375. # host's /proc directory is mounted. Please note that mounting it is necessary
  376. # to allow Kuryr-Kubernetes to move host interfaces between host network
  377. # namespaces, which is essential for Kuryr to work. (string value)
  378. netns_proc_dir = /host_proc
  379. [kubernetes]
  380. #
  381. # From kuryr_kubernetes
  382. #
  383. # The root URL of the Kubernetes API (string value)
  384. api_root = {{ openshift.master.api_url }}
  385. # Absolute path to client cert to connect to HTTPS K8S_API (string value)
  386. # ssl_client_crt_file = /etc/kuryr/controller.crt
  387. # Absolute path client key file to connect to HTTPS K8S_API (string value)
  388. # ssl_client_key_file = /etc/kuryr/controller.key
  389. # Absolute path to ca cert file to connect to HTTPS K8S_API (string value)
  390. ssl_ca_crt_file = /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  391. # The token to talk to the k8s API
  392. token_file = /var/run/secrets/kubernetes.io/serviceaccount/token
  393. # HTTPS K8S_API server identity verification (boolean value)
  394. # TODO (apuimedo): Make configurable
  395. ssl_verify_server_crt = True
  396. # The driver to determine OpenStack project for pod ports (string value)
  397. pod_project_driver = default
  398. # The driver to determine OpenStack project for services (string value)
  399. service_project_driver = default
  400. # The driver to determine Neutron subnets for pod ports (string value)
  401. pod_subnets_driver = default
  402. # The driver to determine Neutron subnets for services (string value)
  403. service_subnets_driver = default
  404. # The driver to determine Neutron security groups for pods (string value)
  405. pod_security_groups_driver = default
  406. # The driver to determine Neutron security groups for services (string value)
  407. service_security_groups_driver = default
  408. # The driver that provides VIFs for Kubernetes Pods. (string value)
  409. pod_vif_driver = nested-vlan
  410. # The driver that manages VIFs pools for Kubernetes Pods (string value)
  411. vif_pool_driver = {{ kuryr_openstack_pool_driver }}
  412. [neutron]
  413. # Configuration options for OpenStack Neutron
  414. #
  415. # From kuryr_kubernetes
  416. #
  417. # Authentication URL (string value)
  418. auth_url = {{ kuryr_openstack_auth_url }}
  419. # Authentication type to load (string value)
  420. # Deprecated group/name - [neutron]/auth_plugin
  421. auth_type = password
  422. # Domain ID to scope to (string value)
  423. user_domain_name = {{ kuryr_openstack_user_domain_name }}
  424. # User's password (string value)
  425. password = {{ kuryr_openstack_password }}
  426. # Domain name containing project (string value)
  427. project_domain_name = {{ kuryr_openstack_project_domain_name }}
  428. # Project ID to scope to (string value)
  429. # Deprecated group/name - [neutron]/tenant-id
  430. project_id = {{ kuryr_openstack_project_id }}
  431. # Token (string value)
  432. #token = <None>
  433. # Trust ID (string value)
  434. #trust_id = <None>
  435. # User's domain id (string value)
  436. #user_domain_id = <None>
  437. # User id (string value)
  438. #user_id = <None>
  439. # Username (string value)
  440. # Deprecated group/name - [neutron]/user-name
  441. username = {{kuryr_openstack_username }}
  442. # Whether a plugging operation is failed if the port to plug does not become
  443. # active (boolean value)
  444. #vif_plugging_is_fatal = false
  445. # Seconds to wait for port to become active (integer value)
  446. #vif_plugging_timeout = 0
  447. [neutron_defaults]
  448. ovs_bridge = br-int
  449. pod_security_groups = {{ kuryr_openstack_pod_sg_id }}
  450. pod_subnet = {{ kuryr_openstack_pod_subnet_id }}
  451. service_subnet = {{ kuryr_openstack_service_subnet_id }}
  452. project = {{ kuryr_openstack_pod_project_id }}
  453. # TODO (apuimedo): Remove the duplicated line just after this one once the
  454. # RDO packaging contains the upstream patch
  455. worker_nodes_subnet = {{ kuryr_openstack_worker_nodes_subnet_id }}
  456. [pod_vif_nested]
  457. worker_nodes_subnet = {{ kuryr_openstack_worker_nodes_subnet_id }}
  458. [pool_manager]
  459. #
  460. # From kuryr_kubernetes
  461. #
  462. # Absolute path to socket file that will be used for communication with the
  463. # Pool Manager daemon (string value)
  464. #sock_file = /run/kuryr/kuryr_manage.sock
  465. [vif_pool]
  466. #
  467. # From kuryr_kubernetes
  468. #
  469. # Set a maximun amount of ports per pool. 0 to disable (integer value)
  470. ports_pool_max = {{ kuryr_openstack_pool_max | default(0) }}
  471. # Set a target minimum size of the pool of ports (integer value)
  472. ports_pool_min = {{ kuryr_openstack_pool_min | default(1) }}
  473. # Number of ports to be created in a bulk request (integer value)
  474. ports_pool_batch = {{ kuryr_openstack_pool_batch | default(5) }}
  475. # Minimun interval (in seconds) between pool updates (integer value)
  476. ports_pool_update_frequency = {{ kuryr_openstack_pool_update_frequency | default(20) }}
  477. [cni_health_server]
  478. port = {{ kuryr_cni_healthcheck_port }}
  479. # Maximum memory usage (MiB) before kuryr-daemon is marked as unhealthy
  480. max_memory_usage = -1