diff --git a/osm_lcm/ns.py b/osm_lcm/ns.py
index 0f5c6ab..dc69449 100644
--- a/osm_lcm/ns.py
+++ b/osm_lcm/ns.py
@@ -4126,8 +4126,6 @@
                                         timeout=self.timeout_charm_delete
                                     )
                                 )
-                                # wait before next removal
-                                await asyncio.sleep(30)
                                 tasks_dict_info[task] = "Terminating VCA {}".format(vca.get("ee_id"))
                                 del vca_update[vca_index]
                                 del config_update[vca_index]
@@ -4240,37 +4238,6 @@
                                 task_instantiation_info=tasks_dict_info,
                                 stage=stage
                             )
-                        # TODO: scaling for kdu is not implemented yet.
-                        kdu_name = vdu_info["osm_vdu_id"]
-                        descriptor_config = get_configuration(db_vnfd, kdu_name)
-                        if descriptor_config:
-                            vdu_id = None
-                            vdu_index = vdu_index
-                            vdu_name = None
-                            kdur = next(x for x in db_vnfr["kdur"] if x["kdu-name"] == kdu_name)
-                            deploy_params_kdu = {"OSM": get_osm_params(db_vnfr)}
-                            if kdur.get("additionalParams"):
-                                deploy_params_kdu = parse_yaml_strings(kdur["additionalParams"])
-
-                            self._deploy_n2vc(
-                                logging_text=logging_text,
-                                db_nsr=db_nsr,
-                                db_vnfr=db_vnfr,
-                                nslcmop_id=nslcmop_id,
-                                nsr_id=nsr_id,
-                                nsi_id=nsi_id,
-                                vnfd_id=vnfd_id,
-                                vdu_id=vdu_id,
-                                kdu_name=kdu_name,
-                                member_vnf_index=member_vnf_index,
-                                vdu_index=vdu_index,
-                                vdu_name=vdu_name,
-                                deploy_params=deploy_params_kdu,
-                                descriptor_config=descriptor_config,
-                                base_folder=base_folder,
-                                task_instantiation_info=tasks_dict_info,
-                                stage=stage
-                            )
             # SCALE-UP VCA - END
             scale_process = None
 
