From ca49591ca461d51d7ddb0791f8268dc12e41c615 Mon Sep 17 00:00:00 2001 From: Kiran Thyagaraja Date: Mon, 29 Jan 2018 04:58:03 +0000 Subject: [PATCH] Added NetApp Support and brought back serviceaccount to make OCP happy --- defaults/main.yml | 7 ++++--- tasks/backends/rbd.yml | 1 + tasks/backends/xtremio.yml | 1 + tasks/cinder-api.yml | 1 + tasks/cinder-scheduler.yml | 1 + tasks/cinder-volume.yml | 2 ++ tasks/hiera.yml | 27 +++++++++++++++++++++++++++ templates/cinder.conf.j2 | 29 +++++++++++++++++++++++++++++ 8 files changed, 66 insertions(+), 3 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index c89087e..1651811 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,8 +1,9 @@ -#coe_host: "https://127.0.0.1:8443" -#kube_context: "kubernetes-admin@kubernetes" -#config_file: "~/.kube/config" +coe_host: "https://127.0.0.1:8443" +kube_context: +config_file: action: provision namespace: openstack +service_account: default privileged_service_account: openstack-priv database_password: weakpassword cinder_db_password: cinderpass diff --git a/tasks/backends/rbd.yml b/tasks/backends/rbd.yml index 7176c96..cda0847 100644 --- a/tasks/backends/rbd.yml +++ b/tasks/backends/rbd.yml @@ -61,6 +61,7 @@ k8s_apps_v1beta1_deployment: name: cinder-volume-rbd namespace: "{{ namespace }}" + service_account_name: "{{ service_account }}" labels: app: cinder-volume-rbd service: cinder-volume-rbd diff --git a/tasks/backends/xtremio.yml b/tasks/backends/xtremio.yml index 561f8ea..304824a 100644 --- a/tasks/backends/xtremio.yml +++ b/tasks/backends/xtremio.yml @@ -40,6 +40,7 @@ k8s_apps_v1beta1_deployment: name: cinder-volume-xtremio namespace: "{{ namespace }}" + service_account_name: "{{ service_account }}" labels: app: cinder-volume-xtremio service: cinder-volume-xtremio diff --git a/tasks/cinder-api.yml b/tasks/cinder-api.yml index 58a60a8..4a71082 100644 --- a/tasks/cinder-api.yml +++ b/tasks/cinder-api.yml @@ -79,6 +79,7 @@ k8s_apps_v1beta1_deployment: name: cinder-api namespace: "{{ namespace }}" + service_account_name: "{{ service_account }}" labels: app: cinder-api service: cinder-api diff --git a/tasks/cinder-scheduler.yml b/tasks/cinder-scheduler.yml index 23e7f03..fad9ffb 100644 --- a/tasks/cinder-scheduler.yml +++ b/tasks/cinder-scheduler.yml @@ -40,6 +40,7 @@ k8s_apps_v1beta1_deployment: name: cinder-scheduler namespace: "{{ namespace }}" + service_account_name: "{{ service_account }}" labels: app: cinder-scheduler service: cinder-scheduler diff --git a/tasks/cinder-volume.yml b/tasks/cinder-volume.yml index 1998020..124c8a0 100644 --- a/tasks/cinder-volume.yml +++ b/tasks/cinder-volume.yml @@ -7,3 +7,5 @@ when: result.conf_dict['cinder_enable_rbd_backend'] - include: backends/xtremio.yml when: result.conf_dict['dellemc_xtremio_iscsi_backend'] +- include: backends/netapp.yml + when: result.conf_dict['cinder_enable_netapp_backend'] diff --git a/tasks/hiera.yml b/tasks/hiera.yml index 3558c27..e924f0c 100644 --- a/tasks/hiera.yml +++ b/tasks/hiera.yml @@ -49,6 +49,33 @@ ceph::profile::params::fsid: ceph_cluster_fsid ceph::profile::params::authentication_type: authentication_type + tripleo::profile::base::cinder::volume::cinder_enable_netapp_backend: cinder_enable_netapp_backend + cinder::backend::netapp::title: title: tripleo_netapp.title + cinder::backend::netapp::netapp_login: tripleo_netapp.netapp_login + cinder::backend::netapp::netapp_password: tripleo_netapp.netapp_password + cinder::backend::netapp::netapp_server_hostname: tripleo_netapp.netapp_server_hostname + cinder::backend::netapp::netapp_server_port: tripleo_netapp.netapp_server_port + cinder::backend::netapp::netapp_size_multiplier: tripleo_netapp.netapp_size_multiplier + cinder::backend::netapp::netapp_storage_family: tripleo_netapp.netapp_storage_family + cinder::backend::netapp::netapp_storage_protocol: tripleo_netapp.netapp_storage_protocol + cinder::backend::netapp::netapp_transport_type: tripleo_netapp.netapp_transport_type + cinder::backend::netapp::netapp_vfiler: tripleo_netapp.netapp_vfiler + cinder::backend::netapp::netapp_volume_list: tripleo_netapp.netapp_volume_list + cinder::backend::netapp::netapp_vserver: tripleo_netapp.netapp_vserver + cinder::backend::netapp::netapp_partner_backend_name: tripleo_netapp.netapp_partner_backend_name + cinder::backend::netapp::nfs_shares: tripleo_netapp.nfs_shares + cinder::backend::netapp::nfs_shares_config: tripleo_netapp.nfs_shares_config + cinder::backend::netapp::nfs_mount_options: tripleo_netapp.nfs_mount_options + cinder::backend::netapp::netapp_copyoffload_tool_path: tripleo_netapp.netapp_copyoffload_tool_path + cinder::backend::netapp::netapp_controller_ips: tripleo_netapp.netapp_controller_ips + cinder::backend::netapp::netapp_sa_password: tripleo_netapp.netapp_sa_password + cinder::backend::netapp::netapp_storage_pools: tripleo_netapp.netapp_storage_pools + cinder::backend::netapp::netapp_host_type: tripleo_netapp.netapp_host_type + cinder::backend::netapp::netapp_webservice_path: tripleo_netapp.netapp_webservice_path + cinder::backend::netapp::nas_secure_file_operations: tripleo_netapp.nas_secure_file_operations + cinder::backend::netapp::nas_secure_file_permissions: tripleo_netapp.nas_secure_file_permissions + + default: '{{cinder_config}}' fact_variable: 'cinder_config' diff --git a/templates/cinder.conf.j2 b/templates/cinder.conf.j2 index dd6fe11..4841316 100644 --- a/templates/cinder.conf.j2 +++ b/templates/cinder.conf.j2 @@ -75,3 +75,32 @@ rbd_pool={{ result.conf_dict['cinder_rbd_pool_name'] }} rbd_secret_uuid={{ result.conf_dict['ceph_cluster_fsid'] }} backend_host=hostgroup {% endif %} + +{% if result.conf_dict['cinder_enable_netapp_backend'] %} +[tripleo_netapp] +title = tripleo_netapp +netapp_login = {{result.conf_dict['tripleo_netapp']['netapp_login']}} +netapp_password = {{result.conf_dict['tripleo_netapp']['netapp_password']}} +netapp_server_hostname = {{result.conf_dict['tripleo_netapp']['netapp_server_hostname']}} +netapp_server_port = {% if {{result.conf_dict['tripleo_netapp']['netapp_server_port']}} %} {{result.conf_dict['tripleo_netapp']['netapp_server_port']}} {% else %} 80 {% endif %} +netapp_size_multiplier = {% if {{result.conf_dict['tripleo_netapp']['netapp_size_multiplier']}} %} {{result.conf_dict['tripleo_netapp']['netapp_size_multiplier']}} {% else %} 1.2 {% endif %} +netapp_storage_family = {% if {{result.conf_dict['tripleo_netapp']['netapp_storage_family']}} %} {{result.conf_dict['tripleo_netapp']['netapp_storage_family']}} {% else %} ontap_cluster {% endif %} +netapp_storage_protocol = {% if {{result.conf_dict['tripleo_netapp']['netapp_storage_protocol']}} %} {{result.conf_dict['tripleo_netapp']['netapp_storage_protocol']}} {% else %} nfs {% endif %} +netapp_transport_type = {% if {{result.conf_dict['tripleo_netapp']['netapp_transport_type']}} %} {{result.conf_dict['tripleo_netapp']['netapp_transport_type']}} {% else %} nfs {% endif %} +netapp_vfiler = {% if {{result.conf_dict['tripleo_netapp']['netapp_vfiler']}} %} {{result.conf_dict['tripleo_netapp']['netapp_vfiler']}} {% else %} {% endif %} +netapp_volume_list = {% if {{result.conf_dict['tripleo_netapp']['netapp_volume_list']}} %} {{result.conf_dict['tripleo_netapp']['netapp_volume_list']}} {% else %} {% endif %} +netapp_vserver = {% if {{result.conf_dict['tripleo_netapp']['netapp_vserver']}} %} {{result.conf_dict['tripleo_netapp']['netapp_vserver']}} {% else %} {% endif %} +netapp_partner_backend_name = {% if {{result.conf_dict['tripleo_netapp']['netapp_partner_backend_name']}} %} {{result.conf_dict['tripleo_netapp']['netapp_partner_backend_name']}} {% else %} {% endif %} +nfs_shares = {% if {{result.conf_dict['tripleo_netapp']['nfs_shares']}} %} {{result.conf_dict['tripleo_netapp']['nfs_shares']}} {% else %} {% endif %} +nfs_shares_config = {% if {{result.conf_dict['tripleo_netapp']['nfs_shares_config']}} %} {{result.conf_dict['tripleo_netapp']['nfs_shares_config']}} {% else %} /etc/cinder/shares.conf {% endif %} +nfs_mount_options = {% if {{result.conf_dict['tripleo_netapp']['nfs_mount_options']}} %} {{result.conf_dict['tripleo_netapp']['nfs_mount_options']}} {% else %} {% endif %} +netapp_copyoffload_tool_path = if {{result.conf_dict['tripleo_netapp']['netapp_copyoffload_tool_path']}} %} {{result.conf_dict['tripleo_netapp']['netapp_copyoffload_tool_path']}} {% else %} {% endif %} +netapp_controller_ips = if {{result.conf_dict['tripleo_netapp']['netapp_controller_ips']}} %} {{result.conf_dict['tripleo_netapp']['netapp_controller_ips']}} {% else %} {% endif %} +netapp_sa_password = if {{result.conf_dict['tripleo_netapp']['netapp_sa_password']}} %} {{result.conf_dict['tripleo_netapp']['netapp_sa_password']}} {% else %} {% endif %} +netapp_storage_pools = if {{result.conf_dict['tripleo_netapp']['netapp_storage_pools']}} %} {{result.conf_dict['tripleo_netapp']['netapp_storage_pools']}} {% else %} {% endif %} +netapp_host_type =if {{result.conf_dict['tripleo_netapp']['netapp_host_type']}} %} {{result.conf_dict['tripleo_netapp']['netapp_host_type']}} {% else %} {% endif %} +netapp_webservice_path = if {{result.conf_dict['tripleo_netapp']['netapp_webservice_path']}} %} {{result.conf_dict['tripleo_netapp']['netapp_webservice_path']}} {% else %} /devmgr/v2 {% endif %} +nas_secure_file_operations = if {{result.conf_dict['tripleo_netapp']['nas_secure_file_operations']}} %} {{result.conf_dict['tripleo_netapp']['nas_secure_file_operations']}} {% else %} false {% endif %} +nas_secure_file_permissions = if {{result.conf_dict['tripleo_netapp']['nas_secure_file_permissions']}} %} {{result.conf_dict['tripleo_netapp']['nas_secure_file_permissions']}} {% else %} false {% endif %} +{% endif %} +