]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
drop iscsigw support
authorGuillaume Abrioux <gabrioux@ibm.com>
Fri, 16 Feb 2024 00:16:55 +0000 (01:16 +0100)
committerGuillaume Abrioux <gabrioux@ibm.com>
Fri, 16 Feb 2024 07:59:05 +0000 (08:59 +0100)
This service is no longer maintained.
Let's drop its support within ceph-ansible.

Signed-off-by: Guillaume Abrioux <gabrioux@ibm.com>
124 files changed:
CONTRIBUTING.md
Vagrantfile
contrib/vagrant_variables.yml.atomic
contrib/vagrant_variables.yml.linode
contrib/vagrant_variables.yml.openstack
dashboard.yml
docs/source/testing/scenarios.rst
generate_group_vars_sample.sh
group_vars/all.yml.sample
group_vars/iscsigws.yml.sample [deleted file]
group_vars/rhcs.yml.sample
infrastructure-playbooks/cephadm-adopt.yml
infrastructure-playbooks/cephadm.yml
infrastructure-playbooks/docker-to-podman.yml
infrastructure-playbooks/gather-ceph-logs.yml
infrastructure-playbooks/purge-cluster.yml
infrastructure-playbooks/purge-iscsi-gateways.yml [deleted file]
infrastructure-playbooks/rolling_update.yml
infrastructure-playbooks/switch-from-non-containerized-to-containerized-ceph-daemons.yml
infrastructure-playbooks/take-over-existing-cluster.yml
library/igw_client.py [deleted file]
library/igw_gateway.py [deleted file]
library/igw_lun.py [deleted file]
library/igw_purge.py [deleted file]
plugins/callback/installer_checkpoint.py
rhcs_edits.txt
roles/ceph-common/tasks/installs/prerequisite_rhcs_cdn_install.yml
roles/ceph-config/tasks/main.yml
roles/ceph-container-common/tasks/fetch_image.yml
roles/ceph-dashboard/tasks/configure_dashboard.yml
roles/ceph-defaults/defaults/main.yml
roles/ceph-facts/tasks/facts.yml
roles/ceph-handler/handlers/main.yml
roles/ceph-handler/tasks/check_running_containers.yml
roles/ceph-handler/tasks/check_socket_non_container.yml
roles/ceph-handler/tasks/handler_rbd_target_api_gw.yml [deleted file]
roles/ceph-handler/tasks/handler_tcmu_runner.yml [deleted file]
roles/ceph-infra/tasks/configure_firewall.yml
roles/ceph-infra/tasks/main.yml
roles/ceph-infra/templates/logrotate.conf.j2
roles/ceph-iscsi-gw/LICENSE [deleted file]
roles/ceph-iscsi-gw/README.md [deleted file]
roles/ceph-iscsi-gw/defaults/main.yml [deleted file]
roles/ceph-iscsi-gw/meta/main.yml [deleted file]
roles/ceph-iscsi-gw/tasks/common.yml [deleted file]
roles/ceph-iscsi-gw/tasks/containerized.yml [deleted file]
roles/ceph-iscsi-gw/tasks/deploy_ssl_keys.yml [deleted file]
roles/ceph-iscsi-gw/tasks/main.yml [deleted file]
roles/ceph-iscsi-gw/tasks/non-container/configure_iscsi.yml [deleted file]
roles/ceph-iscsi-gw/tasks/non-container/postrequisites.yml [deleted file]
roles/ceph-iscsi-gw/tasks/non-container/prerequisites.yml [deleted file]
roles/ceph-iscsi-gw/tasks/systemd.yml [deleted file]
roles/ceph-iscsi-gw/templates/iscsi-gateway.cfg.j2 [deleted file]
roles/ceph-iscsi-gw/templates/rbd-target-api.service.j2 [deleted file]
roles/ceph-iscsi-gw/templates/rbd-target-gw.service.j2 [deleted file]
roles/ceph-iscsi-gw/templates/tcmu-runner.service.j2 [deleted file]
roles/ceph-prometheus/templates/prometheus.yml.j2
roles/ceph-validate/tasks/check_iscsi.yml [deleted file]
roles/ceph-validate/tasks/main.yml
site-container.yml.sample
site.yml.sample
tests/conftest.py
tests/functional/add-mdss/container/vagrant_variables.yml
tests/functional/add-mdss/vagrant_variables.yml
tests/functional/add-mgrs/container/vagrant_variables.yml
tests/functional/add-mgrs/vagrant_variables.yml
tests/functional/add-mons/container/vagrant_variables.yml
tests/functional/add-mons/vagrant_variables.yml
tests/functional/add-osds/container/vagrant_variables.yml
tests/functional/add-osds/vagrant_variables.yml
tests/functional/add-rbdmirrors/container/vagrant_variables.yml
tests/functional/add-rbdmirrors/vagrant_variables.yml
tests/functional/add-rgws/container/vagrant_variables.yml
tests/functional/add-rgws/vagrant_variables.yml
tests/functional/all-in-one/container/vagrant_variables.yml
tests/functional/all-in-one/vagrant_variables.yml
tests/functional/all_daemons/container/hosts
tests/functional/all_daemons/container/vagrant_variables.yml
tests/functional/all_daemons/hosts
tests/functional/all_daemons/vagrant_variables.yml
tests/functional/all_daemons_ipv6/container/hosts
tests/functional/all_daemons_ipv6/container/vagrant_variables.yml
tests/functional/all_daemons_ipv6/hosts
tests/functional/all_daemons_ipv6/vagrant_variables.yml
tests/functional/cephadm/hosts
tests/functional/cephadm/vagrant_variables.yml
tests/functional/collocation/container/vagrant_variables.yml
tests/functional/collocation/vagrant_variables.yml
tests/functional/docker2podman/vagrant_variables.yml
tests/functional/external_clients/container/vagrant_variables.yml
tests/functional/external_clients/vagrant_variables.yml
tests/functional/infra_lv_create/vagrant_variables.yml
tests/functional/lvm-auto-discovery/container/vagrant_variables.yml
tests/functional/lvm-auto-discovery/vagrant_variables.yml
tests/functional/lvm-batch/container/vagrant_variables.yml
tests/functional/lvm-batch/vagrant_variables.yml
tests/functional/lvm-osds/container/vagrant_variables.yml
tests/functional/lvm-osds/vagrant_variables.yml
tests/functional/migrate_ceph_disk_to_ceph_volume/vagrant_variables.yml
tests/functional/ooo-collocation/vagrant_variables.yml
tests/functional/podman/hosts
tests/functional/podman/vagrant_variables.yml
tests/functional/rbdmirror/container/secondary/vagrant_variables.yml
tests/functional/rbdmirror/container/vagrant_variables.yml
tests/functional/rbdmirror/secondary/vagrant_variables.yml
tests/functional/rbdmirror/vagrant_variables.yml
tests/functional/shrink_mds/container/vagrant_variables.yml
tests/functional/shrink_mds/vagrant_variables.yml
tests/functional/shrink_mgr/container/vagrant_variables.yml
tests/functional/shrink_mgr/vagrant_variables.yml
tests/functional/shrink_mon/container/vagrant_variables.yml
tests/functional/shrink_mon/vagrant_variables.yml
tests/functional/shrink_osd/container/vagrant_variables.yml
tests/functional/shrink_osd/vagrant_variables.yml
tests/functional/shrink_rbdmirror/container/vagrant_variables.yml
tests/functional/shrink_rbdmirror/vagrant_variables.yml
tests/functional/shrink_rgw/container/vagrant_variables.yml
tests/functional/shrink_rgw/vagrant_variables.yml
tests/functional/subset_update/container/vagrant_variables.yml
tests/functional/subset_update/vagrant_variables.yml
tests/functional/tests/iscsi/__init__.py [deleted file]
tests/functional/tests/iscsi/test_iscsi.py [deleted file]
tests/pytest.ini
vagrant_variables.yml.sample

index 81f7ee46f3d314446b1189f358ee3c315134d55c..dda72f50a5fa04eb573c04268e78c19fa95ae3ad 100644 (file)
@@ -66,7 +66,6 @@ It means if you are pushing a patch modifying one of these files:
 - `./roles/ceph-nfs/defaults/main.yml`
 - `./roles/ceph-client/defaults/main.yml`
 - `./roles/ceph-common/defaults/main.yml`
-- `./roles/ceph-iscsi-gw/defaults/main.yml`
 - `./roles/ceph-mon/defaults/main.yml`
 - `./roles/ceph-rgw/defaults/main.yml`
 - `./roles/ceph-container-common/defaults/main.yml`
index 17f24a18c896474c12f4f740bce9936790b89b42..dde4b30893411fb265113d6553a286a600c6a3a8 100644 (file)
@@ -24,7 +24,6 @@ NNFSS           = settings['nfs_vms']
 GRAFANA         = settings['grafana_server_vms']
 NRBD_MIRRORS    = settings['rbd_mirror_vms']
 CLIENTS         = settings['client_vms']
-NISCSI_GWS      = settings['iscsi_gw_vms']
 MGRS            = settings['mgr_vms']
 PUBLIC_SUBNET   = settings['public_subnet']
 CLUSTER_SUBNET  = settings['cluster_subnet']
@@ -67,7 +66,6 @@ ansible_provision = proc do |ansible|
     'nfss'             => (0..NNFSS - 1).map { |j| "#{LABEL_PREFIX}nfs#{j}" },
     'rbd_mirrors'      => (0..NRBD_MIRRORS - 1).map { |j| "#{LABEL_PREFIX}rbd_mirror#{j}" },
     'clients'          => (0..CLIENTS - 1).map { |j| "#{LABEL_PREFIX}client#{j}" },
-    'iscsigws'         => (0..NISCSI_GWS - 1).map { |j| "#{LABEL_PREFIX}iscsi_gw#{j}" },
     'mgrs'             => (0..MGRS - 1).map { |j| "#{LABEL_PREFIX}mgr#{j}" },
     'monitoring'   => (0..GRAFANA - 1).map { |j| "#{LABEL_PREFIX}grafana#{j}" }
   }
@@ -560,50 +558,6 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
     end
   end
 
-  (0..NISCSI_GWS - 1).each do |i|
-    config.vm.define "#{LABEL_PREFIX}iscsi-gw#{i}" do |iscsi_gw|
-      iscsi_gw.vm.hostname = "#{LABEL_PREFIX}iscsi-gw#{i}"
-      if ASSIGN_STATIC_IP && !IPV6
-         iscsi_gw.vm.network :private_network,
-          :ip => "#{PUBLIC_SUBNET}.#{$last_ip_pub_digit+=1}"
-      end
-      # Virtualbox
-      iscsi_gw.vm.provider :virtualbox do |vb|
-        vb.customize ['modifyvm', :id, '--memory', "#{MEMORY}"]
-      end
-
-      # VMware
-      iscsi_gw.vm.provider :vmware_fusion do |v|
-        v.vmx['memsize'] = "#{MEMORY}"
-      end
-
-      # Libvirt
-      iscsi_gw.vm.provider :libvirt do |lv,override|
-        lv.memory = MEMORY
-        lv.random_hostname = true
-       if IPV6 then
-          override.vm.network :private_network,
-         :libvirt__ipv6_address => "#{PUBLIC_SUBNET}",
-         :libvirt__ipv6_prefix => "64",
-         :libvirt__dhcp_enabled => false,
-         :libvirt__forward_mode => "veryisolated",
-         :libvirt__network_name => "ipv6-public-network",
-         :ip => "#{PUBLIC_SUBNET}#{$last_ip_pub_digit+=1}",
-         :netmask => "64"
-       end
-      end
-      # Parallels
-      iscsi_gw.vm.provider "parallels" do |prl|
-        prl.name = "iscsi-gw#{i}"
-        prl.memory = "#{MEMORY}"
-      end
-
-      iscsi_gw.vm.provider :linode do |provider|
-        provider.label = iscsi_gw.vm.hostname
-      end
-    end
-  end
-
   (0..NOSDS - 1).each do |i|
     config.vm.define "#{LABEL_PREFIX}osd#{i}" do |osd|
       osd.vm.hostname = "#{LABEL_PREFIX}osd#{i}"
index ef4803233b17fa09a00e6087b118e298b176a230..3adff7a8829da19253cd73fd57c5e3f6a1813d28 100644 (file)
@@ -10,7 +10,6 @@ rgw_vms: 0
 nfs_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index 54197c9949d2caa554aee1a605628e815ca6d95d..e62a3bffee0b54e83b4aa1aba9a016a585c875b7 100644 (file)
@@ -27,7 +27,6 @@ rgw_vms: 0
 nfs_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 
 # The sync directory changes based on vagrant box
 # Set to /home/vagrant/sync for Centos/7, /home/{ user }/vagrant for openstack and defaults to /vagrant
index 922e7c44d1c602da2067fbf01823bc9996c4a5b9..420c09c98d39d167795085099ddb911b3d743596 100644 (file)
@@ -11,7 +11,6 @@ rgw_vms: 0
 nfs_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 
 # SUBNET TO USE FOR THE VMS
 # Use whatever private subnet your Openstack VMs are given
index e022fa81d9e86272cc2111729e5c51edc8766ddb..e998e1e539c3d788a2020d0741497cac68453c66 100644 (file)
@@ -8,7 +8,6 @@
     - "{{ mgr_group_name|default('mgrs') }}"
     - "{{ rbdmirror_group_name|default('rbdmirrors') }}"
     - "{{ nfs_group_name|default('nfss') }}"
-    - "{{ iscsi_gw_group_name|default('iscsigws') }}"
     - "{{ monitoring_group_name|default('monitoring') }}"
   gather_facts: false
   become: true
index 4037e18792f8f1770d959e8526c20a921eb1339f..185f994633df3f772f9247565f2d1348a6d111d2 100644 (file)
@@ -50,7 +50,6 @@ to follow (most of them are 1 line settings).
      nfs_vms: 0
      rbd_mirror_vms: 0
      client_vms: 0
-     iscsi_gw_vms: 0
      mgr_vms: 0
 
   For a deployment that needs 1 MON and 1 OSD, the list would look like:
index eda9b339b55db956c2d4cb6988ffcfdd50419e67..af5cc0554b96589e4b4d0457e416fe210ff33331 100755 (executable)
@@ -66,8 +66,6 @@ for role in "$basedir"/roles/ceph-*; do
     output="ceph-fetch-keys.yml.sample"
   elif [[ $rolename == "ceph-rbd-mirror" ]]; then
     output="rbdmirrors.yml.sample"
-  elif [[ $rolename == "ceph-iscsi-gw" ]]; then
-    output="iscsigws.yml.sample"
   elif [[ $rolename == "ceph-rgw-loadbalancer" ]]; then
     output="rgwloadbalancers.yml.sample"
   else
index 22ba3fe6db5fd5a316e4968a586fa6568c6c2c8e..bb91df2104ef90de32253d54efc07aeffbf6195d 100644 (file)
@@ -54,7 +54,6 @@ dummy:
 #nfs_group_name: nfss
 #rbdmirror_group_name: rbdmirrors
 #client_group_name: clients
-#iscsi_gw_group_name: iscsigws
 #mgr_group_name: mgrs
 #rgwloadbalancer_group_name: rgwloadbalancers
 #monitoring_group_name: monitoring
@@ -66,7 +65,6 @@ dummy:
 #  - "{{ nfs_group_name }}"
 #  - "{{ rbdmirror_group_name }}"
 #  - "{{ client_group_name }}"
-#  - "{{ iscsi_gw_group_name }}"
 #  - "{{ mgr_group_name }}"
 #  - "{{ rgwloadbalancer_group_name }}"
 #  - "{{ monitoring_group_name }}"
@@ -84,7 +82,6 @@ dummy:
 #ceph_mds_firewall_zone: public
 #ceph_nfs_firewall_zone: public
 #ceph_rbdmirror_firewall_zone: public
-#ceph_iscsi_firewall_zone: public
 #ceph_dashboard_firewall_zone: public
 #ceph_rgwloadbalancer_firewall_zone: public
 
@@ -218,8 +215,6 @@ dummy:
 # flavors so far include: ceph_main, ceph_jewel, ceph_kraken, ceph_luminous
 #nfs_ganesha_flavor: "ceph_main"
 
-#ceph_iscsi_config_dev: true # special repo for deploying iSCSI gateways
-
 
 # REPOSITORY: CUSTOM
 #
@@ -703,75 +698,6 @@ dummy:
 #alertmanager_cluster_port: 9094
 #alertmanager_conf_overrides: {}
 #alertmanager_dashboard_api_no_ssl_verify: "{{ true if dashboard_protocol == 'https' and not dashboard_crt and not dashboard_key else false }}"
-# igw
-#
-# `igw_network` variable is intended for allowing dashboard deployment with iSCSI node not residing in the same subnet than what is defined in `public_network`.
-# For example:
-# If the ceph public network is 2a00:8a60:1:c301::/64 and the iSCSI Gateway resides
-# at a dedicated gateway network (2a00:8a60:1:c300::/64) (With routing between those networks).
-# It means "{{ hostvars[item]['ansible_facts']['all_ipv4_addresses'] | ips_in_ranges(public_network.split(',')) | last | ansible.utils.ipwrap }}" will be empty.
-# As a consequence, this prevent from deploying dashboard with iSCSI node when it reside in a subnet different than `public_network`.
-# Using `igw_network` make it possible, set it with the subnet used by your iSCSI node.
-#igw_network: "{{ public_network }}"
-
-
-##################################
-# DEPRECIATED iSCSI TARGET SETUP #
-##################################
-
-# WARNING #
-
-# The following values are depreciated. To setup targets, gateways, LUNs, and
-# clients you should use gwcli or dashboard. If the following values are set,
-# the old ceph-iscsi-config/ceph-iscsi-cli packages will be used.
-
-# Specify the iqn for ALL gateways. This iqn is shared across the gateways, so an iscsi
-# client sees the gateway group as a single storage subsystem.
-#gateway_iqn: ""
-
-# gateway_ip_list provides a list of the IP Addrresses - one per gateway - that will be used
-# as an iscsi target portal ip. The list must be comma separated - and the order determines
-# the sequence of TPG's within the iscsi target across each gateway. Once set, additional
-# gateways can be added, but the order must *not* be changed.
-#gateway_ip_list: 0.0.0.0
-
-# rbd_devices defines the images that should be created and exported from the iscsi gateways.
-# If the rbd does not exist, it will be created for you. In addition you may increase the
-# size of rbd's by changing the size parameter and rerunning the playbook. A size value lower
-# than the current size of the rbd is ignored.
-#
-# the 'host' parameter defines which of the gateway nodes should handle the physical
-# allocation/expansion or removal of the rbd
-# to remove an image, simply use a state of 'absent'. This will first check the rbd is not allocated
-# to any client, and the remove it from LIO and then delete the rbd image
-#
-# NB. this variable definition can be commented out to bypass LUN management
-#
-# Example:
-#
-# rbd_devices:
-#   - { pool: 'rbd', image: 'ansible1', size: '30G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible2', size: '15G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible3', size: '30G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible4', size: '50G', host: 'ceph-1', state: 'present' }
-#rbd_devices: {}
-
-# client_connections defines the client ACL's to restrict client access to specific LUNs
-# The settings are as follows;
-# - image_list is a comma separated list of rbd images of the form <pool name>.<rbd_image_name>
-# - chap supplies the user and password the client will use for authentication of the
-#   form <user>/<password>
-# - status shows the intended state of this client definition - 'present' or 'absent'
-#
-# NB. this definition can be commented out to skip client (nodeACL) management
-#
-# Example:
-#
-# client_connections:
-#   - { client: 'iqn.1994-05.com.redhat:rh7-iscsi-client', image_list: 'rbd.ansible1,rbd.ansible2', chap: 'rh7-iscsi-client/redhat', status: 'present' }
-#   - { client: 'iqn.1991-05.com.microsoft:w2k12r2', image_list: 'rbd.ansible4', chap: 'w2k12r2/microsoft_w2k12', status: 'absent' }
-
-#client_connections: {}
 
 #no_log_on_ceph_key_tasks: true
 
diff --git a/group_vars/iscsigws.yml.sample b/group_vars/iscsigws.yml.sample
deleted file mode 100644 (file)
index 59ab5e1..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
----
-# Variables here are applicable to all host groups NOT roles
-
-# This sample file generated by generate_group_vars_sample.sh
-
-# Dummy variable to avoid error because ansible does not recognize the
-# file as a good configuration file when no variable in it.
-dummy:
-
-# You can override vars by using host or group vars
-
-###########
-# GENERAL #
-###########
-# Whether or not to generate secure certificate to iSCSI gateway nodes
-#generate_crt: false
-
-#iscsi_conf_overrides: {}
-#iscsi_pool_name: rbd
-# iscsi_pool_size: 3
-
-#copy_admin_key: true
-
-##################
-# RBD-TARGET-API #
-##################
-# Optional settings related to the CLI/API service
-#api_user: admin
-#api_password: admin
-#api_port: 5000
-#api_secure: false
-#loop_delay: 1
-# set the variable below with a comma separated list of IPs
-# in order to restrict the access to the iSCSI API
-# trusted_ip_list: 192.168.122.1
-
-
-##########
-# DOCKER #
-##########
-
-# Resource limitation
-# For the whole list of limits you can apply see: docs.docker.com/engine/admin/resource_constraints
-# Default values are based from: https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/2/html/red_hat_ceph_storage_hardware_guide/minimum_recommendations
-# These options can be passed using the 'ceph_mds_docker_extra_env' variable.
-
-# TCMU_RUNNER resource limitation
-#ceph_tcmu_runner_docker_memory_limit: "{{ ansible_facts['memtotal_mb'] }}m"
-#ceph_tcmu_runner_docker_cpu_limit: 1
-
-# RBD_TARGET_GW resource limitation
-#ceph_rbd_target_gw_docker_memory_limit: "{{ ansible_facts['memtotal_mb'] }}m"
-#ceph_rbd_target_gw_docker_cpu_limit: 1
-
-# RBD_TARGET_API resource limitation
-#ceph_rbd_target_api_docker_memory_limit: "{{ ansible_facts['memtotal_mb'] }}m"
-#ceph_rbd_target_api_docker_cpu_limit: 1
-
index 8d18aec6a271eb2f27198e500350474d97f782de..0a002f2620fcd9951d3bcd3f059ca6ad697ba2a0 100644 (file)
@@ -54,7 +54,6 @@ dummy:
 #nfs_group_name: nfss
 #rbdmirror_group_name: rbdmirrors
 #client_group_name: clients
-#iscsi_gw_group_name: iscsigws
 #mgr_group_name: mgrs
 #rgwloadbalancer_group_name: rgwloadbalancers
 #monitoring_group_name: monitoring
@@ -66,7 +65,6 @@ dummy:
 #  - "{{ nfs_group_name }}"
 #  - "{{ rbdmirror_group_name }}"
 #  - "{{ client_group_name }}"
-#  - "{{ iscsi_gw_group_name }}"
 #  - "{{ mgr_group_name }}"
 #  - "{{ rgwloadbalancer_group_name }}"
 #  - "{{ monitoring_group_name }}"
@@ -84,7 +82,6 @@ dummy:
 #ceph_mds_firewall_zone: public
 #ceph_nfs_firewall_zone: public
 #ceph_rbdmirror_firewall_zone: public
-#ceph_iscsi_firewall_zone: public
 #ceph_dashboard_firewall_zone: public
 #ceph_rgwloadbalancer_firewall_zone: public
 
@@ -218,8 +215,6 @@ ceph_rhcs_version: 5
 # flavors so far include: ceph_main, ceph_jewel, ceph_kraken, ceph_luminous
 #nfs_ganesha_flavor: "ceph_main"
 
-ceph_iscsi_config_dev: false
-
 
 # REPOSITORY: CUSTOM
 #
@@ -703,75 +698,6 @@ alertmanager_container_image: registry.redhat.io/openshift4/ose-prometheus-alert
 #alertmanager_cluster_port: 9094
 #alertmanager_conf_overrides: {}
 #alertmanager_dashboard_api_no_ssl_verify: "{{ true if dashboard_protocol == 'https' and not dashboard_crt and not dashboard_key else false }}"
-# igw
-#
-# `igw_network` variable is intended for allowing dashboard deployment with iSCSI node not residing in the same subnet than what is defined in `public_network`.
-# For example:
-# If the ceph public network is 2a00:8a60:1:c301::/64 and the iSCSI Gateway resides
-# at a dedicated gateway network (2a00:8a60:1:c300::/64) (With routing between those networks).
-# It means "{{ hostvars[item]['ansible_facts']['all_ipv4_addresses'] | ips_in_ranges(public_network.split(',')) | last | ansible.utils.ipwrap }}" will be empty.
-# As a consequence, this prevent from deploying dashboard with iSCSI node when it reside in a subnet different than `public_network`.
-# Using `igw_network` make it possible, set it with the subnet used by your iSCSI node.
-#igw_network: "{{ public_network }}"
-
-
-##################################
-# DEPRECIATED iSCSI TARGET SETUP #
-##################################
-
-# WARNING #
-
-# The following values are depreciated. To setup targets, gateways, LUNs, and
-# clients you should use gwcli or dashboard. If the following values are set,
-# the old ceph-iscsi-config/ceph-iscsi-cli packages will be used.
-
-# Specify the iqn for ALL gateways. This iqn is shared across the gateways, so an iscsi
-# client sees the gateway group as a single storage subsystem.
-#gateway_iqn: ""
-
-# gateway_ip_list provides a list of the IP Addrresses - one per gateway - that will be used
-# as an iscsi target portal ip. The list must be comma separated - and the order determines
-# the sequence of TPG's within the iscsi target across each gateway. Once set, additional
-# gateways can be added, but the order must *not* be changed.
-#gateway_ip_list: 0.0.0.0
-
-# rbd_devices defines the images that should be created and exported from the iscsi gateways.
-# If the rbd does not exist, it will be created for you. In addition you may increase the
-# size of rbd's by changing the size parameter and rerunning the playbook. A size value lower
-# than the current size of the rbd is ignored.
-#
-# the 'host' parameter defines which of the gateway nodes should handle the physical
-# allocation/expansion or removal of the rbd
-# to remove an image, simply use a state of 'absent'. This will first check the rbd is not allocated
-# to any client, and the remove it from LIO and then delete the rbd image
-#
-# NB. this variable definition can be commented out to bypass LUN management
-#
-# Example:
-#
-# rbd_devices:
-#   - { pool: 'rbd', image: 'ansible1', size: '30G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible2', size: '15G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible3', size: '30G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible4', size: '50G', host: 'ceph-1', state: 'present' }
-#rbd_devices: {}
-
-# client_connections defines the client ACL's to restrict client access to specific LUNs
-# The settings are as follows;
-# - image_list is a comma separated list of rbd images of the form <pool name>.<rbd_image_name>
-# - chap supplies the user and password the client will use for authentication of the
-#   form <user>/<password>
-# - status shows the intended state of this client definition - 'present' or 'absent'
-#
-# NB. this definition can be commented out to skip client (nodeACL) management
-#
-# Example:
-#
-# client_connections:
-#   - { client: 'iqn.1994-05.com.redhat:rh7-iscsi-client', image_list: 'rbd.ansible1,rbd.ansible2', chap: 'rh7-iscsi-client/redhat', status: 'present' }
-#   - { client: 'iqn.1991-05.com.microsoft:w2k12r2', image_list: 'rbd.ansible4', chap: 'w2k12r2/microsoft_w2k12', status: 'absent' }
-
-#client_connections: {}
 
 #no_log_on_ceph_key_tasks: true
 
index f28e42444d2062366953645837deea7fcb4f51bd..1fb2aabeffead151cdee2e3f992959cfa2d2ced3 100644 (file)
@@ -42,7 +42,6 @@
     - "{{ mgr_group_name|default('mgrs') }}"
     - "{{ rbdmirror_group_name|default('rbdmirrors') }}"
     - "{{ nfs_group_name|default('nfss') }}"
-    - "{{ iscsi_gw_group_name|default('iscsigws') }}"
     - "{{ monitoring_group_name|default('monitoring') }}"
   become: true
   any_errors_fatal: true
           inventory_hostname in groups.get(rgw_group_name, []) or
           inventory_hostname in groups.get(mgr_group_name, []) or
           inventory_hostname in groups.get(rbdmirror_group_name, []) or
-          inventory_hostname in groups.get(iscsi_gw_group_name, []) or
           inventory_hostname in groups.get(nfs_group_name, [])
 
     - name: Configure repository for installing cephadm
             inventory_hostname in groups.get(mds_group_name, []) or
             inventory_hostname in groups.get(rgw_group_name, []) or
             inventory_hostname in groups.get(mgr_group_name, []) or
-            inventory_hostname in groups.get(rbdmirror_group_name, []) or
-            inventory_hostname in groups.get(iscsi_gw_group_name, [])
-
+            inventory_hostname in groups.get(rbdmirror_group_name, [])
 
 - name: Store existing rbd mirror peers in monitor config store
   hosts: "{{ rbdmirror_group_name|default('rbdmirrors') }}"
         - /etc/systemd/system/ceph-mgr@.service.d
         - /etc/systemd/system/ceph-mgr.target
 
-
-- name: Stop and remove legacy iscsigw daemons
-  hosts: "{{ iscsi_gw_group_name|default('iscsigws') }}"
-  serial: 1
-  become: true
-  gather_facts: false
-  any_errors_fatal: true
-  tasks:
-    - name: Import ceph-defaults role
-      ansible.builtin.import_role:
-        name: ceph-defaults
-
-    - name: Stop and disable iscsigw systemd services
-      ansible.builtin.service:
-        name: '{{ item }}'
-        state: stopped
-        enabled: false
-      failed_when: false
-      with_items:
-        - rbd-target-api
-        - rbd-target-gw
-        - tcmu-runner
-
-    - name: Reset failed iscsigw systemd units
-      ansible.builtin.command: 'systemctl reset-failed {{ item }}'  # noqa command-instead-of-module
-      changed_when: false
-      failed_when: false
-      with_items:
-        - rbd-target-api
-        - rbd-target-gw
-        - tcmu-runner
-      when: containerized_deployment | bool
-
-    - name: Remove iscsigw systemd unit files
-      ansible.builtin.file:
-        path: '/etc/systemd/system/{{ item }}.service'
-        state: absent
-      with_items:
-        - rbd-target-api
-        - rbd-target-gw
-        - tcmu-runner
-      when: containerized_deployment | bool
-
-
-- name: Redeploy iscsigw daemons
-  hosts: "{{ iscsi_gw_group_name|default('iscsigws') }}"
-  become: true
-  gather_facts: false
-  any_errors_fatal: true
-  tasks:
-    - name: Import ceph-defaults role
-      ansible.builtin.import_role:
-        name: ceph-defaults
-
-    - name: Update the placement of iscsigw hosts
-      ansible.builtin.command: "{{ cephadm_cmd }} shell -k /etc/ceph/{{ cluster }}.client.admin.keyring --fsid {{ fsid }} -- ceph orch apply iscsi {{ iscsi_pool_name | default('rbd') }} {{ api_user | default('admin') }} {{ api_password | default('admin') }} {{ trusted_ip_list | default('192.168.122.1') }} --placement='{{ groups.get(iscsi_gw_group_name, []) | length }} label:{{ iscsi_gw_group_name }}'"
-      run_once: true
-      changed_when: false
-      delegate_to: '{{ groups[mon_group_name][0] }}'
-      environment:
-        CEPHADM_IMAGE: '{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}'
-
-
 - name: Set osd flags
   hosts: "{{ osd_group_name|default('osds') }}"
   become: true
     - "{{ mgr_group_name|default('mgrs') }}"
     - "{{ rbdmirror_group_name|default('rbdmirrors') }}"
     - "{{ nfs_group_name|default('nfss') }}"
-    - "{{ iscsi_gw_group_name|default('iscsigws') }}"
     - "{{ monitoring_group_name|default('monitoring') }}"
   become: true
   gather_facts: false
index 6a8612a6152ea278b36f18abbe5429a69bb308c7..eae68da4369bb21935135ef98d3edabbcbba8c70 100644 (file)
@@ -8,7 +8,6 @@
     - "{{ mgr_group_name|default('mgrs') }}"
     - "{{ rbdmirror_group_name|default('rbdmirrors') }}"
     - "{{ nfs_group_name|default('nfss') }}"
-    - "{{ iscsi_gw_group_name|default('iscsigws') }}"
     - "{{ monitoring_group_name|default('monitoring') }}"
   become: true
   gather_facts: false
     - "{{ mgr_group_name|default('mgrs') }}"
     - "{{ rbdmirror_group_name|default('rbdmirrors') }}"
     - "{{ nfs_group_name|default('nfss') }}"
-    - "{{ iscsi_gw_group_name|default('iscsigws') }}"
     - "{{ monitoring_group_name|default('monitoring') }}"
   become: true
   gather_facts: false
index 0367da1403971e8cc2d9f4bdcf90940974522faa..b40363d503e74a0889a99dc6f58b4b99ac78f172 100644 (file)
@@ -14,7 +14,6 @@
     - nfss
     - rbdmirrors
     - clients
-    - iscsigws
     - mgrs
     - monitoring
 
@@ -63,7 +62,6 @@
     - "{{ rgw_group_name | default('rgws') }}"
     - "{{ nfs_group_name | default('nfss') }}"
     - "{{ mgr_group_name | default('mgrs') }}"
-    - "{{ iscsi_gw_group_name | default('iscsigws') }}"
     - "{{ rbdmirror_group_name | default('rbdmirrors') }}"
     - "{{ monitoring_group_name | default('monitoring') }}"
   gather_facts: false
                 inventory_hostname in groups.get(rgw_group_name, []) or
                 inventory_hostname in groups.get(mgr_group_name, []) or
                 inventory_hostname in groups.get(rbdmirror_group_name, []) or
-                inventory_hostname in groups.get(iscsi_gw_group_name, []) or
                 inventory_hostname in groups.get(nfs_group_name, [])
 
         - name: Pulling alertmanager/grafana/prometheus images from docker daemon
         tasks_from: systemd.yml
       when: inventory_hostname in groups.get(mon_group_name, [])
 
-    - name: Import ceph-iscsi-gw role
-      ansible.builtin.import_role:
-        name: ceph-iscsi-gw
-        tasks_from: systemd.yml
-      when: inventory_hostname in groups.get(iscsi_gw_group_name, [])
-
     - name: Import ceph-mds role
       ansible.builtin.import_role:
         name: ceph-mds
index 9efcf97e8724d513b1dc29c07367e467334a5feb..ede64e5269e7c3c011e00caad4b69cc6decf7853 100644 (file)
@@ -9,7 +9,6 @@
     - rbdmirrors
     - clients
     - mgrs
-    - iscsigws
 
   gather_facts: false
   become: true
index 878c2e5a20e57bb622b96ba18001630cc1a6fc2e..6f7a37841000e1380e8c17596da556e661092193 100644 (file)
     - clients
     - mgrs
     - monitoring
-    - iscsigws
   become: true
   tasks:
     - name: Import ceph-defaults role
             paths: /run
             patterns:
               - "ceph-*.service-cid"
-              - "rbd-target-api.service-cid"
-              - "rbd-target-gw.service-cid"
-              - "tcmu-runner.service-cid"
               - "node_exporter.service-cid"
               - "prometheus.service-cid"
               - "grafana-server.service-cid"
diff --git a/infrastructure-playbooks/purge-iscsi-gateways.yml b/infrastructure-playbooks/purge-iscsi-gateways.yml
deleted file mode 100644 (file)
index dd6009c..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
----
-- name: Confirm removal of the iSCSI gateway configuration
-  hosts: localhost
-
-  vars_prompt:
-    - name: purge_config  # noqa: name[casing]
-      prompt: Which configuration elements should be purged? (all, lio or abort)
-      default: 'abort'
-      private: false
-
-  tasks:
-    - name: Exit playbook if user aborted the purge
-      ansible.builtin.fail:
-        msg: >
-          "You have aborted the purge of the iSCSI gateway configuration"
-      when: purge_config == 'abort'
-
-    - name: Set_fact igw_purge_type
-      ansible.builtin.set_fact:
-        igw_purge_type: "{{ purge_config }}"
-
-- name: Stopping the gateways
-  hosts:
-    - iscsigws
-  become: true
-  tasks:
-    - name: Stopping and disabling iscsi daemons
-      ansible.builtin.service:
-        name: "{{ item }}"
-        state: stopped
-        enabled: false
-      with_items:
-        - rbd-target-gw
-        - rbd-target-api
-        - tcmu-runner
-
-- name: Removing the gateway configuration
-  hosts:
-    - iscsigws
-  become: true
-  vars:
-    igw_purge_type: "{{ hostvars['localhost']['igw_purge_type'] }}"
-
-  tasks:
-    - name: Igw_purge | deleting configured rbd devices
-      igw_purge:
-        mode: "disks"
-      when: igw_purge_type == 'all'
-      run_once: true
-
-    - name: Igw_purge | purging the gateway configuration
-      igw_purge:
-        mode: "gateway"
-      run_once: true
-
-    - name: Restart and enable iscsi daemons
-      when: igw_purge_type == 'lio'
-      ansible.builtin.service:
-        name: "{{ item }}"
-        state: started
-        enabled: true
-      with_items:
-        - tcmu-runner
-        - rbd-target-api
-        - rbd-target-gw
-
-- name: Remove the gateways from the ceph dashboard
-  hosts: mons
-  become: true
-  tasks:
-    - name: Import ceph-defaults role
-      ansible.builtin.import_role:
-        name: ceph-defaults
-
-    - name: Iscsi gateways with ceph dashboard
-      when: dashboard_enabled | bool
-      run_once: true
-      block:
-        - name: Import ceph-facts role
-          ansible.builtin.import_role:
-            name: ceph-facts
-            tasks_from: container_binary
-
-        - name: Set_fact container_exec_cmd
-          ansible.builtin.set_fact:
-            container_exec_cmd: "{{ container_binary }} exec ceph-mon-{{ ansible_facts['hostname'] }}"
-          when: containerized_deployment | bool
-
-        - name: Get iscsi gateway list
-          ansible.builtin.command: "{{ container_exec_cmd | default('') }} ceph --cluster {{ cluster }} dashboard iscsi-gateway-list -f json"
-          changed_when: false
-          register: gateways
-
-        - name: Remove iscsi gateways
-          ansible.builtin.command: "{{ container_exec_cmd | default('') }} ceph --cluster {{ cluster }} dashboard iscsi-gateway-rm {{ item }}"
-          with_items: '{{ (gateways.stdout | from_json)["gateways"] }}'
-          changed_when: false
index d02da9f0a747caa38da9bc1b836f839b2845017b..a4441cd6e9eee2dfb251fbc96da7139272547625 100644 (file)
@@ -57,7 +57,6 @@
     - "{{ rbdmirror_group_name|default('rbdmirrors') }}"
     - "{{ nfs_group_name|default('nfss') }}"
     - "{{ client_group_name|default('clients') }}"
-    - "{{ iscsi_gw_group_name|default('iscsigws') }}"
     - "{{ monitoring_group_name|default('monitoring') }}"
   tags: always
   any_errors_fatal: true
       ansible.builtin.import_role:
         name: ceph-nfs
 
-
-- name: Upgrade ceph iscsi gateway node
-  vars:
-    upgrade_ceph_packages: true
-  hosts: "{{ iscsi_gw_group_name|default('iscsigws') }}"
-  tags: iscsigws
-  serial: 1
-  become: true
-  gather_facts: false
-  tasks:
-    # failed_when: false is here so that if we upgrade
-    # from a version of ceph that does not have iscsi gws
-    # then this task will not fail
-    - name: Stop ceph iscsi services
-      ansible.builtin.systemd:
-        name: '{{ item }}'
-        state: stopped
-        enabled: false
-        masked: true
-      failed_when: false
-      with_items:
-        - rbd-target-api
-        - rbd-target-gw
-        - tcmu-runner
-
-    - name: Import ceph-defaults role
-      ansible.builtin.import_role:
-        name: ceph-defaults
-
-    - name: Import ceph-facts role
-      ansible.builtin.import_role:
-        name: ceph-facts
-
-    - name: Import ceph-handler role
-      ansible.builtin.import_role:
-        name: ceph-handler
-
-    - name: Import ceph-common role
-      ansible.builtin.import_role:
-        name: ceph-common
-      when: not containerized_deployment | bool
-
-    - name: Import ceph-container-common role
-      ansible.builtin.import_role:
-        name: ceph-container-common
-      when: containerized_deployment | bool
-
-    - name: Import ceph-config role
-      ansible.builtin.import_role:
-        name: ceph-config
-
-    - name: Import ceph-iscsi-gw role
-      ansible.builtin.import_role:
-        name: ceph-iscsi-gw
-
-
 - name: Upgrade ceph client node
   vars:
     upgrade_ceph_packages: true
     - "{{ mgr_group_name|default('mgrs') }}"
     - "{{ rbdmirror_group_name|default('rbdmirrors') }}"
     - "{{ nfs_group_name|default('nfss') }}"
-    - "{{ iscsi_gw_group_name|default('iscsigws') }}"
     - "{{ monitoring_group_name|default('monitoring') }}"
   tags: monitoring
   gather_facts: false
index e43728186ed9521e199bdf13593fed33bb4b48a4..ee19b8ba2ed4b9e34e4e609e0a26b539d8135f73 100644 (file)
       ansible.builtin.import_role:
         name: ceph-nfs
 
-- name: Switching from non-containerized to containerized iscsigws
-  hosts: "{{ iscsi_gw_group_name|default('iscsigws') }}"
-  vars:
-    containerized_deployment: true
-    iscsi_gw_group_name: iscsigws
-  become: true
-  serial: 1
-  pre_tasks:
-    - name: Import ceph-defaults role
-      ansible.builtin.import_role:
-        name: ceph-defaults
-
-    - name: Stop iscsigw services
-      ansible.builtin.service:
-        name: "{{ item }}"
-        state: stopped
-        enabled: false
-      with_items:
-        - tcmu-runner
-        - rbd-target-gw
-        - rbd-target-api
-
-    - name: Remove old systemd unit files
-      ansible.builtin.file:
-        path: "/usr/lib/systemd/system/{{ item }}.service"
-        state: absent
-      with_items:
-        - tcmu-runner
-        - rbd-target-gw
-        - rbd-target-api
-  tasks:
-    - name: Import ceph-facts role
-      ansible.builtin.import_role:
-        name: ceph-facts
-
-    - name: Import ceph-handler role
-      ansible.builtin.import_role:
-        name: ceph-handler
-
-    # NOTE: changed from file module to raw find command for performance reasons
-    # The file module has to run checks on current ownership of all directories and files. This is unnecessary
-    # as in this case we know we want all owned by ceph user
-    - name: Set proper ownership on ceph directories
-      ansible.builtin.command: "find /etc/ceph -not -( -user {{ ceph_uid }} -or -group {{ ceph_uid }} -) -execdir chown -h {{ ceph_uid }}:{{ ceph_uid }} {} +"
-      changed_when: false
-
-    - name: Import ceph-container-engine role
-      ansible.builtin.import_role:
-        name: ceph-container-engine
-
-    - name: Import ceph-container-common role
-      ansible.builtin.import_role:
-        name: ceph-container-common
-
-    - name: Import ceph-iscsi-gw role
-      ansible.builtin.import_role:
-        name: ceph-iscsi-gw
-
 - name: Switching from non-containerized to containerized ceph-crash
 
   hosts:
index 2b230a41fdc83621afacfbfa7294c680c8287f7e..228e86ae362545c51d1c8a091bcb039371efdbfd 100644 (file)
@@ -33,7 +33,6 @@
     - rbdmirrors
     - clients
     - mgrs
-    - iscsi-gw
   become: true
   tasks:
     - name: Import ceph-defaults role
diff --git a/library/igw_client.py b/library/igw_client.py
deleted file mode 100644 (file)
index d4905f6..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-#!/usr/bin/env python
-
-__author__ = 'pcuzner@redhat.com'
-
-DOCUMENTATION = """
----
-module: igw_client
-short_description: Manage iscsi gateway client definitions
-description:
-  - This module calls the 'client' configuration management module installed
-    on the iscsi gateway node to handle the definition of iscsi clients on the
-    gateway(s). This definition will setup iscsi authentication (e.g. chap),
-    and mask the required rbd images to the client.
-
-    The 'client' configuration module is provided by ceph-iscsi-config
-    rpm which is installed on the gateway nodes.
-
-    To support module debugging, this module logs to
-    /var/log/ansible-module-igw_config.log on the target machine(s).
-
-option:
-  client_iqn:
-    description:
-      - iqn of the client machine which should be connected or removed from the
-        iscsi gateway environment
-    required: true
-
-  image_list:
-    description:
-      - comma separated string providing the rbd images that this
-        client definition should have. The rbd images provided must use the
-        following format <pool_name>.<rbd_image_name>
-        e.g. rbd.disk1,rbd.disk2
-    required: true
-
-  chap:
-    description:
-      - chap credentials for the client to authenticate to the gateways
-        to gain access to the exported rbds (LUNs). The credentials is a string
-        value of the form 'username/password'. The iscsi client must then use
-        these settings to gain access to any LUN resources.
-    required: true
-
-  state:
-    description:
-      - desired state for this client - absent or present
-    required: true
-
-requirements: ['ceph-iscsi-config']
-
-author:
-  - 'Paul Cuzner'
-
-"""
-
-import os  # noqa: E402
-import logging  # noqa: E402
-from logging.handlers import RotatingFileHandler  # noqa: E402
-from ansible.module_utils.basic import *  # noqa: E402,F403
-
-from ceph_iscsi_config.client import GWClient  # noqa: E402
-import ceph_iscsi_config.settings as settings  # noqa: E402
-
-
-# the main function is called ansible_main to allow the call stack
-# to be checked to determine whether the call to the ceph_iscsi_config
-# modules is from ansible or not
-def ansible_main():
-
-    fields = {
-        "client_iqn": {"required": True, "type": "str"},
-        "image_list": {"required": True, "type": "str"},
-        "chap": {"required": True, "type": "str"},
-        "state": {
-            "required": True,
-            "choices": ['present', 'absent'],
-            "type": "str"
-        },
-    }
-
-    module = AnsibleModule(argument_spec=fields,    # noqa: F405
-                           supports_check_mode=False)
-
-    client_iqn = module.params['client_iqn']
-
-    if module.params['image_list']:
-        image_list = module.params['image_list'].split(',')
-    else:
-        image_list = []
-
-    chap = module.params['chap']
-    desired_state = module.params['state']
-
-    logger.info("START - Client configuration started : {}".format(client_iqn))
-
-    # The client is defined using the GWClient class. This class handles
-    # client attribute updates, rados configuration object updates and LIO
-    # settings. Since the logic is external to this custom module, clients
-    # can be created/deleted by other methods in the same manner.
-    client = GWClient(logger, client_iqn, image_list, chap)
-    if client.error:
-        module.fail_json(msg=client.error_msg)
-
-    client.manage(desired_state)
-    if client.error:
-        module.fail_json(msg=client.error_msg)
-
-    logger.info("END   - Client configuration complete - {} "
-                "changes made".format(client.change_count))
-
-    changes_made = True if client.change_count > 0 else False
-
-    module.exit_json(changed=changes_made,
-                     meta={"msg": "Client definition completed {} "
-                                  "changes made".format(client.change_count)})
-
-
-if __name__ == '__main__':
-
-    module_name = os.path.basename(__file__).replace('ansible_module_', '')
-    logger = logging.getLogger(os.path.basename(module_name))
-    logger.setLevel(logging.DEBUG)
-    handler = RotatingFileHandler('/var/log/ansible-module-igw_config.log',
-                                  maxBytes=5242880,
-                                  backupCount=7)
-    log_fmt = logging.Formatter('%(asctime)s %(name)s %(levelname)-8s : '
-                                '%(message)s')
-    handler.setFormatter(log_fmt)
-    logger.addHandler(handler)
-
-    # initialise global variables used by all called modules
-    # e.g. ceph conffile, keyring etc
-    settings.init()
-
-    ansible_main()
diff --git a/library/igw_gateway.py b/library/igw_gateway.py
deleted file mode 100644 (file)
index 7ad9aa3..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-#!/usr/bin/env python
-__author__ = 'pcuzner@redhat.com'
-
-
-DOCUMENTATION = """
----
-module: igw_gateway
-short_description: Manage the iscsi gateway definition
-description:
-  - This module calls the 'gateway' configuration management module installed
-    on the iscsi gateway node(s) to handle the definition of iscsi gateways.
-    The module will configure;
-    * the iscsi target and target portal group (TPG)
-    * rbd maps to the gateway and registration of those rbds as LUNs to the
-      kernels LIO subsystem
-
-    The actual configuration modules are provided by ceph-iscsi-config rpm
-    which is installed on the gateway nodes.
-
-    To support module debugging, this module logs to
-    /var/log/ansible-module-igw_config.log on the target machine(s).
-
-option:
-  gateway_iqn:
-    description:
-      - iqn that all gateway nodes will use to present a common system image
-        name to iscsi clients
-    required: true
-
-  gateway_ip_list:
-    description:
-      - comma separated string providing the IP addresses that will be used
-        as iSCSI portal IPs to accept iscsi client connections. Each IP address
-        should equate to an IP on a gateway node - typically dedicated to iscsi
-        traffic. The order of the IP addresses determines the TPG sequence
-        within the target definition - so once defined, new gateways can be
-        added but *must* be added to the end of this list to preserve the tpg
-        sequence
-
-        e.g. 192.168.122.101,192.168.122.103
-    required: true
-
-  mode:
-    description:
-      - mode in which to run the gateway module. Two modes are supported
-        target ... define the iscsi target iqn, tpg's and portals
-        map ...... map luns to the tpg's, and also define the ALUA path setting
-                   for each LUN (activeOptimized/activenonoptimized)
-    required: true
-
-
-requirements: ['ceph-iscsi-config']
-
-author:
-  - 'Paul Cuzner'
-
-"""
-
-import os  # noqa: E402
-import logging  # noqa: E402
-
-from logging.handlers import RotatingFileHandler  # noqa: E402
-from ansible.module_utils.basic import *  # noqa: E402,F403
-
-import ceph_iscsi_config.settings as settings  # noqa: E402
-from ceph_iscsi_config.common import Config  # noqa: E402
-
-from ceph_iscsi_config.gateway import GWTarget  # noqa: E402
-from ceph_iscsi_config.utils import valid_ip  # noqa: E402
-
-
-# the main function is called ansible_main to allow the call stack
-# to be checked to determine whether the call to the ceph_iscsi_config
-# modules is from ansible or not
-def ansible_main():
-    # Configures the gateway on the host. All images defined are added to
-    # the default tpg for later allocation to clients
-    fields = {"gateway_iqn": {"required": True, "type": "str"},
-              "gateway_ip_list": {"required": True},    # "type": "list"},
-              "mode": {
-                  "required": True,
-                  "choices": ['target', 'map']
-    }
-    }
-
-    module = AnsibleModule(argument_spec=fields,  # noqa: F405
-                           supports_check_mode=False)
-
-    cfg = Config(logger)
-    if cfg.config['version'] > 3:
-        module.fail_json(msg="Unsupported iscsigws.yml/iscsi-gws.yml setting "
-                             "detected. Remove depreciated iSCSI target, LUN, "
-                             "client, and gateway settings from "
-                             "iscsigws.yml/iscsi-gws.yml. See "
-                             "iscsigws.yml.sample for list of supported "
-                             "settings")
-
-    gateway_iqn = module.params['gateway_iqn']
-    gateway_ip_list = module.params['gateway_ip_list'].split(',')
-    mode = module.params['mode']
-
-    if not valid_ip(gateway_ip_list):
-        module.fail_json(msg="Invalid gateway IP address(es) provided - port "
-                             "22 check failed ({})".format(gateway_ip_list))
-
-    logger.info("START - GATEWAY configuration started - mode {}".format(mode))
-
-    gateway = GWTarget(logger, gateway_iqn, gateway_ip_list)
-    if gateway.error:
-        logger.critical("(ansible_main) Gateway init failed - "
-                        "{}".format(gateway.error_msg))
-        module.fail_json(msg="iSCSI gateway initialisation failed "
-                             "({})".format(gateway.error_msg))
-
-    gateway.manage(mode)
-
-    if gateway.error:
-        logger.critical("(main) Gateway creation or load failed, "
-                        "unable to continue")
-        module.fail_json(msg="iSCSI gateway creation/load failure "
-                             "({})".format(gateway.error_msg))
-
-    logger.info("END - GATEWAY configuration complete")
-    module.exit_json(changed=gateway.changes_made,
-                     meta={"msg": "Gateway setup complete"})
-
-
-if __name__ == '__main__':
-
-    module_name = os.path.basename(__file__).replace('ansible_module_', '')
-    logger = logging.getLogger(os.path.basename(module_name))
-    logger.setLevel(logging.DEBUG)
-    handler = RotatingFileHandler('/var/log/ansible-module-igw_config.log',
-                                  maxBytes=5242880,
-                                  backupCount=7)
-    log_fmt = logging.Formatter('%(asctime)s %(name)s %(levelname)-8s : '
-                                '%(message)s')
-    handler.setFormatter(log_fmt)
-    logger.addHandler(handler)
-
-    # initialise global variables used by all called modules
-    # e.g. ceph conffile, keyring etc
-    settings.init()
-
-    ansible_main()
diff --git a/library/igw_lun.py b/library/igw_lun.py
deleted file mode 100644 (file)
index 8fae72c..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-#!/usr/bin/env python
-
-__author__ = 'pcuzner@redhat.com'
-
-DOCUMENTATION = """
----
-module: igw_lun
-short_description: Manage ceph rbd images to present as iscsi LUNs to clients
-description:
-  - This module calls the 'lun' configuration management module installed
-    on the iscsi gateway node(s). The lun module handles the creation and resize  # noqa: E501
-    of rbd images, and then maps these rbd devices to the gateway node(s) to be
-    exposed through the kernel's LIO target.
-
-    To support module debugging, this module logs to /var/log/ansible-module-igw_config.log  # noqa: E501
-    on the target machine(s).
-
-option:
-  pool:
-    description:
-      - The ceph pool where the image should exist or be created in.
-
-        NOTE - The pool *must* exist prior to the Ansible run.
-
-    required: true
-
-  image:
-    description:
-      - this is the rbd image name to create/resize - if the rbd does not exist it
-        is created for you with the settings optimised for exporting over iscsi.
-    required: true
-
-  size:
-    description:
-      - The size of the rbd image to create/resize. The size is numeric suffixed by
-        G or T (GB or TB). Increasing the size of a LUN is supported, but if a size
-        is provided that is smaller that the current size, the request is simply ignored.
-
-        e.g. 100G
-    required: true
-
-  host:
-    description:
-      - the host variable defines the name of the gateway node that will be
-        the allocation host for this rbd image. RBD creation and resize can
-        only be performed by one gateway, the other gateways in the
-        configuration will wait for the operation to complete.
-    required: true
-
-  features:
-    description:
-      - placeholder to potentially allow different rbd features to be set at
-        allocation time by Ansible. NOT CURRENTLY USED
-    required: false
-
-  state:
-    description:
-      - desired state for this LUN - absent or present. For a state='absent'
-      request, the lun module will verify that the rbd image is not allocated to
-      a client. As long as the rbd image is not in use, the LUN definition will be
-      removed from LIO, unmapped from all gateways AND DELETED.
-
-      USE WITH CARE!
-    required: true
-
-requirements: ['ceph-iscsi-config']
-
-author:
-  - 'Paul Cuzner'
-
-"""
-
-import os  # noqa: E402
-import logging  # noqa: E402
-from logging.handlers import RotatingFileHandler  # noqa: E402
-
-from ansible.module_utils.basic import *  # noqa: E402,F403
-
-from ceph_iscsi_config.lun import LUN  # noqa: E402
-from ceph_iscsi_config.utils import valid_size  # noqa: E402
-import ceph_iscsi_config.settings as settings  # noqa: E402
-
-
-# the main function is called ansible_main to allow the call stack
-# to be checked to determine whether the call to the ceph_iscsi_config
-# modules is from ansible or not
-def ansible_main():
-
-    # Define the fields needs to create/map rbd's the the host(s)
-    # NB. features and state are reserved/unused
-    fields = {
-        "pool": {"required": False, "default": "rbd", "type": "str"},
-        "image": {"required": True, "type": "str"},
-        "size": {"required": True, "type": "str"},
-        "host": {"required": True, "type": "str"},
-        "features": {"required": False, "type": "str"},
-        "state": {
-            "required": False,
-            "default": "present",
-            "choices": ['present', 'absent'],
-            "type": "str"
-        },
-    }
-
-    # not supporting check mode currently
-    module = AnsibleModule(argument_spec=fields,  # noqa: F405
-                           supports_check_mode=False)
-
-    pool = module.params["pool"]
-    image = module.params['image']
-    size = module.params['size']
-    allocating_host = module.params['host']
-    desired_state = module.params['state']
-
-    ################################################
-    # Validate the parameters passed from Ansible  #
-    ################################################
-    if not valid_size(size):
-        logger.critical("image '{}' has an invalid size specification '{}' "
-                        "in the ansible configuration".format(image,
-                                                              size))
-        module.fail_json(msg="(main) Unable to use the size parameter '{}' "
-                             "for image '{}' from the playbook - "
-                             "must be a number suffixed by M,G "
-                             "or T".format(size,
-                                           image))
-
-    # define a lun object and perform some initial parameter validation
-    lun = LUN(logger, pool, image, size, allocating_host)
-    if lun.error:
-        module.fail_json(msg=lun.error_msg)
-
-    logger.info("START - LUN configuration started for {}/{}".format(pool,
-                                                                     image))
-
-    # attempt to create/allocate the LUN for LIO
-    lun.manage(desired_state)
-    if lun.error:
-        module.fail_json(msg=lun.error_msg)
-
-    if lun.num_changes == 0:
-        logger.info("END   - No changes needed")
-    else:
-        logger.info("END   - {} configuration changes "
-                    "made".format(lun.num_changes))
-
-    module.exit_json(changed=(lun.num_changes > 0),
-                     meta={"msg": "Configuration updated"})
-
-
-if __name__ == '__main__':
-
-    module_name = os.path.basename(__file__).replace('ansible_module_', '')
-    logger = logging.getLogger(os.path.basename(module_name))
-    logger.setLevel(logging.DEBUG)
-    handler = RotatingFileHandler('/var/log/ansible-module-igw_config.log',
-                                  maxBytes=5242880,
-                                  backupCount=7)
-    log_fmt = logging.Formatter('%(asctime)s %(name)s %(levelname)-8s : '
-                                '%(message)s')
-    handler.setFormatter(log_fmt)
-    logger.addHandler(handler)
-
-    # initialise global variables used by all called modules
-    # e.g. ceph conffile, keyring etc
-    settings.init()
-
-    ansible_main()
diff --git a/library/igw_purge.py b/library/igw_purge.py
deleted file mode 100644 (file)
index a2a9f84..0000000
+++ /dev/null
@@ -1,161 +0,0 @@
-#!/usr/bin/env python
-
-DOCUMENTATION = """
----
-module: igw_purge
-short_description: Provide a purge capability to remove an iSCSI gateway
-environment
-description:
-  - This module handles the removal of a gateway configuration from a ceph
-    environment.
-    The playbook that calls this module prompts the user for the type of purge
-    to perform.
-    The purge options are;
-    all ... purge all LIO configuration *and* delete all defined rbd images
-    lio ... purge only the LIO configuration (rbd's are left intact)
-
-    USE WITH CAUTION
-
-    To support module debugging, this module logs to
-    /var/log/ansible-module-igw_config.log on each target machine(s).
-
-option:
-  mode:
-    description:
-      - the mode defines the type of purge requested
-        gateway ... remove the LIO configuration only
-        disks   ... remove the rbd disks defined to the gateway
-    required: true
-
-requirements: ['ceph-iscsi-config', 'python-rtslib']
-
-author:
-  - 'Paul Cuzner'
-
-"""
-
-import os  # noqa: E402
-import logging  # noqa: E402
-import socket  # noqa: E402,F401
-import rados  # noqa: E402
-import rbd  # noqa: E402
-
-from logging.handlers import RotatingFileHandler  # noqa: E402
-from ansible.module_utils.basic import *  # noqa: E402,F403
-
-import ceph_iscsi_config.settings as settings  # noqa: E402
-from ceph_iscsi_config.common import Config  # noqa: E402
-from ceph_iscsi_config.lun import RBDDev  # noqa: E402
-
-__author__ = 'pcuzner@redhat.com'
-
-
-def delete_images(cfg):
-    changes_made = False
-
-    for disk_name, disk in cfg.config['disks'].items():
-        image = disk['image']
-
-        logger.debug("Deleing image {}".format(image))
-
-        backstore = disk.get('backstore')
-        if backstore is None:
-            # ceph iscsi-config based.
-            rbd_dev = RBDDev(image, 0, disk['pool'])
-        else:
-            # ceph-iscsi based.
-            rbd_dev = RBDDev(image, 0, backstore, disk['pool'])
-
-        try:
-            rbd_dev.delete()
-        except rbd.ImageNotFound:
-            # Just log and ignore. If we crashed while purging we could delete
-            # the image but not removed it from the config
-            logger.debug("Image already deleted.")
-        except rbd.ImageHasSnapshots:
-            logger.error("Image still has snapshots.")
-            # Older versions of ceph-iscsi-config do not have a error_msg
-            # string.
-            if not rbd_dev.error_msg:
-                rbd_dev.error_msg = "Image has snapshots."
-
-        if rbd_dev.error:
-            if rbd_dev.error_msg:
-                logger.error("Could not remove {}. Error: {}. Manually run the "  # noqa: E501
-                             "rbd command line tool to delete.".
-                             format(image, rbd_dev.error_msg))
-            else:
-                logger.error("Could not remove {}. Manually run the rbd "
-                             "command line tool to delete.".format(image))
-        else:
-            changes_made = True
-
-    return changes_made
-
-
-def delete_gateway_config(cfg, module):
-    ioctx = cfg._open_ioctx()
-    try:
-        size, mtime = ioctx.stat(cfg.config_name)
-    except rados.ObjectNotFound:
-        logger.debug("gateway.conf already removed.")
-        return False
-
-    try:
-        ioctx.remove_object(cfg.config_name)
-    except Exception as err:
-        module.fail_json(msg="Gateway config object failed: {}".format(err))
-
-    return True
-
-
-def ansible_main():
-
-    fields = {"mode": {"required": True,
-                       "type": "str",
-                       "choices": ["gateway", "disks"]
-                       }
-              }
-
-    module = AnsibleModule(argument_spec=fields,  # noqa: F405
-                           supports_check_mode=False)
-
-    run_mode = module.params['mode']
-    changes_made = False
-
-    logger.info("START - GATEWAY configuration PURGE started, run mode "
-                "is {}".format(run_mode))
-    cfg = Config(logger)
-    #
-    # Purge gateway configuration, if the config has gateways
-    if run_mode == 'gateway':
-        changes_made = delete_gateway_config(cfg, module)
-    elif run_mode == 'disks' and len(cfg.config['disks'].keys()) > 0:
-        #
-        # Remove the disks on this host, that have been registered in the
-        # config object
-        changes_made = delete_images(cfg)
-
-    logger.info("END   - GATEWAY configuration PURGE complete")
-
-    module.exit_json(changed=changes_made,
-                     meta={"msg": "Purge of iSCSI settings ({}) "
-                                  "complete".format(run_mode)})
-
-
-if __name__ == '__main__':
-
-    module_name = os.path.basename(__file__).replace('ansible_module_', '')
-    logger = logging.getLogger(os.path.basename(module_name))
-    logger.setLevel(logging.DEBUG)
-    handler = RotatingFileHandler('/var/log/ansible-module-igw_config.log',
-                                  maxBytes=5242880,
-                                  backupCount=7)
-    log_fmt = logging.Formatter('%(asctime)s %(name)s %(levelname)-8s : '
-                                '%(message)s')
-    handler.setFormatter(log_fmt)
-    logger.addHandler(handler)
-
-    settings.init()
-
-    ansible_main()
index eb4d72bf109770c4b57456bb91bdcfb7cbf080b3..976ccefb6f2b40bfa9b2f5a66ac4dbc4702c8086 100644 (file)
@@ -29,7 +29,6 @@ class CallbackModule(CallbackBase):
             'installer_phase_ceph_nfs',
             'installer_phase_ceph_rbdmirror',
             'installer_phase_ceph_client',
-            'installer_phase_ceph_iscsi_gw',
             'installer_phase_ceph_rgw_loadbalancer',
             'installer_phase_ceph_dashboard',
             'installer_phase_ceph_grafana',
@@ -71,10 +70,6 @@ class CallbackModule(CallbackBase):
                 'title': 'Install Ceph Client',
                 'playbook': 'roles/ceph-client/tasks/main.yml'
             },
-            'installer_phase_ceph_iscsi_gw': {
-                'title': 'Install Ceph iSCSI Gateway',
-                'playbook': 'roles/ceph-iscsi-gw/tasks/main.yml'
-            },
             'installer_phase_ceph_rgw_loadbalancer': {
                 'title': 'Install Ceph RGW LoadBalancer',
                 'playbook': 'roles/ceph-rgw-loadbalancer/tasks/main.yml'
index b564cd895f19bddc0a1f566d35bc30bdf3ef1196..3a974593c9ad18509abfb7a1eb20c279a5f6ff23 100644 (file)
@@ -1,6 +1,5 @@
 ceph_repository: rhcs
 ceph_origin: repository
-ceph_iscsi_config_dev: false
 ceph_rhcs_version: 5
 containerized_deployment: true
 ceph_docker_image: "rhceph/rhceph-5-rhel8"
index a1785072bd8d30a293d9fd5250d214ef9703c6e6..368e0b0ba7e5b53591127aef4c68d795c81b690b 100644 (file)
@@ -9,7 +9,6 @@
       or rgw_group_name in group_names
       or mds_group_name in group_names
       or nfs_group_name in group_names
-      or iscsi_gw_group_name in group_names
       or client_group_name in group_names
       or rbdmirror_group_name in group_names
       or monitoring_group_name in group_names
index 27d16dede3ae9463613d977f9834e3183a6259f4..ea8e170b0e245abde762d0eab5568b643737e721 100644 (file)
     - Restart ceph rgws
     - Restart ceph mgrs
     - Restart ceph rbdmirrors
-    - Restart ceph rbd-target-api-gw
index 7f504f91dd1ba0d07019bc1cc2c28e01a8d8afda..f222e4ba38d9857fb3124b057f1141bb931ead6f 100644 (file)
@@ -47,7 +47,6 @@
       inventory_hostname in groups.get(mgr_group_name, []) or
       inventory_hostname in groups.get(rbdmirror_group_name, []) or
       inventory_hostname in groups.get(nfs_group_name, []) or
-      inventory_hostname in groups.get(iscsi_gw_group_name, []) or
       inventory_hostname in groups.get(monitoring_group_name, [])
   environment:
     HTTP_PROXY: "{{ ceph_docker_http_proxy | default('') }}"
index a3fec0c0df799a5b8a52d839178c4765bcea33cc..bc96e1782bb7a9403f2a4bf59025cbbf66d21c62 100644 (file)
         - dashboard_rgw_api_no_ssl_verify | bool
         - radosgw_frontend_ssl_certificate | length > 0
 
-- name: Dashboard iscsi management
-  when: groups.get(iscsi_gw_group_name, []) | length > 0
-  run_once: true
-  block:
-    - name: Disable iscsi api ssl verification
-      ansible.builtin.command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} dashboard set-iscsi-api-ssl-verification false"
-      changed_when: false
-      delegate_to: "{{ groups[mon_group_name][0] }}"
-      when:
-        - api_secure | default(false) | bool
-        - generate_crt | default(false) | bool
-
-    - name: Add iscsi gateways - ipv4
-      ansible.builtin.command: "{{ ceph_cmd }} --cluster {{ cluster }} dashboard iscsi-gateway-add -i -"
-      args:
-        stdin: "{{ 'https' if hostvars[item]['api_secure'] | default(false) | bool else 'http' }}://{{ hostvars[item]['api_user'] | default('admin') }}:{{ hostvars[item]['api_password'] | default('admin') }}@{{ hostvars[item]['ansible_facts']['all_ipv4_addresses'] | ips_in_ranges(igw_network.split(',')) | first }}:{{ hostvars[item]['api_port'] | default(5000) }}"
-        stdin_add_newline: false
-      changed_when: false
-      delegate_to: "{{ groups[mon_group_name][0] }}"
-      with_items: "{{ groups[iscsi_gw_group_name] }}"
-      when: ip_version == 'ipv4'
-
-    - name: Add iscsi gateways - ipv6
-      ansible.builtin.command: "{{ ceph_cmd }} --cluster {{ cluster }} dashboard iscsi-gateway-add -i -"
-      args:
-        stdin: "{{ 'https' if hostvars[item]['api_secure'] | default(false) | bool else 'http' }}://{{ hostvars[item]['api_user'] | default('admin') }}:{{ hostvars[item]['api_password'] | default('admin') }}@{{ hostvars[item]['ansible_facts']['all_ipv6_addresses'] | ips_in_ranges(igw_network.split(',')) | last | ansible.utils.ipwrap }}:{{ hostvars[item]['api_port'] | default(5000) }}"
-        stdin_add_newline: false
-      changed_when: false
-      delegate_to: "{{ groups[mon_group_name][0] }}"
-      with_items: "{{ groups[iscsi_gw_group_name] }}"
-      when: ip_version == 'ipv6'
-
 - name: Disable mgr dashboard module (restart)
   ceph_mgr_module:
     name: dashboard
index 7d6be078c7d8f74a462124076cbccc2607d7f6b4..1752df93a2a6a7dce31c71c30f98759f2e4050ac 100644 (file)
@@ -46,7 +46,6 @@ mds_group_name: mdss
 nfs_group_name: nfss
 rbdmirror_group_name: rbdmirrors
 client_group_name: clients
-iscsi_gw_group_name: iscsigws
 mgr_group_name: mgrs
 rgwloadbalancer_group_name: rgwloadbalancers
 monitoring_group_name: monitoring
@@ -58,7 +57,6 @@ adopt_label_group_names:
   - "{{ nfs_group_name }}"
   - "{{ rbdmirror_group_name }}"
   - "{{ client_group_name }}"
-  - "{{ iscsi_gw_group_name }}"
   - "{{ mgr_group_name }}"
   - "{{ rgwloadbalancer_group_name }}"
   - "{{ monitoring_group_name }}"
@@ -76,7 +74,6 @@ ceph_rgw_firewall_zone: public
 ceph_mds_firewall_zone: public
 ceph_nfs_firewall_zone: public
 ceph_rbdmirror_firewall_zone: public
-ceph_iscsi_firewall_zone: public
 ceph_dashboard_firewall_zone: public
 ceph_rgwloadbalancer_firewall_zone: public
 
@@ -210,8 +207,6 @@ nfs_ganesha_dev: false # use development repos for nfs-ganesha
 # flavors so far include: ceph_main, ceph_jewel, ceph_kraken, ceph_luminous
 nfs_ganesha_flavor: "ceph_main"
 
-ceph_iscsi_config_dev: true # special repo for deploying iSCSI gateways
-
 
 # REPOSITORY: CUSTOM
 #
@@ -695,75 +690,6 @@ alertmanager_port: 9093
 alertmanager_cluster_port: 9094
 alertmanager_conf_overrides: {}
 alertmanager_dashboard_api_no_ssl_verify: "{{ true if dashboard_protocol == 'https' and not dashboard_crt and not dashboard_key else false }}"
-# igw
-#
-# `igw_network` variable is intended for allowing dashboard deployment with iSCSI node not residing in the same subnet than what is defined in `public_network`.
-# For example:
-# If the ceph public network is 2a00:8a60:1:c301::/64 and the iSCSI Gateway resides
-# at a dedicated gateway network (2a00:8a60:1:c300::/64) (With routing between those networks).
-# It means "{{ hostvars[item]['ansible_facts']['all_ipv4_addresses'] | ips_in_ranges(public_network.split(',')) | last | ansible.utils.ipwrap }}" will be empty.
-# As a consequence, this prevent from deploying dashboard with iSCSI node when it reside in a subnet different than `public_network`.
-# Using `igw_network` make it possible, set it with the subnet used by your iSCSI node.
-igw_network: "{{ public_network }}"
-
-
-##################################
-# DEPRECIATED iSCSI TARGET SETUP #
-##################################
-
-# WARNING #
-
-# The following values are depreciated. To setup targets, gateways, LUNs, and
-# clients you should use gwcli or dashboard. If the following values are set,
-# the old ceph-iscsi-config/ceph-iscsi-cli packages will be used.
-
-# Specify the iqn for ALL gateways. This iqn is shared across the gateways, so an iscsi
-# client sees the gateway group as a single storage subsystem.
-gateway_iqn: ""
-
-# gateway_ip_list provides a list of the IP Addrresses - one per gateway - that will be used
-# as an iscsi target portal ip. The list must be comma separated - and the order determines
-# the sequence of TPG's within the iscsi target across each gateway. Once set, additional
-# gateways can be added, but the order must *not* be changed.
-gateway_ip_list: 0.0.0.0
-
-# rbd_devices defines the images that should be created and exported from the iscsi gateways.
-# If the rbd does not exist, it will be created for you. In addition you may increase the
-# size of rbd's by changing the size parameter and rerunning the playbook. A size value lower
-# than the current size of the rbd is ignored.
-#
-# the 'host' parameter defines which of the gateway nodes should handle the physical
-# allocation/expansion or removal of the rbd
-# to remove an image, simply use a state of 'absent'. This will first check the rbd is not allocated
-# to any client, and the remove it from LIO and then delete the rbd image
-#
-# NB. this variable definition can be commented out to bypass LUN management
-#
-# Example:
-#
-# rbd_devices:
-#   - { pool: 'rbd', image: 'ansible1', size: '30G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible2', size: '15G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible3', size: '30G', host: 'ceph-1', state: 'present' }
-#   - { pool: 'rbd', image: 'ansible4', size: '50G', host: 'ceph-1', state: 'present' }
-rbd_devices: {}
-
-# client_connections defines the client ACL's to restrict client access to specific LUNs
-# The settings are as follows;
-# - image_list is a comma separated list of rbd images of the form <pool name>.<rbd_image_name>
-# - chap supplies the user and password the client will use for authentication of the
-#   form <user>/<password>
-# - status shows the intended state of this client definition - 'present' or 'absent'
-#
-# NB. this definition can be commented out to skip client (nodeACL) management
-#
-# Example:
-#
-# client_connections:
-#   - { client: 'iqn.1994-05.com.redhat:rh7-iscsi-client', image_list: 'rbd.ansible1,rbd.ansible2', chap: 'rh7-iscsi-client/redhat', status: 'present' }
-#   - { client: 'iqn.1991-05.com.microsoft:w2k12r2', image_list: 'rbd.ansible4', chap: 'w2k12r2/microsoft_w2k12', status: 'absent' }
-
-client_connections: {}
 
 no_log_on_ceph_key_tasks: true
 
index 26f2f97875b04f3bf2c3b4c640897405d1534c58..d65e4931585d09835a4709266702ec3990c80d39 100644 (file)
   ansible.builtin.include_tasks: set_radosgw_address.yml
   when: inventory_hostname in groups.get(rgw_group_name, [])
 
-- name: Set_fact use_new_ceph_iscsi package or old ceph-iscsi-config/cli
-  ansible.builtin.set_fact:
-    use_new_ceph_iscsi: "{{ (gateway_ip_list == '0.0.0.0' and gateway_iqn | length == 0 and client_connections | length == 0 and rbd_devices | length == 0) | bool | ternary(true, false) }}"
-  when: iscsi_gw_group_name in group_names
-
 - name: Set_fact ceph_run_cmd
   ansible.builtin.set_fact:
     ceph_run_cmd: "{{ container_binary + ' run --rm --net=host -v /etc/ceph:/etc/ceph:z -v /var/lib/ceph/:/var/lib/ceph/:z -v /var/log/ceph/:/var/log/ceph/:z --entrypoint=ceph ' + ceph_docker_registry + '/' + ceph_docker_image + ':' + ceph_docker_image_tag if containerized_deployment | bool else 'ceph' }}"
index b49276ead5a955ef3de643a6b897c1e8d880a9a1..a806235eba7ec4a1a0cce9956633b8bb477f92ae 100644 (file)
       when: mgr_group_name in group_names
       listen: "Restart ceph mgrs"
 
-    - name: Tcmu-runner handler
-      ansible.builtin.include_tasks: handler_tcmu_runner.yml
-      when: iscsi_gw_group_name in group_names
-      listen: "Restart ceph tcmu-runner"
-
-    - name: Rbd-target-api and rbd-target-gw handler
-      ansible.builtin.include_tasks: handler_rbd_target_api_gw.yml
-      when: iscsi_gw_group_name in group_names
-      listen: "Restart ceph rbd-target-api-gw"
-
     - name: Ceph crash handler
       ansible.builtin.include_tasks: handler_crash.yml
       listen: "Restart ceph crash"
index 1775120e2ae5492deb1eeaf6233c94cbbb27b5be..82f7c5c13559c8b42123b4f22bb98550b447bea2 100644 (file)
   check_mode: false
   when: inventory_hostname in groups.get(nfs_group_name, [])
 
-- name: Check for a tcmu-runner container
-  ansible.builtin.command: "{{ container_binary }} ps -q --filter='name=tcmu-runner'"
-  register: ceph_tcmu_runner_stat
-  changed_when: false
-  failed_when: false
-  check_mode: false
-  when: inventory_hostname in groups.get(iscsi_gw_group_name, [])
-
-- name: Check for a rbd-target-api container
-  ansible.builtin.command: "{{ container_binary }} ps -q --filter='name=rbd-target-api'"
-  register: ceph_rbd_target_api_stat
-  changed_when: false
-  failed_when: false
-  check_mode: false
-  when: inventory_hostname in groups.get(iscsi_gw_group_name, [])
-
-- name: Check for a rbd-target-gw container
-  ansible.builtin.command: "{{ container_binary }} ps -q --filter='name=rbd-target-gw'"
-  register: ceph_rbd_target_gw_stat
-  changed_when: false
-  failed_when: false
-  check_mode: false
-  when: inventory_hostname in groups.get(iscsi_gw_group_name, [])
-
 - name: Check for a ceph-crash container
   ansible.builtin.command: "{{ container_binary }} ps -q --filter='name=ceph-crash-{{ ansible_facts['hostname'] }}'"
   register: ceph_crash_container_stat
index 79f2219826e64a3e4a16bf806a285a8e59ef189b..37e1b0f9590a24fd455d9b666f41c110498196c6 100644 (file)
   check_mode: false
   when: inventory_hostname in groups.get(nfs_group_name, [])
 
-- name: Check for a tcmu-runner
-  ansible.builtin.command: "pgrep tcmu-runner"
-  register: ceph_tcmu_runner_stat
-  changed_when: false
-  failed_when: false
-  check_mode: false
-  when: inventory_hostname in groups.get(iscsi_gw_group_name, [])
-
-- name: Check for a rbd-target-api
-  ansible.builtin.command: "pgrep rbd-target-api"
-  register: ceph_rbd_target_api_stat
-  changed_when: false
-  failed_when: false
-  check_mode: false
-  when: inventory_hostname in groups.get(iscsi_gw_group_name, [])
-
-- name: Check for a rbd-target-gw
-  ansible.builtin.command: "pgrep name=rbd-target-gw"
-  register: ceph_rbd_target_gw_stat
-  changed_when: false
-  failed_when: false
-  check_mode: false
-  when: inventory_hostname in groups.get(iscsi_gw_group_name, [])
-
 - name: Check for a ceph-crash process
   ansible.builtin.command: pgrep ceph-crash
   changed_when: false
diff --git a/roles/ceph-handler/tasks/handler_rbd_target_api_gw.yml b/roles/ceph-handler/tasks/handler_rbd_target_api_gw.yml
deleted file mode 100644 (file)
index ff7c107..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
----
-- name: Set _rbd_target_api_handler_called before restart
-  ansible.builtin.set_fact:
-    _rbd_target_api_handler_called: true
-
-- name: Restart rbd-target-api
-  ansible.builtin.service:
-    name: rbd-target-api
-    state: restarted
-  when:
-    - ceph_rbd_target_api_stat.get('rc') == 0
-    - hostvars[item]['_rbd_target_api_handler_called'] | default(False) | bool
-    - ceph_rbd_target_api_stat.get('stdout_lines', [])|length != 0
-  with_items: "{{ groups[iscsi_gw_group_name] }}"
-  delegate_to: "{{ item }}"
-  run_once: true
-
-- name: Set _rbd_target_api_handler_called after restart
-  ansible.builtin.set_fact:
-    _rbd_target_api_handler_called: false
-
-- name: Set _rbd_target_gw_handler_called before restart
-  ansible.builtin.set_fact:
-    _rbd_target_gw_handler_called: true
-
-- name: Restart rbd-target-gw
-  ansible.builtin.service:
-    name: rbd-target-gw
-    state: restarted
-  when:
-    - ceph_rbd_target_gw_stat.get('rc') == 0
-    - hostvars[item]['_rbd_target_gw_handler_called'] | default(False) | bool
-    - ceph_rbd_target_gw_stat.get('stdout_lines', [])|length != 0
-  with_items: "{{ groups[iscsi_gw_group_name] }}"
-  delegate_to: "{{ item }}"
-  run_once: true
-
-- name: Set _rbd_target_gw_handler_called after restart
-  ansible.builtin.set_fact:
-    _rbd_target_gw_handler_called: false
diff --git a/roles/ceph-handler/tasks/handler_tcmu_runner.yml b/roles/ceph-handler/tasks/handler_tcmu_runner.yml
deleted file mode 100644 (file)
index 77a4b19..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
----
-- name: Set _tcmu_runner_handler_called before restart
-  ansible.builtin.set_fact:
-    _tcmu_runner_handler_called: true
-
-- name: Restart tcmu-runner
-  ansible.builtin.service:
-    name: tcmu-runner
-    state: restarted
-  when:
-    - ceph_tcmu_runner_stat.get('rc') == 0
-    - hostvars[item]['_tcmu_runner_handler_called'] | default(False) | bool
-    - ceph_tcmu_runner_stat.get('stdout_lines', [])|length != 0
-  with_items: "{{ groups[iscsi_gw_group_name] }}"
-  delegate_to: "{{ item }}"
-  run_once: true
-
-- name: Set _tcmu_runner_handler_called after restart
-  ansible.builtin.set_fact:
-    _tcmu_runner_handler_called: false
index b62bb936e764e0c2f71b482ddea7079ed341f24a..a47986bd57e5a07a57f0bfa53642372c72d69498 100644 (file)
         - rbdmirror_group_name is defined
         - rbdmirror_group_name in group_names
 
-    - name: Open ceph networks on iscsi
-      ansible.posix.firewalld:
-        zone: "{{ ceph_iscsi_firewall_zone }}"
-        source: "{{ item }}"
-        permanent: true
-        immediate: true
-        state: enabled
-      with_items: "{{ public_network.split(',') }}"
-      when:
-        - iscsi_gw_group_name is defined
-        - iscsi_gw_group_name in group_names
-
-    - name: Open iscsi target ports
-      ansible.posix.firewalld:
-        port: "3260/tcp"
-        zone: "{{ ceph_iscsi_firewall_zone }}"
-        permanent: true
-        immediate: true
-        state: enabled
-      when:
-        - iscsi_gw_group_name is defined
-        - iscsi_gw_group_name in group_names
-
-    - name: Open iscsi api ports
-      ansible.posix.firewalld:
-        port: "{{ api_port | default(5000) }}/tcp"
-        zone: "{{ ceph_iscsi_firewall_zone }}"
-        permanent: true
-        immediate: true
-        state: enabled
-      when:
-        - iscsi_gw_group_name is defined
-        - iscsi_gw_group_name in group_names
-
-    - name: Open iscsi/prometheus port
-      ansible.posix.firewalld:
-        port: "9287/tcp"
-        zone: "{{ ceph_iscsi_firewall_zone }}"
-        permanent: true
-        immediate: true
-        state: enabled
-      when:
-        - iscsi_gw_group_name is defined
-        - iscsi_gw_group_name in group_names
-
     - name: Open dashboard ports
       ansible.builtin.include_tasks: dashboard_firewall.yml
       when: dashboard_enabled | bool
index c44acd9e6f0756e4afad395cfcba69a50d2ea07d..407beec526fdde9e4b061c89e999272d10dff699 100644 (file)
@@ -34,8 +34,7 @@
       inventory_hostname in groups.get(mds_group_name, []) or
       inventory_hostname in groups.get(rgw_group_name, []) or
       inventory_hostname in groups.get(mgr_group_name, []) or
-      inventory_hostname in groups.get(rbdmirror_group_name, []) or
-      inventory_hostname in groups.get(iscsi_gw_group_name, [])
+      inventory_hostname in groups.get(rbdmirror_group_name, [])
 
 - name: Add logrotate configuration
   ansible.builtin.template:
@@ -51,5 +50,4 @@
       inventory_hostname in groups.get(mds_group_name, []) or
       inventory_hostname in groups.get(rgw_group_name, []) or
       inventory_hostname in groups.get(mgr_group_name, []) or
-      inventory_hostname in groups.get(rbdmirror_group_name, []) or
-      inventory_hostname in groups.get(iscsi_gw_group_name, [])
+      inventory_hostname in groups.get(rbdmirror_group_name, [])
index e8be47396e017a71e480888a177fd685be06b298..c64d4e03dd334fd5061b96dd8d4ac5248b112b7f 100644 (file)
     notifempty
     su root root
 }
-
-/var/log/tcmu-runner/*.log {
-    rotate 7
-    daily
-    compress
-    sharedscripts
-    postrotate
-        killall -q -1 tcmu-runner || pkill -1 -x "tcmu-runner" || true
-    endscript
-    missingok
-    notifempty
-    su root root
-}
diff --git a/roles/ceph-iscsi-gw/LICENSE b/roles/ceph-iscsi-gw/LICENSE
deleted file mode 100644 (file)
index ff84f66..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Copyright 2016 Paul Cuzner pcuzner at redhat dot com
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
diff --git a/roles/ceph-iscsi-gw/README.md b/roles/ceph-iscsi-gw/README.md
deleted file mode 100644 (file)
index 891dbab..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-# Ansible role: ceph-iscsi
-
-Documentation is available at http://docs.ceph.com/ceph-ansible/.
diff --git a/roles/ceph-iscsi-gw/defaults/main.yml b/roles/ceph-iscsi-gw/defaults/main.yml
deleted file mode 100644 (file)
index 972c23a..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
----
-# You can override vars by using host or group vars
-
-###########
-# GENERAL #
-###########
-# Whether or not to generate secure certificate to iSCSI gateway nodes
-generate_crt: false
-
-iscsi_conf_overrides: {}
-iscsi_pool_name: rbd
-# iscsi_pool_size: 3
-
-copy_admin_key: true
-
-##################
-# RBD-TARGET-API #
-##################
-# Optional settings related to the CLI/API service
-api_user: admin
-api_password: admin
-api_port: 5000
-api_secure: false
-loop_delay: 1
-# set the variable below with a comma separated list of IPs
-# in order to restrict the access to the iSCSI API
-# trusted_ip_list: 192.168.122.1
-
-
-##########
-# DOCKER #
-##########
-
-# Resource limitation
-# For the whole list of limits you can apply see: docs.docker.com/engine/admin/resource_constraints
-# Default values are based from: https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/2/html/red_hat_ceph_storage_hardware_guide/minimum_recommendations
-# These options can be passed using the 'ceph_mds_docker_extra_env' variable.
-
-# TCMU_RUNNER resource limitation
-ceph_tcmu_runner_docker_memory_limit: "{{ ansible_facts['memtotal_mb'] }}m"
-ceph_tcmu_runner_docker_cpu_limit: 1
-
-# RBD_TARGET_GW resource limitation
-ceph_rbd_target_gw_docker_memory_limit: "{{ ansible_facts['memtotal_mb'] }}m"
-ceph_rbd_target_gw_docker_cpu_limit: 1
-
-# RBD_TARGET_API resource limitation
-ceph_rbd_target_api_docker_memory_limit: "{{ ansible_facts['memtotal_mb'] }}m"
-ceph_rbd_target_api_docker_cpu_limit: 1
diff --git a/roles/ceph-iscsi-gw/meta/main.yml b/roles/ceph-iscsi-gw/meta/main.yml
deleted file mode 100644 (file)
index b7c8f39..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
----
-galaxy_info:
-  company: Red Hat
-  author: Paul Cuzner
-  description: Installs Ceph iSCSI Gateways
-  license: Apache
-  min_ansible_version: '2.7'
-  platforms:
-    - name: EL
-      versions:
-        - 'all'
-  galaxy_tags:
-    - system
-dependencies: []
diff --git a/roles/ceph-iscsi-gw/tasks/common.yml b/roles/ceph-iscsi-gw/tasks/common.yml
deleted file mode 100644 (file)
index 0a6a2d8..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
----
-- name: Get keys from monitors
-  ceph_key:
-    name: client.admin
-    cluster: "{{ cluster }}"
-    output_format: plain
-    state: info
-  environment:
-    CEPH_CONTAINER_IMAGE: "{{ ceph_docker_registry + '/' + ceph_docker_image + ':' + ceph_docker_image_tag if containerized_deployment | bool else None }}"
-    CEPH_CONTAINER_BINARY: "{{ container_binary }}"
-  register: _admin_key
-  delegate_to: "{{ groups.get(mon_group_name)[0] }}"
-  run_once: true
-  when:
-    - cephx | bool
-    - copy_admin_key | bool
-  no_log: "{{ no_log_on_ceph_key_tasks }}"
-
-- name: Copy ceph key(s) if needed
-  ansible.builtin.copy:
-    dest: "/etc/ceph/{{ cluster }}.client.admin.keyring"
-    content: "{{ _admin_key.stdout + '\n' }}"
-    owner: "{{ ceph_uid if containerized_deployment | bool else 'ceph' }}"
-    group: "{{ ceph_uid if containerized_deployment | bool else 'ceph' }}"
-    mode: "{{ ceph_keyring_permissions }}"
-  when:
-    - cephx | bool
-    - copy_admin_key | bool
-  no_log: "{{ no_log_on_ceph_key_tasks }}"
-
-- name: Add mgr ip address to trusted list with dashboard - ipv4
-  ansible.builtin.set_fact:
-    trusted_ip_list: '{{ trusted_ip_list | default("") }}{{ "," if trusted_ip_list is defined else "" }}{{ hostvars[item]["ansible_facts"]["all_ipv4_addresses"] | ips_in_ranges(public_network.split(",")) | first }}'
-  with_items: '{{ groups[mgr_group_name] | default(groups[mon_group_name]) }}'
-  when:
-    - dashboard_enabled | bool
-    - ip_version == 'ipv4'
-
-- name: Add mgr ip address to trusted list with dashboard - ipv6
-  ansible.builtin.set_fact:
-    trusted_ip_list: '{{ trusted_ip_list | default("") }}{{ "," if trusted_ip_list is defined else "" }}{{ hostvars[item]["ansible_facts"]["all_ipv6_addresses"] | ips_in_ranges(public_network.split(",")) | last }}'
-  with_items: '{{ groups[mgr_group_name] | default(groups[mon_group_name]) }}'
-  when:
-    - dashboard_enabled | bool
-    - ip_version == 'ipv6'
-
-- name: Deploy gateway settings, used by the ceph_iscsi_config modules
-  openstack.config_template.config_template:
-    src: "{{ role_path }}/templates/iscsi-gateway.cfg.j2"
-    dest: /etc/ceph/iscsi-gateway.cfg
-    config_type: ini
-    config_overrides: '{{ iscsi_conf_overrides }}'
-    mode: "0600"
-  notify: Restart ceph rbd-target-api-gw
-
-- name: Set_fact container_exec_cmd
-  ansible.builtin.set_fact:
-    container_exec_cmd: "{{ container_binary }} exec ceph-mon-{{ hostvars[groups[mon_group_name][0]]['ansible_facts']['hostname'] }}"
-  delegate_to: "{{ groups[mon_group_name][0] }}"
-  when: containerized_deployment | bool
-
-- name: Create iscsi pool
-  ceph_pool:
-    name: "{{ iscsi_pool_name }}"
-    cluster: "{{ cluster }}"
-    size: "{{ iscsi_pool_size | default(omit) }}"
-    application: "rbd"
-  run_once: true
-  delegate_to: "{{ groups[mon_group_name][0] }}"
-  environment:
-    CEPH_CONTAINER_IMAGE: "{{ ceph_docker_registry + '/' + ceph_docker_image + ':' + ceph_docker_image_tag if containerized_deployment | bool else None }}"
-    CEPH_CONTAINER_BINARY: "{{ container_binary }}"
diff --git a/roles/ceph-iscsi-gw/tasks/containerized.yml b/roles/ceph-iscsi-gw/tasks/containerized.yml
deleted file mode 100644 (file)
index c1fb992..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
----
-- name: Create /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}
-  ansible.builtin.file:
-    path: "/var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}"
-    state: directory
-    owner: "{{ ceph_uid }}"
-    group: "{{ ceph_uid }}"
-    mode: "{{ ceph_directories_mode }}"
-
-- name: Create rbd target log directories
-  ansible.builtin.file:
-    path: '/var/log/{{ item }}'
-    state: directory
-    mode: "0755"
-  with_items:
-    - rbd-target-api
-    - rbd-target-gw
-    - tcmu-runner
-
-- name: Include_tasks systemd.yml
-  ansible.builtin.include_tasks: systemd.yml
-
-- name: Systemd start tcmu-runner, rbd-target-api and rbd-target-gw containers
-  ansible.builtin.systemd:
-    name: "{{ item }}"
-    state: started
-    enabled: true
-    masked: false
-    daemon_reload: true
-  with_items:
-    - tcmu-runner
-    - rbd-target-gw
-    - rbd-target-api
diff --git a/roles/ceph-iscsi-gw/tasks/deploy_ssl_keys.yml b/roles/ceph-iscsi-gw/tasks/deploy_ssl_keys.yml
deleted file mode 100644 (file)
index 7bb0488..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
----
-- name: Create a temporary directory
-  ansible.builtin.tempfile:
-    state: directory
-  register: iscsi_ssl_tmp_dir
-  delegate_to: localhost
-  run_once: true
-
-- name: Set_fact crt_files
-  ansible.builtin.set_fact:
-    crt_files:
-      - "iscsi-gateway.crt"
-      - "iscsi-gateway.key"
-      - "iscsi-gateway.pem"
-      - "iscsi-gateway-pub.key"
-
-- name: Check for existing crt file(s) in monitor key/value store
-  ansible.builtin.command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} config get iscsi/ssl/{{ item }}"
-  with_items: "{{ crt_files }}"
-  changed_when: false
-  failed_when: crt_files_exist.rc not in [0, 22]
-  run_once: true
-  delegate_to: "{{ groups.get(mon_group_name)[0] }}"
-  register: crt_files_exist
-
-- name: Set_fact crt_files_missing
-  ansible.builtin.set_fact:
-    crt_files_missing: "{{ crt_files_exist.results | selectattr('rc', 'equalto', 0) | map(attribute='rc') | list | length != crt_files | length }}"
-
-- name: Generate ssl crt/key files
-  when: crt_files_missing
-  block:
-    - name: Create ssl crt/key files
-      ansible.builtin.command: >
-        openssl req -newkey rsa:2048 -nodes -keyout {{ iscsi_ssl_tmp_dir.path }}/iscsi-gateway.key
-         -x509 -days 365 -out {{ iscsi_ssl_tmp_dir.path }}/iscsi-gateway.crt
-         -subj "/C=US/ST=./L=./O=RedHat/OU=Linux/CN={{ ansible_facts['hostname'] }}"
-      delegate_to: localhost
-      run_once: true
-      changed_when: false
-      with_items: "{{ crt_files_exist.results }}"
-
-    - name: Create pem  # noqa: no-changed-when
-      ansible.builtin.shell: >
-        cat {{ iscsi_ssl_tmp_dir.path }}/iscsi-gateway.crt
-        {{ iscsi_ssl_tmp_dir.path }}/iscsi-gateway.key > {{ iscsi_ssl_tmp_dir.path }}/iscsi-gateway.pem
-      delegate_to: localhost
-      run_once: true
-      register: pem
-      with_items: "{{ crt_files_exist.results }}"
-
-    - name: Create public key from pem
-      ansible.builtin.shell: >
-        openssl x509 -inform pem -in {{ iscsi_ssl_tmp_dir.path }}/iscsi-gateway.pem
-        -pubkey -noout > {{ iscsi_ssl_tmp_dir.path }}/iscsi-gateway-pub.key
-      delegate_to: localhost
-      run_once: true
-      when: pem.changed
-      tags: skip_ansible_lint
-
-    - name: Slurp ssl crt/key files
-      ansible.builtin.slurp:
-        src: "{{ iscsi_ssl_tmp_dir.path }}/{{ item }}"
-      register: iscsi_ssl_files_content
-      with_items: "{{ crt_files }}"
-      run_once: true
-      delegate_to: localhost
-
-    - name: Store ssl crt/key files
-      ansible.builtin.command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} config-key put iscsi/ssl/{{ item.item }} {{ item.content }}"
-      run_once: true
-      delegate_to: "{{ groups.get(mon_group_name)[0] }}"
-      with_items: "{{ iscsi_ssl_files_content.results }}"
-      changed_when: false
-
-- name: Copy crt file(s) to gateway nodes
-  ansible.builtin.copy:
-    content: "{{ item.stdout | b64decode }}"
-    dest: "/etc/ceph/{{ item.item }}"
-    owner: root
-    group: root
-    mode: "0400"
-  changed_when: false
-  with_items: "{{ crt_files_exist.results if not crt_files_missing else iscsi_ssl_files_content.results }}"
-  when: not crt_files_missing
-
-- name: Clean temporary directory
-  ansible.builtin.file:
-    path: "{{ iscsi_ssl_tmp_dir.path }}"
-    state: absent
diff --git a/roles/ceph-iscsi-gw/tasks/main.yml b/roles/ceph-iscsi-gw/tasks/main.yml
deleted file mode 100644 (file)
index 0709a95..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
----
-- name: Include common.yml
-  ansible.builtin.include_tasks: common.yml
-
-- name: Include non-container/prerequisites.yml
-  ansible.builtin.include_tasks: non-container/prerequisites.yml
-  when: not containerized_deployment | bool
-
-# deploy_ssl_keys used the ansible controller to create self-signed crt/key/pub files
-# and transfers them to /etc/ceph directory on each controller. SSL certs are used by
-# the API for https support.
-- name: Include deploy_ssl_keys.yml
-  ansible.builtin.include_tasks: deploy_ssl_keys.yml
-  when: generate_crt | bool
-
-- name: Include non-container/configure_iscsi.yml
-  ansible.builtin.include_tasks: non-container/configure_iscsi.yml
-  when:
-    - not containerized_deployment | bool
-    - not use_new_ceph_iscsi | bool
-
-- name: Include non-container/postrequisites.yml
-  ansible.builtin.include_tasks: non-container/postrequisites.yml
-  when: not containerized_deployment | bool
-
-- name: Include containerized.yml
-  ansible.builtin.include_tasks: containerized.yml
-  when: containerized_deployment | bool
diff --git a/roles/ceph-iscsi-gw/tasks/non-container/configure_iscsi.yml b/roles/ceph-iscsi-gw/tasks/non-container/configure_iscsi.yml
deleted file mode 100644 (file)
index e4c4fa1..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
----
-- name: Igw_gateway (tgt) | configure iscsi target (gateway)
-  igw_gateway:
-    mode: "target"
-    gateway_iqn: "{{ gateway_iqn }}"
-    gateway_ip_list: "{{ gateway_ip_list }}"
-  register: target
-
-- name: Igw_lun | configure luns (create/map rbds and add to lio)
-  igw_lun:
-    pool: "{{ item.pool }}"
-    image: "{{ item.image }}"
-    size: "{{ item.size }}"
-    host: "{{ item.host }}"
-    state: "{{ item.state }}"
-  with_items: "{{ rbd_devices }}"
-  register: images
-
-- name: Igw_gateway (map) | map luns to the iscsi target
-  igw_gateway:
-    mode: "map"
-    gateway_iqn: "{{ gateway_iqn }}"
-    gateway_ip_list: "{{ gateway_ip_list }}"
-  register: luns
-
-- name: Igw_client | configure client connectivity
-  igw_client:
-    client_iqn: "{{ item.client }}"
-    image_list: "{{ item.image_list }}"
-    chap: "{{ item.chap }}"
-    state: "{{ item.status }}"
-  with_items: "{{ client_connections }}"
-  register: clients
diff --git a/roles/ceph-iscsi-gw/tasks/non-container/postrequisites.yml b/roles/ceph-iscsi-gw/tasks/non-container/postrequisites.yml
deleted file mode 100644 (file)
index e405165..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-- name: Start rbd-target-api and rbd-target-gw
-  ansible.builtin.systemd:
-    name: "{{ item }}"
-    state: started
-    enabled: true
-    masked: false
-  with_items:
-    - rbd-target-api
-    - rbd-target-gw
diff --git a/roles/ceph-iscsi-gw/tasks/non-container/prerequisites.yml b/roles/ceph-iscsi-gw/tasks/non-container/prerequisites.yml
deleted file mode 100644 (file)
index fce5417..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
----
-- name: Red hat based systems tasks
-  when: ansible_facts['os_family'] == 'RedHat'
-  block:
-    - name: Set_fact common_pkgs
-      ansible.builtin.set_fact:
-        common_pkgs:
-          - tcmu-runner
-          - targetcli
-
-    - name: Set_fact base iscsi pkgs if new style ceph-iscsi
-      ansible.builtin.set_fact:
-        iscsi_base:
-          - ceph-iscsi
-      when: use_new_ceph_iscsi | bool
-
-    - name: Set_fact base iscsi pkgs if using older ceph-iscsi-config
-      ansible.builtin.set_fact:
-        iscsi_base:
-          - ceph-iscsi-cli
-          - ceph-iscsi-config
-      when: not use_new_ceph_iscsi | bool
-
-    - name: When ceph_iscsi_config_dev is true
-      when:
-        - ceph_origin == 'repository'
-        - ceph_repository in ['dev', 'community']
-        - ceph_iscsi_config_dev | bool
-      block:
-        - name: Ceph-iscsi dependency repositories
-          ansible.builtin.get_url:
-            url: "https://shaman.ceph.com/api/repos/tcmu-runner/main/latest/{{ ansible_facts['distribution'] | lower }}/{{ ansible_facts['distribution_major_version'] }}/repo?arch={{ ansible_facts['architecture'] }}"
-            dest: '/etc/yum.repos.d/tcmu-runner-dev.repo'
-            force: true
-            mode: "0644"
-          register: result
-          until: result is succeeded
-
-        - name: Ceph-iscsi development repository
-          ansible.builtin.get_url:
-            url: "https://shaman.ceph.com/api/repos/{{ item }}/main/latest/{{ ansible_facts['distribution'] | lower }}/{{ ansible_facts['distribution_major_version'] }}/repo"
-            dest: '/etc/yum.repos.d/{{ item }}-dev.repo'
-            force: true
-            mode: "0644"
-          register: result
-          until: result is succeeded
-          with_items: '{{ iscsi_base }}'
-          when: ceph_repository == 'dev'
-
-        - name: Ceph-iscsi stable repository
-          ansible.builtin.get_url:
-            url: "https://download.ceph.com/ceph-iscsi/{{ '3' if use_new_ceph_iscsi | bool else '2' }}/rpm/el{{ ansible_facts['distribution_major_version'] }}/ceph-iscsi.repo"
-            dest: /etc/yum.repos.d/ceph-iscsi.repo
-            force: true
-            mode: "0644"
-          register: result
-          until: result is succeeded
-          when: ceph_repository == 'community'
-
-    - name: Install ceph iscsi package
-      ansible.builtin.package:
-        name: "{{ common_pkgs + iscsi_base }}"
-        state: "{{ (upgrade_ceph_packages | bool) | ternary('latest', 'present') }}"
-      register: result
-      until: result is succeeded
-
-- name: Check the status of the target.service override
-  ansible.builtin.stat:
-    path: /etc/systemd/system/target.service
-  register: target
-
-- name: Mask the target service - preventing manual start
-  ansible.builtin.systemd:
-    name: target
-    masked: true
-    enabled: false
-  when:
-    - target.stat.exists
-    - not target.stat.islnk
-
-# Only start tcmu-runner, so configure_iscsi.yml can create disks.
-# We must start rbd-target-gw/api after configure_iscsi.yml to avoid
-# races where they are both trying to setup the same object during
-# a rolling update.
-- name: Start tcmu-runner
-  ansible.builtin.systemd:
-    name: tcmu-runner
-    state: started
-    enabled: true
-    masked: false
diff --git a/roles/ceph-iscsi-gw/tasks/systemd.yml b/roles/ceph-iscsi-gw/tasks/systemd.yml
deleted file mode 100644 (file)
index 2fc75f6..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
----
-- name: Generate systemd unit files for tcmu-runner, rbd-target-api and rbd-target-gw
-  ansible.builtin.template:
-    src: "{{ role_path }}/templates/{{ item }}.service.j2"
-    dest: /etc/systemd/system/{{ item }}.service
-    owner: "root"
-    group: "root"
-    mode: "0644"
-  with_items:
-    - tcmu-runner
-    - rbd-target-gw
-    - rbd-target-api
-  notify:
-    - Restart ceph tcmu-runner
-    - Restart ceph rbd-target-api-gw
diff --git a/roles/ceph-iscsi-gw/templates/iscsi-gateway.cfg.j2 b/roles/ceph-iscsi-gw/templates/iscsi-gateway.cfg.j2
deleted file mode 100644 (file)
index 82c564d..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-# This is seed configuration used by the ceph_iscsi_config modules
-# when handling configuration tasks for iscsi gateway(s)
-#
-# {{ ansible_managed }}
-
-[config]
-cluster_name = {{ cluster }}
-
-pool = {{ iscsi_pool_name }}
-
-# API settings.
-# The API supports a number of options that allow you to tailor it to your
-# local environment. If you want to run the API under https, you will need to
-# create cert/key files that are compatible for each iSCSI gateway node, that is
-# not locked to a specific node. SSL cert and key files *must* be called
-# 'iscsi-gateway.crt' and 'iscsi-gateway.key' and placed in the '/etc/ceph/' directory
-# on *each* gateway node. With the SSL files in place, you can use 'api_secure = true'
-# to switch to https mode.
-
-# To support the API, the bear minimum settings are:
-api_secure = {{ api_secure }}
-
-# Optional settings related to the CLI/API service
-api_user = {{ api_user }}
-api_password = {{ api_password }}
-api_port = {{ api_port }}
-loop_delay = {{ loop_delay }}
-{% if trusted_ip_list is defined %}
-trusted_ip_list = {{ trusted_ip_list }}
-{% endif %}
\ No newline at end of file
diff --git a/roles/ceph-iscsi-gw/templates/rbd-target-api.service.j2 b/roles/ceph-iscsi-gw/templates/rbd-target-api.service.j2
deleted file mode 100644 (file)
index 5683a04..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-[Unit]
-Description=RBD Target API Service
-{% if container_binary == 'docker' %}
-After=docker.service network-online.target local-fs.target time-sync.target
-Requires=docker.service
-{% else %}
-After=network-online.target local-fs.target time-sync.target
-{% endif %}
-Wants=network-online.target local-fs.target time-sync.target
-
-[Service]
-EnvironmentFile=-/etc/environment
-{% if container_binary == 'podman' %}
-ExecStartPre=-/usr/bin/rm -f /%t/%n-pid /%t/%n-cid
-ExecStartPre=-/usr/bin/{{ container_binary }} rm --storage rbd-target-api
-ExecStartPre=-/usr/bin/mkdir -p /var/log/rbd-target-api
-{% else %}
-ExecStartPre=-/usr/bin/{{ container_binary }} stop rbd-target-api
-{% endif %}
-ExecStartPre=-/usr/bin/{{ container_binary }} rm rbd-target-api
-ExecStartPre=-/usr/bin/sh -c "if ! grep -qs /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }} /proc/mounts; then mount -t configfs none /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}; fi"
-ExecStart=/usr/bin/{{ container_binary }} run --rm \
-{% if container_binary == 'podman' %}
-  -d --log-driver journald --conmon-pidfile /%t/%n-pid --cidfile /%t/%n-cid \
-{% endif %}
-  --pids-limit={{ 0 if container_binary == 'podman' else -1 }} \
-  --memory={{ ceph_rbd_target_api_docker_memory_limit }} \
-  --cpus={{ ceph_rbd_target_api_docker_cpu_limit }} \
-  -v /etc/localtime:/etc/localtime:ro \
-  --privileged \
-  --net=host \
-  -v /dev:/dev \
-  -v /dev/log:/dev/log \
-  -v /lib/modules:/lib/modules \
-  -v /etc/ceph:/etc/ceph \
-  -v /var/log/rbd-target-api:/var/log/rbd-target-api:z \
-  -v /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}:/sys/kernel/config \
-  --name=rbd-target-api \
-  --entrypoint=/usr/bin/rbd-target-api \
-  {{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}
-{% if container_binary == 'podman' %}
-ExecStop=-/usr/bin/sh -c "/usr/bin/{{ container_binary }} rm -f `cat /%t/%n-cid`"
-{% else %}
-ExecStopPost=-/usr/bin/{{ container_binary }} stop rbd-target-api
-{% endif %}
-ExecStopPost=-/usr/bin/sh -c "if grep -qs /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }} /proc/mounts; then umount /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}; fi"
-KillMode=none
-Restart=always
-RestartSec=10s
-TimeoutStartSec=120
-TimeoutStopSec=15
-{% if container_binary == 'podman' %}
-Type=forking
-PIDFile=/%t/%n-pid
-{% endif %}
-
-[Install]
-WantedBy=multi-user.target
diff --git a/roles/ceph-iscsi-gw/templates/rbd-target-gw.service.j2 b/roles/ceph-iscsi-gw/templates/rbd-target-gw.service.j2
deleted file mode 100644 (file)
index 1d3a386..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-[Unit]
-Description=RBD Target Gateway Service
-{% if container_binary == 'docker' %}
-After=docker.service network-online.target local-fs.target time-sync.target
-Requires=docker.service
-{% else %}
-After=network-online.target local-fs.target time-sync.target
-{% endif %}
-Wants=network-online.target local-fs.target time-sync.target
-
-[Service]
-EnvironmentFile=-/etc/environment
-{% if container_binary == 'podman' %}
-ExecStartPre=-/usr/bin/rm -f /%t/%n-pid /%t/%n-cid
-ExecStartPre=-/usr/bin/{{ container_binary }} rm --storage rbd-target-gw
-ExecStartPre=-/usr/bin/mkdir -p /var/log/rbd-target-gw
-{% else %}
-ExecStartPre=-/usr/bin/{{ container_binary }} stop rbd-target-gw
-{% endif %}
-ExecStartPre=-/usr/bin/{{ container_binary }} rm rbd-target-gw
-ExecStartPre=-/usr/bin/sh -c "if ! grep -qs /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }} /proc/mounts; then mount -t configfs none /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}; fi"
-ExecStart=/usr/bin/{{ container_binary }} run --rm \
-{% if container_binary == 'podman' %}
-  -d --log-driver journald --conmon-pidfile /%t/%n-pid --cidfile /%t/%n-cid \
-{% endif %}
-  --pids-limit={{ 0 if container_binary == 'podman' else -1 }} \
-  --memory={{ ceph_rbd_target_gw_docker_memory_limit }} \
-  --cpus={{ ceph_rbd_target_gw_docker_cpu_limit }} \
-  -v /etc/localtime:/etc/localtime:ro \
-  --privileged \
-  --net=host \
-  -v /dev:/dev \
-  -v /dev/log:/dev/log \
-  -v /lib/modules:/lib/modules \
-  -v /etc/ceph:/etc/ceph \
-  -v /var/log/rbd-target-gw:/var/log/rbd-target-gw:z \
-  -v /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}:/sys/kernel/config \
-  --name=rbd-target-gw \
-  --entrypoint=/usr/bin/rbd-target-gw \
-  {{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}
-{% if container_binary == 'podman' %}
-ExecStop=-/usr/bin/sh -c "/usr/bin/{{ container_binary }} rm -f `cat /%t/%n-cid`"
-{% else %}
-ExecStopPost=-/usr/bin/{{ container_binary }} stop rbd-target-gw
-{% endif %}
-ExecStopPost=-/usr/bin/sh -c "if grep -qs /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }} /proc/mounts; then umount /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}; fi"
-KillMode=none
-Restart=always
-RestartSec=10s
-TimeoutStartSec=120
-TimeoutStopSec=15
-{% if container_binary == 'podman' %}
-Type=forking
-PIDFile=/%t/%n-pid
-{% endif %}
-
-[Install]
-WantedBy=multi-user.target
diff --git a/roles/ceph-iscsi-gw/templates/tcmu-runner.service.j2 b/roles/ceph-iscsi-gw/templates/tcmu-runner.service.j2
deleted file mode 100644 (file)
index 6391021..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-[Unit]
-Description=TCMU Runner
-{% if container_binary == 'docker' %}
-After=docker.service network-online.target local-fs.target time-sync.target
-Requires=docker.service
-{% else %}
-After=network-online.target local-fs.target time-sync.target
-{% endif %}
-Wants=network-online.target local-fs.target time-sync.target
-
-[Service]
-EnvironmentFile=-/etc/environment
-{% if container_binary == 'podman' %}
-ExecStartPre=-/usr/bin/rm -f /%t/%n-pid /%t/%n-cid
-ExecStartPre=-/usr/bin/{{ container_binary }} rm --storage tcmu-runner
-ExecStartPre=-/usr/bin/mkdir -p /var/log/tcmu-runner
-{% else %}
-ExecStartPre=-/usr/bin/{{ container_binary }} stop tcmu-runner
-{% endif %}
-ExecStartPre=-/usr/bin/{{ container_binary }} rm tcmu-runner
-ExecStartPre=-/usr/bin/sh -c "if ! grep -qs /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }} /proc/mounts; then mount -t configfs none /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}; fi"
-ExecStart=/usr/bin/{{ container_binary }} run --rm \
-{% if container_binary == 'podman' %}
-  -d --log-driver journald --conmon-pidfile /%t/%n-pid --cidfile /%t/%n-cid \
-{% endif %}
-  --pids-limit={{ 0 if container_binary == 'podman' else -1 }} \
-  --memory={{ ceph_tcmu_runner_docker_memory_limit }} \
-  --cpus={{ ceph_tcmu_runner_docker_cpu_limit }} \
-  -v /etc/localtime:/etc/localtime:ro \
-  --privileged \
-  --net=host \
-  -v /dev:/dev \
-  -v /lib/modules:/lib/modules \
-  -v /etc/ceph:/etc/ceph \
-  -v /var/log/tcmu-runner:/var/log/tcmu-runner:z \
-  -v /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}:/sys/kernel/config \
-  --name=tcmu-runner \
-  --entrypoint=tcmu-runner \
-  {{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }} \
-  --tcmu-log-dir /var/log/tcmu-runner
-{% if container_binary == 'podman' %}
-ExecStop=-/usr/bin/sh -c "/usr/bin/{{ container_binary }} rm -f `cat /%t/%n-cid`"
-{% else %}
-ExecStopPost=-/usr/bin/{{ container_binary }} stop tcmu-runner
-{% endif %}
-ExecStopPost=-/usr/bin/sh -c "if grep -qs /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }} /proc/mounts; then umount /var/lib/ceph/iscsi.{{ ansible_facts['hostname'] }}; fi"
-KillMode=none
-Restart=always
-RestartSec=10s
-TimeoutStartSec=120
-TimeoutStopSec=15
-{% if container_binary == 'podman' %}
-Type=forking
-PIDFile=/%t/%n-pid
-{% endif %}
-
-[Install]
-WantedBy=multi-user.target
index 6181dc13b0c8908b7fefbbd67ecd239473b251a0..2476495bb5b75684b0eff0d7fe7436c3a63ca614 100644 (file)
@@ -31,15 +31,6 @@ scrape_configs:
         labels:
           instance: "{{ hostvars[host]['ansible_facts']['nodename'] }}"
 {% endfor %}
-{% if iscsi_gw_group_name in groups %}
-  - job_name: 'iscsi-gws'
-    static_configs:
-{% for host in groups[iscsi_gw_group_name] %}
-      - targets: ['{{ host }}:9287']
-        labels:
-          instance: "{{ hostvars[host]['ansible_facts']['nodename'] }}"
-{% endfor %}
-{% endif %}
 alerting:
   alertmanagers:
   - scheme: http
diff --git a/roles/ceph-validate/tasks/check_iscsi.yml b/roles/ceph-validate/tasks/check_iscsi.yml
deleted file mode 100644 (file)
index 25673eb..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
----
-- name: Fail on unsupported distribution for iscsi gateways
-  ansible.builtin.fail:
-    msg: "iSCSI gateways can only be deployed on Red Hat Enterprise Linux, CentOS or Fedora"
-  when: ansible_facts['distribution'] not in ['RedHat', 'CentOS', 'Fedora', 'AlmaLinux', 'Rocky']
-
-- name: Make sure gateway_ip_list is configured
-  ansible.builtin.fail:
-    msg: "you must set a list of IPs (comma separated) for gateway_ip_list"
-  when:
-    - gateway_ip_list == '0.0.0.0'
-    - not containerized_deployment | bool
-    - not use_new_ceph_iscsi | bool
-
-- name: Make sure gateway_iqn is configured
-  ansible.builtin.fail:
-    msg: "you must set a iqn for the iSCSI target"
-  when:
-    - gateway_iqn | length == 0
-    - not containerized_deployment | bool
-    - not use_new_ceph_iscsi | bool
-
-- name: Fail if unsupported chap configuration
-  ansible.builtin.fail:
-    msg: "Mixing clients with CHAP enabled and disabled is not supported."
-  with_items: "{{ client_connections }}"
-  when:
-    - item.status is defined
-    - item.status == "present"
-    - item.chap
-    - " '' in client_connections | selectattr('status', 'match', 'present') | map(attribute='chap') | list"
-
-- name: Fail on unsupported distribution version for iscsi gateways
-  ansible.builtin.command: "grep -q {{ item }}=m {% if is_atomic | bool %}/usr/lib/ostree-boot{% else %}/boot{% endif %}/config-{{ ansible_facts['kernel'] }}"
-  register: iscsi_kernel
-  changed_when: false
-  failed_when: iscsi_kernel.rc != 0
-  loop:
-    - CONFIG_TARGET_CORE
-    - CONFIG_TCM_USER2
-    - CONFIG_ISCSI_TARGET
-  when: ansible_facts['distribution'] in ['RedHat', 'CentOS']
index 8b4ad48b5490cd94c470149beb8ea12301aef5cc..f0caab90f20db9c332417591eaa3faff793b7d4a 100644 (file)
     - inventory_hostname in groups.get(rgw_group_name, [])
     - rgw_create_pools is defined
 
-- name: Include check_iscsi.yml
-  ansible.builtin.include_tasks: check_iscsi.yml
-  when: iscsi_gw_group_name in group_names
-
 - name: Include check_nfs.yml
   ansible.builtin.include_tasks: check_nfs.yml
   when: inventory_hostname in groups.get(nfs_group_name, [])
index b100262634dad667593dc0b5178e04fdd5d72c0c..a50c079a2190641f3074da632c5ab1c16da0b55f 100644 (file)
@@ -18,7 +18,6 @@
   - nfss
   - rbdmirrors
   - clients
-  - iscsigws
   - mgrs
   - monitoring
 
             status: "Complete"
             end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
 
-- hosts:
-    - iscsigws
-  gather_facts: false
-  any_errors_fatal: true
-  become: True
-  tasks:
-    # pre-tasks for following imports -
-    - name: set ceph iscsi gateway install 'In Progress'
-      run_once: true
-      set_stats:
-        data:
-          installer_phase_ceph_iscsi_gw:
-            status: "In Progress"
-            start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
-
-    - import_role:
-        name: ceph-defaults
-      tags: ['ceph_update_config']
-    - import_role:
-        name: ceph-facts
-      tags: ['ceph_update_config']
-    - import_role:
-        name: ceph-handler
-      tags: ['ceph_update_config']
-    - import_role:
-        name: ceph-config
-      tags: ['ceph_update_config']
-    - import_role:
-        name: ceph-iscsi-gw
-
-    # post-tasks for preceding imports -
-  post_tasks:
-    - name: set ceph iscsi gw install 'Complete'
-      run_once: true
-      set_stats:
-        data:
-          installer_phase_ceph_iscsi_gw:
-            status: "Complete"
-            end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
-
 - import_playbook: dashboard.yml
   when:
     - dashboard_enabled | bool
index a5c2fdd2253ae473b950f8a5a2615a42b3263ad6..8dd7d76e519f9b2b7c86a9e522475852b0f61e9b 100644 (file)
@@ -20,7 +20,6 @@
   - rbdmirrors
   - clients
   - mgrs
-  - iscsigws
   - monitoring
   - rgwloadbalancers
 
             status: "Complete"
             end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
 
-- hosts:
-    - iscsigws
-  gather_facts: false
-  become: True
-  any_errors_fatal: true
-  pre_tasks:
-    - name: set ceph iscsi gateway install 'In Progress'
-      run_once: true
-      set_stats:
-        data:
-          installer_phase_ceph_iscsi_gw:
-            status: "In Progress"
-            start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
-
-  tasks:
-    - import_role:
-        name: ceph-defaults
-      tags: ['ceph_update_config']
-    - import_role:
-        name: ceph-facts
-      tags: ['ceph_update_config']
-    - import_role:
-        name: ceph-handler
-      tags: ['ceph_update_config']
-    - import_role:
-        name: ceph-config
-      tags: ['ceph_update_config']
-    - import_role:
-        name: ceph-iscsi-gw
-
-  post_tasks:
-    - name: set ceph iscsi gw install 'Complete'
-      run_once: true
-      set_stats:
-        data:
-          installer_phase_ceph_iscsi_gw:
-            status: "Complete"
-            end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
-
 - hosts:
     - rgwloadbalancers
   gather_facts: false
index 3831b4563d00df847cbf4ce5c3c881a4a470e735..abed775c5c3802217bc733518191f22965539983 100644 (file)
@@ -167,8 +167,8 @@ def node(host, request):
     if request.node.get_closest_marker('rbdmirror_secondary') and not ceph_rbd_mirror_remote_user:  # noqa E501
         pytest.skip('Not a valid test for a non-secondary rbd-mirror node')
 
-    if request.node.get_closest_marker('ceph_crash') and sanitized_group_names in [['nfss'], ['iscsigws'], ['clients'], ['monitoring']]:
-        pytest.skip('Not a valid test for nfs, client or iscsigw nodes')
+    if request.node.get_closest_marker('ceph_crash') and sanitized_group_names in [['nfss'], ['clients'], ['monitoring']]:
+        pytest.skip('Not a valid test for nfs or client nodes')
 
     if request.node.get_closest_marker("no_docker") and docker:
         pytest.skip(
@@ -213,8 +213,6 @@ def pytest_collection_modifyitems(session, config, items):
             item.add_marker(pytest.mark.rgws)
         elif "nfs" in test_path:
             item.add_marker(pytest.mark.nfss)
-        elif "iscsi" in test_path:
-            item.add_marker(pytest.mark.iscsigws)
         elif "grafana" in test_path:
             item.add_marker(pytest.mark.grafanas)
         else:
index a3d6f91936103d57db4db8f561b4fbdde2f66cdf..3b0f83df62e4b60ee85e0b1f17e967b804997a3e 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 76cf45e0d320942506cc2d8a71f828c2a229ad18..ba9c2178495173fe6db6e4264eb1d00128016451 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 13fefabc324fdfa76e45fe95732896f34e219550..7c5bfe8d056f5efebd2187e80762b3080356edde 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 1
 
 # INSTALL SOURCE OF CEPH
index f918a063cde3bf2ce9b72e0917f9a7e1965cd7ac..5c0cf696bae485537cf289715a7a1b9fab06ba60 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 1
 
 # INSTALL SOURCE OF CEPH
index 099a4080ee01841aa02b214a7e91b52dc99b0fb0..9f97f3c78157bfde3a03e3184f07e3602f02c74d 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index ce43e35d1b1717d539135d603cb3f20207bd03e5..d9b2582153da03ce18a179ff3e9dac525f00a6a5 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 443babdc533440ee7260ee0f2cf1aa9044900f53..8321f852e3fd3f743545096e287a8a3b4f125442 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index f6d232fce4b350ef6b05e04a059484a1c7fbf715..0a9b76f8ecb1b809e0f447f56f3d378902355b8d 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 311d03763f4fca31a94beec5b211c9137f7bfd1a..4d6507affdf295d46aa62afb4e4975a20837f57c 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 88f3d3bfa14d6b8b60713ef944181229c3078552..8866b1a5da3ed506618d2cbdbaebe6df89b1dee0 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 01b75ea07109963d301bf09b106ced6fde3901a2..6592d0c0344fb9a790e617c35e4aca5d7c2fb38a 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 50e8f4460653cee2a13540616d0320acbbc6c32c..8f4ce5460522cd39e974b56b1e88e8978a876682 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 7f48c415f47452056204c6a9f90f0e608232b96f..ee312ec6f3fbe06ccfaf9e36d20ba5bfdf88c2c6 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index c773ffac91658db61d72f447dbeb5610b5de6418..9f8c4474943a745c9f6ed42c0cc639838688b403 100644 (file)
@@ -8,7 +8,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index c0c2dd8627c802491634db950e41790715e52c50..fa75c7d795053fe09402beebb7f7cc83e3a8e103 100644 (file)
@@ -29,8 +29,5 @@ client1
 [rbdmirrors]
 rbd-mirror0
 
-[iscsigws]
-iscsi-gw0
-
 [monitoring]
 mon0
index aacdb5eaf1bbbee2beb7e3ba0cfad91d177ad8de..8e08daa9e12b928e024e13354087602efbbf5be5 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 2
-iscsi_gw_vms: 1
 mgr_vms: 1
 
 # SUBNETS TO USE FOR THE VMS
index d40e5a7d27f998d9fbd8e3f18e4b5a8189e9f231..aeb10eed6f485bd3a78b90f30e931a0980c5bc53 100644 (file)
@@ -29,8 +29,5 @@ client1
 [rbdmirrors]
 rbd-mirror0
 
-[iscsigws]
-iscsi-gw0
-
 [ceph_monitoring]
 mon0
index 5dcb513b4dee663f9769b22a9841dfe1233ec7d7..48653bbbb94c85c4cae4d5c7a9eabce093148ca3 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 2
-iscsi_gw_vms: 1
 mgr_vms: 1
 
 # INSTALL SOURCE OF CEPH
index 572b62e2e2710b6beaa47845c37b921cc192d86a..81cf5c2dc0f198c2a53161c78cb2daf7faf386e4 100644 (file)
@@ -29,8 +29,5 @@ client1
 [rbdmirrors]
 rbd-mirror0
 
-[iscsigws]
-iscsi-gw0
-
 [monitoring]
 mon0
index 46045eab3436e5dada6eeec4d5839b6e2fb107d4..de2cccc3bb4d9156c6108ad6aa106b612cb8ba2e 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 2
-iscsi_gw_vms: 1
 mgr_vms: 1
 
 # SUBNETS TO USE FOR THE VMS
index e625b8b97af3f199536e49c0a4b742b31d542acf..78b212478e00e46a8862f9377ba28fe52f4f26c0 100644 (file)
@@ -29,8 +29,5 @@ client1
 [rbdmirrors]
 rbd-mirror0
 
-[iscsigws]
-iscsi-gw0
-
 [ceph_monitoring]
 mon0
index a8e0085fd2dbd057c764c1b23f432e9d1ef9210d..b512776aff80b1c7a41957c182c75bffce5a34c5 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 2
-iscsi_gw_vms: 1
 mgr_vms: 1
 
 # INSTALL SOURCE OF CEPH
index d338d085ad3dac1e0bf4bed064f675dc1847db5c..28a105b30c09ad12cc5bd5675e72b8a641f900e4 100644 (file)
@@ -24,8 +24,5 @@ nfs0
 [rbdmirrors]
 rbd-mirror0
 
-[iscsigws]
-iscsi-gw0
-
 [monitoring]
 mon0
index d3d23246482423aae2069d5de80cd687d932d796..433e3196570fc1f90e9143b9cb6c2af25ca0a672 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 1
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 0
-iscsi_gw_vms: 1
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index fa3af879d43f97bd4daf1e337c70f4a1fbe82a6f..fb5059e96a2769f16f0ff177e2cba289c5ee1bf4 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index bde0433268c1b74f7b74816ae7ca8f5cfd0a2b0d..a53450e6fe0cbf44d2d8dde1f867648fe94e5343 100644 (file)
@@ -8,7 +8,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index b53fa2c8f2e536d7cb28bae1068a0106242cbf8e..921077308a1a4ebac1b7d661e3ca187533e1a02b 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index 75da987078fee401060bf7d03928f93eb7304023..4892f0d089456c29a923437928d2b3b88c1b45df 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 2
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index f5e2c53af8b9fc1d8307a0fadc0bbec0b3fff16d..827dcc928d6d67d27616e6d49ae9a96ba8c8ccfe 100644 (file)
@@ -8,7 +8,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 2
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index 317f215dea8f7af7c532e257730e2d1ecf8f434d..85e074d79058421ae3ca43af28b7b295dc6fdfa2 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index fe2e314bc54217a11c01908a49c15150dd3ee8f2..516e14c0a0665ffe465487b3c10344bf9117873e 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 0a0a86b9dbe29c3a6471f31df8b86368a678f58c..5bdaadfa01b052282f5e2a615f9a1fddad6c0f1c 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index f5d63d592b61e20be55407d36f94766bb3d66304..f53ba8280d1231766699fb76ccb6a814176727ad 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 0a0a86b9dbe29c3a6471f31df8b86368a678f58c..5bdaadfa01b052282f5e2a615f9a1fddad6c0f1c 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index a0c4d60bfa627fd0395da0b8fef839844c6954bd..d4418d89bdb027e3bd4e9e4003b17a112ef981bc 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 3c3360d328ea8f77bfb391b59688ee6a2b9a1318..b5d3089f28e5392df4731f7ab5efb8eeb9201906 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index dba68f14d243975e488dcbf450a60ab48e3f88eb..2603e244faee4b38d8038e0651c6fee7d71c9139 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 
index c9f246ef431438da0758ddedc4eecadef975d581..847591200dda9f90f9d30a87b9984d8eaf1f72cf 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 3
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index 5696037c5a847208a5474c5851ae8c340317557f..dea6a9e55f2644317078965c5c8a34e88d7dc595 100644 (file)
@@ -23,9 +23,6 @@ client1
 [rbdmirrors]
 rbd-mirror0
 
-[iscsigws]
-iscsi-gw0
-
 [monitoring]
 mon0
 
index fc6b42c03b4c7a989a1a3c2076185a8a4fcc4414..a4ff599bddfdc11deeedae855489550758b76d74 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 2
-iscsi_gw_vms: 1
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index 36687acd7206e747f918de05f5760e4f0fd6bb8d..2b0423c3b1879c31f0d2fc89967ac9cafdcd9460 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 4528b3629a7d3b655648ffef6f16458228743d5b..eee5c310e3d6d14ab8eeb5306473c815c626eedb 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 64e5ecbc805d57bf438e8c82f95675c0fac11fa2..2b8351686eebe3c388bf88390f6c19e77a94950d 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index ec7b83dc68a99cb101befbf25ede745c148037a4..105cad593c09b2075c759195c522b7c9d9719c42 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 31f731a5abbe808a120c98d5f29495bd38eb5c2c..4bcf2c529c6fee4c442839aa732ef9975ef0cfc5 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index c1b8f35ee1b472ac1535778b447f09aeee4f22ab..e0a7cf1a88021ae9d86deb3774fb3eef939d3414 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index a36398cd533b6fd7ce385cf05ebb5ed9a7d8fd6c..a26e726692a83c1683b5eab923ea7ce9633e3119 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 2
 
 # SUBNETS TO USE FOR THE VMS
index 09866acced028dd9a3e17417e372645c5a6b2a6d..90c50d27f0e0af3e2b28d7a3cb46780d13cbfbdd 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 2
 
 # INSTALL SOURCE OF CEPH
index ae9dd468d7f741a46a45cd8a5663746c40486e0b..d63a95a8dc775aca23c89dc02d756798e919a8ad 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index b7341e1904cc1cdff81b57f6d78103c06888c657..bf0038ad0b62b862f33ee36eb195ea9f45e5547d 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 29c36eed861f42a59c92d9e81f4a2e2784ff2c84..b69ecb35e3afdaddf141f36e92182d3dc4abac1b 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index 584c063e7d87c9472be8d096f2b0356017151526..7d7da7a99f6184c65859e9421d4881f6ac25c7ad 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 861fd39fd34b2593217e3267c4395438d10cfb19..2f16c370f838174e8aed076cf24fa73080650221 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index 7490626ccd8800160751d2427c93f345a538a21e..85f92045c65871c0037e3b2fdb4654283b1627fa 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 1
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 05dcd3d4ee1be25489d215ca0ca59ad064cb5cdb..b701d05b490a2a088a3ddc3a42e86462c888123c 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index 5f50c2b59b5d46f06a487862879aee8a5b99c9c9..41fb2f34624af042ad6cf921fb342104e3fcb06a 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
index 24f64fa23c4d0de0352c62790adb88bc7d4bce07..3419fc4e15909e8aeae2124d1cd4cbe3acdb2531 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS
index d1e2cff60855359f64ffe3f20fbcf639f162a9c6..c9105ddf37a2ff5146e982d384f350b44459e2e5 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # INSTALL SOURCE OF CEPH
diff --git a/tests/functional/tests/iscsi/__init__.py b/tests/functional/tests/iscsi/__init__.py
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/tests/functional/tests/iscsi/test_iscsi.py b/tests/functional/tests/iscsi/test_iscsi.py
deleted file mode 100644 (file)
index ec546fb..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-import pytest
-
-
-class TestiSCSIs(object):
-
-    @pytest.mark.no_docker
-    @pytest.mark.parametrize('pkg', [
-        'ceph-iscsi',
-        'targetcli',
-        'tcmu-runner'
-    ])
-    def test_iscsi_package_is_installed(self, node, host, pkg):
-        assert host.package(pkg).is_installed
-
-    @pytest.mark.parametrize('svc', [
-        'rbd-target-api',
-        'rbd-target-gw',
-        'tcmu-runner'
-    ])
-    def test_iscsi_service_enabled_and_running(self, node, host, svc):
-        s = host.service(svc)
-        assert s.is_enabled
-        assert s.is_running
index 136a805047069e9a45909508d6ee823a48e524c0..61620b9ebd8ceaad5a50257394dd74881843303c 100644 (file)
@@ -7,7 +7,6 @@ markers =
   no_docker: environment without containers
   docker: environment with containers
   all: for all nodes
-  iscsigws: for iscsigw nodes
   mdss: for mds nodes
   mgrs: for mgr nodes
   mons: for mon nodes
index 7fb67acafc3e6bbb930a4f8ed687e77a948b3f7a..376f3a58258899afbfeca7143df9a6bf4654ccbb 100644 (file)
@@ -12,7 +12,6 @@ nfs_vms: 0
 grafana_server_vms: 0
 rbd_mirror_vms: 0
 client_vms: 0
-iscsi_gw_vms: 0
 mgr_vms: 0
 
 # SUBNETS TO USE FOR THE VMS