diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/multinode-default.json b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/multinode-default.json
new file mode 100644
index 00000000000..b819d7723dc
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/multinode-default.json
@@ -0,0 +1,107 @@
+{
+ "configurations": [
+ ],
+ "host_groups": [
+ {
+ "name": "master_1",
+ "components": [
+ {
+ "name": "NAMENODE"
+ },
+ {
+ "name": "ZOOKEEPER_SERVER"
+ },
+ {
+ "name": "HDFS_CLIENT"
+ },
+ {
+ "name": "YARN_CLIENT"
+ }
+ ],
+ "cardinality": "1"
+ },
+ {
+ "name": "master_2",
+ "components": [
+ {
+ "name": "ZOOKEEPER_CLIENT"
+ },
+ {
+ "name": "HISTORYSERVER"
+ },
+ {
+ "name": "SECONDARY_NAMENODE"
+ },
+ {
+ "name": "HDFS_CLIENT"
+ },
+ {
+ "name": "YARN_CLIENT"
+ },
+ {
+ "name": "POSTGRESQL_SERVER"
+ }
+ ],
+ "cardinality": "1"
+ },
+ {
+ "name": "master_3",
+ "components": [
+ {
+ "name": "RESOURCEMANAGER"
+ },
+ {
+ "name": "ZOOKEEPER_SERVER"
+ }
+ ],
+ "cardinality": "1"
+ },
+ {
+ "name": "master_4",
+ "components": [
+ {
+ "name": "ZOOKEEPER_SERVER"
+ }
+ ],
+ "cardinality": "1"
+ },
+ {
+ "name": "slave",
+ "components": [
+ {
+ "name": "NODEMANAGER"
+ },
+ {
+ "name": "DATANODE"
+ }
+ ],
+ "cardinality": "${slavesCount}"
+ },
+ {
+ "name": "gateway",
+ "components": [
+ {
+ "name": "AMBARI_SERVER"
+ },
+ {
+ "name": "ZOOKEEPER_CLIENT"
+ },
+ {
+ "name": "HDFS_CLIENT"
+ },
+ {
+ "name": "YARN_CLIENT"
+ },
+ {
+ "name": "MAPREDUCE2_CLIENT"
+ }
+ ],
+ "cardinality": "1"
+ }
+ ],
+ "Blueprints": {
+ "blueprint_name": "blueprint-multinode-default",
+ "stack_name": "BIGTOP",
+ "stack_version": "3.4.0"
+ }
+}
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/singlenode-default.json b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/singlenode-default.json
new file mode 100644
index 00000000000..5b51027fcb6
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/singlenode-default.json
@@ -0,0 +1,65 @@
+{
+ "configurations": [
+ ],
+ "host_groups": [
+ {
+ "name": "host_group_1",
+ "components": [
+ {
+ "name": "HISTORYSERVER"
+ },
+ {
+ "name": "NAMENODE"
+ },
+ {
+ "name": "SUPERVISOR"
+ },
+ {
+ "name": "AMBARI_SERVER"
+ },
+ {
+ "name": "APP_TIMELINE_SERVER"
+ },
+ {
+ "name": "HDFS_CLIENT"
+ },
+ {
+ "name": "NODEMANAGER"
+ },
+ {
+ "name": "DATANODE"
+ },
+ {
+ "name": "RESOURCEMANAGER"
+ },
+ {
+ "name": "ZOOKEEPER_SERVER"
+ },
+ {
+ "name": "ZOOKEEPER_CLIENT"
+ },
+ {
+ "name": "SECONDARY_NAMENODE"
+ },
+ {
+ "name": "YARN_CLIENT"
+ },
+ {
+ "name": "MAPREDUCE2_CLIENT"
+ },
+ {
+ "name": "POSTGRESQL_SERVER"
+ },
+ {
+ "name": "DRPC_SERVER"
+ }
+ ],
+ "cardinality": "1"
+ }
+ ],
+ "Blueprints": {
+ "blueprint_name": "blueprint-singlenode-default",
+ "stack_name": "BIGTOP",
+ "stack_version": "3.4.0"
+ }
+}
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/metainfo.xml
new file mode 100644
index 00000000000..833c3d68ba7
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/metainfo.xml
@@ -0,0 +1,23 @@
+
+
+
+
+ true
+
+ 3.3.0
+
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/repos/repoinfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/repos/repoinfo.xml
new file mode 100644
index 00000000000..0acd9165216
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/repos/repoinfo.xml
@@ -0,0 +1,40 @@
+
+
+
+
+
+ https://bigtop-snapshot.s3.amazonaws.com/centos-8/$basearch
+ BIGTOP-3.4.0
+ bigtop
+
+
+
+
+ https://bigtop-snapshot.s3.amazonaws.com/centos-9/$basearch
+ BIGTOP-3.4.0
+ bigtop
+
+
+
+
+ https://bigtop-snapshot.s3.amazonaws.com/openeuler-22/$basearch
+ BIGTOP-3.4.0
+ bigtop
+
+
+
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/role_command_order.json b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/role_command_order.json
new file mode 100644
index 00000000000..6f26c217d32
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/role_command_order.json
@@ -0,0 +1,193 @@
+{
+ "_comment": "Record format:",
+ "_comment": "blockedRole-blockedCommand: [blockerRole1-blockerCommand1, blockerRole2-blockerCommand2, ...]",
+ "general_deps": {
+ "_comment": "dependencies for all cases",
+ "HBASE_MASTER-START": [
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "HBASE_REGIONSERVER-START": [
+ "HBASE_MASTER-START"
+ ],
+ "APP_TIMELINE_SERVER-START": [
+ "NAMENODE-START",
+ "DATANODE-START"
+ ],
+ "WEBHCAT_SERVER-START": [
+ "NODEMANAGER-START",
+ "HIVE_SERVER-START"
+ ],
+ "WEBHCAT_SERVER-RESTART": [
+ "NODEMANAGER-RESTART",
+ "HIVE_SERVER-RESTART"
+ ],
+ "HIVE_METASTORE-START": [
+ "MYSQL_SERVER-START",
+ "NAMENODE-START"
+ ],
+ "HIVE_METASTORE-RESTART": [
+ "MYSQL_SERVER-RESTART",
+ "NAMENODE-RESTART"
+ ],
+ "HIVE_SERVER-START": [
+ "NODEMANAGER-START",
+ "MYSQL_SERVER-START"
+ ],
+ "HIVE_SERVER-RESTART": [
+ "NODEMANAGER-RESTART",
+ "MYSQL_SERVER-RESTART",
+ "ZOOKEEPER_SERVER-RESTART"
+ ],
+ "MAPREDUCE_SERVICE_CHECK-SERVICE_CHECK": [
+ "NODEMANAGER-START",
+ "RESOURCEMANAGER-START"
+ ],
+ "HBASE_SERVICE_CHECK-SERVICE_CHECK": [
+ "HBASE_MASTER-START",
+ "HBASE_REGIONSERVER-START"
+ ],
+ "HIVE_SERVICE_CHECK-SERVICE_CHECK": [
+ "HIVE_SERVER-START",
+ "HIVE_METASTORE-START",
+ "WEBHCAT_SERVER-START"
+ ],
+ "ZOOKEEPER_SERVICE_CHECK-SERVICE_CHECK": [
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "ZOOKEEPER_QUORUM_SERVICE_CHECK-SERVICE_CHECK": [
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "ZOOKEEPER_SERVER-STOP": [
+ "HBASE_MASTER-STOP",
+ "HBASE_REGIONSERVER-STOP",
+ "METRICS_COLLECTOR-STOP",
+ "SOLR_SERVER-STOP"
+ ],
+ "HBASE_MASTER-STOP": [
+ "HBASE_REGIONSERVER-STOP"
+ ],
+ "SOLR_SERVER-START": [
+ "ZOOKEEPER_SERVER-START"
+ ]
+ },
+ "_comment": "GLUSTERFS-specific dependencies",
+ "optional_glusterfs": {
+ "HBASE_MASTER-START": [
+ "PEERSTATUS-START"
+ ],
+ "GLUSTERFS_SERVICE_CHECK-SERVICE_CHECK": [
+ "PEERSTATUS-START"
+ ]
+ },
+ "_comment": "Dependencies that are used when GLUSTERFS is not present in cluster",
+ "optional_no_glusterfs": {
+ "METRICS_COLLECTOR-START": [
+ "NAMENODE-START",
+ "DATANODE-START",
+ "SECONDARY_NAMENODE-START",
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "AMBARI_METRICS_SERVICE_CHECK-SERVICE_CHECK": [
+ "METRICS_COLLECTOR-START",
+ "HDFS_SERVICE_CHECK-SERVICE_CHECK"
+ ],
+ "SECONDARY_NAMENODE-START": [
+ "NAMENODE-START"
+ ],
+ "SECONDARY_NAMENODE-RESTART": [
+ "NAMENODE-RESTART"
+ ],
+ "RESOURCEMANAGER-START": [
+ "NAMENODE-START",
+ "DATANODE-START"
+ ],
+ "NODEMANAGER-START": [
+ "NAMENODE-START",
+ "DATANODE-START",
+ "RESOURCEMANAGER-START"
+ ],
+ "HISTORYSERVER-START": [
+ "NAMENODE-START",
+ "DATANODE-START"
+ ],
+ "HBASE_MASTER-START": [
+ "NAMENODE-START",
+ "DATANODE-START"
+ ],
+ "HIVE_SERVER-START": [
+ "DATANODE-START"
+ ],
+ "WEBHCAT_SERVER-START": [
+ "DATANODE-START"
+ ],
+ "HISTORYSERVER-RESTART": [
+ "NAMENODE-RESTART"
+ ],
+ "RESOURCEMANAGER-RESTART": [
+ "NAMENODE-RESTART"
+ ],
+ "NODEMANAGER-RESTART": [
+ "NAMENODE-RESTART"
+ ],
+ "HDFS_SERVICE_CHECK-SERVICE_CHECK": [
+ "NAMENODE-START",
+ "DATANODE-START",
+ "SECONDARY_NAMENODE-START"
+ ],
+ "MAPREDUCE2_SERVICE_CHECK-SERVICE_CHECK": [
+ "NODEMANAGER-START",
+ "RESOURCEMANAGER-START",
+ "HISTORYSERVER-START",
+ "YARN_SERVICE_CHECK-SERVICE_CHECK"
+ ],
+ "YARN_SERVICE_CHECK-SERVICE_CHECK": [
+ "NODEMANAGER-START",
+ "RESOURCEMANAGER-START"
+ ],
+ "RESOURCEMANAGER_SERVICE_CHECK-SERVICE_CHECK": [
+ "RESOURCEMANAGER-START"
+ ],
+ "NAMENODE-STOP": [
+ "RESOURCEMANAGER-STOP",
+ "NODEMANAGER-STOP",
+ "HISTORYSERVER-STOP",
+ "HBASE_MASTER-STOP",
+ "METRICS_COLLECTOR-STOP"
+ ],
+ "DATANODE-STOP": [
+ "RESOURCEMANAGER-STOP",
+ "NODEMANAGER-STOP",
+ "HISTORYSERVER-STOP",
+ "HBASE_MASTER-STOP"
+ ],
+ "METRICS_GRAFANA-START": [
+ "METRICS_COLLECTOR-START"
+ ],
+ "METRICS_COLLECTOR-STOP": [
+ "METRICS_GRAFANA-STOP"
+ ]
+ },
+ "_comment": "Dependencies that are used in HA NameNode cluster",
+ "namenode_optional_ha": {
+ "NAMENODE-START": [
+ "ZKFC-START",
+ "JOURNALNODE-START",
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "ZKFC-START": [
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "ZKFC-STOP": [
+ "NAMENODE-STOP"
+ ],
+ "JOURNALNODE-STOP": [
+ "NAMENODE-STOP"
+ ]
+ },
+ "_comment": "Dependencies that are used in ResourceManager HA cluster",
+ "resourcemanager_optional_ha": {
+ "RESOURCEMANAGER-START": [
+ "ZOOKEEPER_SERVER-START"
+ ]
+ }
+}
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI-METRICS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI-METRICS/metainfo.xml
new file mode 100644
index 00000000000..3ed06306738
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI-METRICS/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ AMBARI_METRICS
+ common-services/AMBARI_METRICS/3.0.0
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI_INFRA_SOLR/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI_INFRA_SOLR/metainfo.xml
new file mode 100644
index 00000000000..a2f36a0b661
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI_INFRA_SOLR/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ AMBARI_INFRA_SOLR
+ common-services/AMBARI_INFRA_SOLR/3.0.0
+
+
+
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/FLINK/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/FLINK/metainfo.xml
new file mode 100644
index 00000000000..fc3d69d656e
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/FLINK/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ FLINK
+ 1.20.0-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HBASE/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HBASE/metainfo.xml
new file mode 100644
index 00000000000..7e275e7eef7
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HBASE/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ HBASE
+ 2.6.1-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HDFS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HDFS/metainfo.xml
new file mode 100644
index 00000000000..d9d3812ec0e
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HDFS/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ HDFS
+ 3.3.6-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HIVE/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HIVE/metainfo.xml
new file mode 100644
index 00000000000..31a55ab7467
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HIVE/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ HIVE
+ 4.0.1-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KAFKA/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KAFKA/metainfo.xml
new file mode 100644
index 00000000000..d59a8a5bd29
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KAFKA/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ KAFKA
+ 3.4.1-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KERBEROS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KERBEROS/metainfo.xml
new file mode 100644
index 00000000000..9fc0894207e
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KERBEROS/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ KERBEROS
+ 1.10.3-30
+
+
+
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/LIVY/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/LIVY/metainfo.xml
new file mode 100644
index 00000000000..608b26b83cd
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/LIVY/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ LIVY
+ 0.8.0-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER/metainfo.xml
new file mode 100644
index 00000000000..8612150434d
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ RANGER
+ 2.5.0-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER_KMS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER_KMS/metainfo.xml
new file mode 100644
index 00000000000..966a20c85cf
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER_KMS/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ RANGER_KMS
+ 2.5.0-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SOLR/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SOLR/metainfo.xml
new file mode 100644
index 00000000000..2b9a064c5d6
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SOLR/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ SOLR
+ 8.11.4-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SPARK/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SPARK/metainfo.xml
new file mode 100644
index 00000000000..8e48df27d4f
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SPARK/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ SPARK
+ 3.5.3-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/TEZ/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/TEZ/metainfo.xml
new file mode 100644
index 00000000000..a2475af4a74
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/TEZ/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ TEZ
+ Tez
+ 0.10.4-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/YARN/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/YARN/metainfo.xml
new file mode 100644
index 00000000000..0718d496967
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/YARN/metainfo.xml
@@ -0,0 +1,31 @@
+
+
+
+
+ 2.0
+
+
+ YARN
+ 3.3.6-1
+
+
+ MAPREDUCE2
+ 3.3.6-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZEPPELIN/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZEPPELIN/metainfo.xml
new file mode 100644
index 00000000000..0d2c4d0035f
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZEPPELIN/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ ZEPPELIN
+ 0.11.2-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZOOKEEPER/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZOOKEEPER/metainfo.xml
new file mode 100644
index 00000000000..6788d9d230c
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZOOKEEPER/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ ZOOKEEPER
+ 3.8.4-1
+
+
+