diff --git a/lib/cli.py b/lib/cli.py
index 8b8b96c418b8a9f7fb8530a118517300d45f12c2..491c0092c58ea36b5df157ba73261237608ed604 100644
--- a/lib/cli.py
+++ b/lib/cli.py
@@ -81,8 +81,6 @@ __all__ = [
   "DST_NODE_OPT",
   "EARLY_RELEASE_OPT",
   "ENABLED_HV_OPT",
-  # FIXME: disable storage types once disk templates are fully implemented.
-  "ENABLED_STORAGE_TYPES_OPT",
   "ENABLED_DISK_TEMPLATES_OPT",
   "ERROR_CODES_OPT",
   "FAILURE_ONLY_OPT",
@@ -1167,13 +1165,6 @@ ENABLED_HV_OPT = cli_option("--enabled-hypervisors",
                             help="Comma-separated list of hypervisors",
                             type="string", default=None)
 
-# FIXME: Remove once enabled disk templates are fully implemented.
-ENABLED_STORAGE_TYPES_OPT = cli_option("--enabled-storage-types",
-                                       dest="enabled_storage_types",
-                                       help="Comma-separated list of "
-                                            "storage methods",
-                                       type="string", default=None)
-
 ENABLED_DISK_TEMPLATES_OPT = cli_option("--enabled-disk-templates",
                                         dest="enabled_disk_templates",
                                         help="Comma-separated list of "
diff --git a/lib/client/gnt_cluster.py b/lib/client/gnt_cluster.py
index 652b5f497c071e3eec899eaee525d61601806409..4183b9b45355669c2d99e016d596906625fe7956 100644
--- a/lib/client/gnt_cluster.py
+++ b/lib/client/gnt_cluster.py
@@ -457,8 +457,6 @@ def ShowClusterConfig(opts, args):
       ("OS search path", utils.CommaJoin(pathutils.OS_SEARCH_PATH)),
       ("ExtStorage Providers search path",
        utils.CommaJoin(pathutils.ES_SEARCH_PATH)),
-      ("enabled storage types",
-       utils.CommaJoin(result["enabled_storage_types"])),
       ("enabled disk templates",
        utils.CommaJoin(result["enabled_disk_templates"])),
       ]),
@@ -964,9 +962,6 @@ def SetClusterParams(opts, args):
           opts.use_external_mip_script is not None or
           opts.prealloc_wipe_disks is not None or
           opts.hv_state or
-          # FIXME: Remove 'enabled_storage_types' once 'enabled_disk_templates'
-          # are fully implemented.
-          opts.enabled_storage_types or
           opts.enabled_disk_templates or
           opts.disk_state or
           opts.ispecs_mem_size or
@@ -1000,11 +995,6 @@ def SetClusterParams(opts, args):
   if hvlist is not None:
     hvlist = hvlist.split(",")
 
-  # FIXME: Remove once 'enabled_disk_templates' are fully implemented.
-  enabled_storage_types = opts.enabled_storage_types
-  if enabled_storage_types is not None:
-    enabled_storage_types = enabled_storage_types.split(",")
-
   enabled_disk_templates = opts.enabled_disk_templates
   if enabled_disk_templates:
     enabled_disk_templates = enabled_disk_templates.split(",")
@@ -1100,8 +1090,6 @@ def SetClusterParams(opts, args):
     use_external_mip_script=ext_ip_script,
     hv_state=hv_state,
     disk_state=disk_state,
-    # FIXME: remove once 'enabled_disk_templates' are fully implemented.
-    enabled_storage_types=enabled_storage_types,
     enabled_disk_templates=enabled_disk_templates,
     )
   SubmitOrSend(op, opts)
@@ -1586,8 +1574,7 @@ commands = {
      DRBD_HELPER_OPT, NODRBD_STORAGE_OPT, DEFAULT_IALLOCATOR_OPT,
      RESERVED_LVS_OPT, DRY_RUN_OPT, PRIORITY_OPT, PREALLOC_WIPE_DISKS_OPT,
      NODE_PARAMS_OPT, USE_EXTERNAL_MIP_SCRIPT, DISK_PARAMS_OPT, HV_STATE_OPT,
-     DISK_STATE_OPT, SUBMIT_OPT, ENABLED_STORAGE_TYPES_OPT,
-     ENABLED_DISK_TEMPLATES_OPT] +
+     DISK_STATE_OPT, SUBMIT_OPT, ENABLED_DISK_TEMPLATES_OPT] +
     INSTANCE_POLICY_OPTS,
     "[opts...]",
     "Alters the parameters of the cluster"),
diff --git a/lib/cmdlib.py b/lib/cmdlib.py
index 29589dbe85431faaa8347d62bc81384f00f1878b..80282df551c26f767bbc0117c2b1e68c25ef40c4 100644
--- a/lib/cmdlib.py
+++ b/lib/cmdlib.py
@@ -4494,10 +4494,6 @@ class LUClusterSetParams(LogicalUnit):
     if self.op.enabled_hypervisors is not None:
       self.cluster.hvparams = self.new_hvparams
       self.cluster.enabled_hypervisors = self.op.enabled_hypervisors
-    # FIXME: remove once 'enabled_disk_templates' is fully implemented.
-    if self.op.enabled_storage_types is not None:
-      self.cluster.enabled_storage_types = \
-        list(set(self.op.enabled_storage_types))
     if self.op.enabled_disk_templates:
       self.cluster.enabled_disk_templates = \
         list(set(self.op.enabled_disk_templates))
diff --git a/lib/constants.py b/lib/constants.py
index 544f61f042fe18ae799a82b0c2161ec6159ccc05..70a9b623a23724a6824023b94cc7f9c618eea92c 100644
--- a/lib/constants.py
+++ b/lib/constants.py
@@ -393,11 +393,6 @@ VALID_STORAGE_TYPES = compat.UniqueFrozenset([
   ST_SHARED_FILE,
   ])
 
-# Per default, only lvm is enabled.
-DEFAULT_ENABLED_STORAGE_TYPES = compat.UniqueFrozenset([
-  ST_LVM_VG,
-  ])
-
 # Storage fields
 # first two are valid in LU context only, not passed to backend
 SF_NODE = "node"
diff --git a/lib/objects.py b/lib/objects.py
index 4cc4c0c0b20d63d2967aaac762fef11091b787b2..e9943857124bc360e4d750d1a18a755225ca293c 100644
--- a/lib/objects.py
+++ b/lib/objects.py
@@ -1541,9 +1541,6 @@ class Cluster(TaggableObject):
     "prealloc_wipe_disks",
     "hv_state_static",
     "disk_state_static",
-    # Keeping this in temporarily to not break the build between patches of
-    # this series. Remove after 'enabled_disk_templates' is fully implemented.
-    "enabled_storage_types",
     "enabled_disk_templates",
     ] + _TIMESTAMPS + _UUID
 
diff --git a/lib/opcodes.py b/lib/opcodes.py
index 0b7345ad90661805cdf5b9c4f50987aa445c743e..0978ee5b890a4d03ffa2b2a504e7627629b5b1c6 100644
--- a/lib/opcodes.py
+++ b/lib/opcodes.py
@@ -954,11 +954,6 @@ class OpClusterSetParams(OpCode):
      " ``%s`` or ``%s``" % (constants.DDM_ADD, constants.DDM_REMOVE)),
     ("use_external_mip_script", None, ht.TMaybeBool,
      "Whether to use an external master IP address setup script"),
-    # FIXME: remove once enabled disk templates are fully implemented.
-    ("enabled_storage_types", None,
-     ht.TMaybe(ht.TAnd(ht.TListOf(ht.TElemOf(constants.VALID_STORAGE_TYPES)),
-                       ht.TTrue)),
-     "List of enabled storage types"),
     ("enabled_disk_templates", None,
      ht.TMaybe(ht.TAnd(ht.TListOf(ht.TElemOf(constants.DISK_TEMPLATES)),
                        ht.TTrue)),
diff --git a/src/Ganeti/Objects.hs b/src/Ganeti/Objects.hs
index 2cb9984a2cb34640110b4785d06add0200b6ce86..046f496f81077db8f52b357d8a2348ab049ce382 100644
--- a/src/Ganeti/Objects.hs
+++ b/src/Ganeti/Objects.hs
@@ -706,9 +706,6 @@ $(buildObject "Cluster" "cluster" $
   , simpleField "primary_ip_family"       [t| IpFamily         |]
   , simpleField "prealloc_wipe_disks"     [t| Bool             |]
   , simpleField "ipolicy"                 [t| FilledIPolicy    |]
-  -- FIXME: Remove enabled storage types once enabled disk templates
-  -- is fully implemented.
-  , simpleField "enabled_storage_types"   [t| [StorageType]    |]
   , simpleField "enabled_disk_templates"  [t| [DiskTemplate]   |]
  ]
  ++ timeStampFields
diff --git a/src/Ganeti/OpCodes.hs b/src/Ganeti/OpCodes.hs
index a05c4984b855129caf03376696cbff802139b96f..8b4cda6664858ec44a52479b1006d811da1c5cbc 100644
--- a/src/Ganeti/OpCodes.hs
+++ b/src/Ganeti/OpCodes.hs
@@ -175,8 +175,6 @@ $(genOpCode "OpCode"
      , pHiddenOs
      , pBlacklistedOs
      , pUseExternalMipScript
-     -- FIXME: Remove once enabled disk templates are fully implemented.
-     , pEnabledStorageTypes
      , pEnabledDiskTemplates
      ])
   , ("OpClusterRedistConf", [])
diff --git a/src/Ganeti/OpParams.hs b/src/Ganeti/OpParams.hs
index 01765c6e897a0f2c3ce93ddb145cc75044f8be39..eb8f47c21ea61d57240e92caaff0bbbdeb37f10d 100644
--- a/src/Ganeti/OpParams.hs
+++ b/src/Ganeti/OpParams.hs
@@ -237,8 +237,6 @@ module Ganeti.OpParams
   , pDependencies
   , pComment
   , pReason
-  -- FIXME: Remove once enabled disk templates are fully implemented
-  , pEnabledStorageTypes
   , pEnabledDiskTemplates
   , dOldQuery
   , dOldQueryNoLocking
@@ -761,13 +759,6 @@ pEnabledHypervisors =
   optionalField $
   simpleField "enabled_hypervisors" [t| NonEmpty Hypervisor |]
 
--- | List of enabled storage methods.
--- FIXME: Remove once enabled disk templates are fully implemented.
-pEnabledStorageTypes :: Field
-pEnabledStorageTypes =
-  optionalField $
-  simpleField "enabled_storage_types" [t| NonEmpty StorageType |]
-
 -- | List of enabled disk templates.
 pEnabledDiskTemplates :: Field
 pEnabledDiskTemplates =
diff --git a/src/Ganeti/Query/Server.hs b/src/Ganeti/Query/Server.hs
index 8184091dcd05a591efcad641a70cc71a0316df22..3ab49b05915adfbe26af75d480e4007952ed27cf 100644
--- a/src/Ganeti/Query/Server.hs
+++ b/src/Ganeti/Query/Server.hs
@@ -87,7 +87,6 @@ handleCall :: ConfigData -> LuxiOp -> IO (ErrorResult JSValue)
 handleCall cdata QueryClusterInfo =
   let cluster = configCluster cdata
       hypervisors = clusterEnabledHypervisors cluster
-      storageTypes = clusterEnabledStorageTypes cluster
       diskTemplates = clusterEnabledDiskTemplates cluster
       def_hv = case hypervisors of
                  x:_ -> showJSON x
@@ -141,9 +140,6 @@ handleCall cdata QueryClusterInfo =
                showJSON $ clusterPreallocWipeDisks cluster)
             , ("hidden_os", showJSON $ clusterHiddenOs cluster)
             , ("blacklisted_os", showJSON $ clusterBlacklistedOs cluster)
-            -- FIXME: remove storage types once enabled disk templates are
-            -- fully implemented.
-            , ("enabled_storage_types", showJSON storageTypes)
             , ("enabled_disk_templates", showJSON diskTemplates)
             ]
 
diff --git a/test/hs/Test/Ganeti/OpCodes.hs b/test/hs/Test/Ganeti/OpCodes.hs
index 7a89f6a5e571cc0f64735202c0bdac5eccf5a492..17c68507732de5b166b254b1256c656e1b362112 100644
--- a/test/hs/Test/Ganeti/OpCodes.hs
+++ b/test/hs/Test/Ganeti/OpCodes.hs
@@ -163,8 +163,7 @@ instance Arbitrary OpCodes.OpCode where
           arbitrary <*> arbitrary <*> arbitrary <*>
           emptyMUD <*> emptyMUD <*> arbitrary <*>
           arbitrary <*> arbitrary <*> arbitrary <*> arbitrary <*>
-          arbitrary <*> arbitrary <*> arbitrary <*> arbitrary <*>
-          arbitrary
+          arbitrary <*> arbitrary <*> arbitrary <*> arbitrary
       "OP_CLUSTER_REDIST_CONF" -> pure OpCodes.OpClusterRedistConf
       "OP_CLUSTER_ACTIVATE_MASTER_IP" ->
         pure OpCodes.OpClusterActivateMasterIp