diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7f1684596e4e93a20e299c81aacfc626a854b5e8..bea6402a5f87d9e37e4f5cd70fa6036c0856579a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -152,6 +152,12 @@ centos_7:
     OS: 'el'
     DIST: '7'
 
+centos_8:
+  <<: *deploy_test_definition
+  variables:
+    OS: 'el'
+    DIST: '8'
+
 fedora_28:
   <<: *deploy_test_definition
   variables:
diff --git a/.travis.yml b/.travis.yml
index f416ef83f60081d1b5eb794f2a80abe559510506..6ebaf1de2b6d52531e4cbdee86324e28cb536084 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -43,6 +43,9 @@ jobs:
       - name: "CentOS 7 build + test + deploy RPM"
         env: OS=el DIST=7
         if: branch = "2.2"
+      - name: "CentOS 8 build + test + deploy RPM"
+        env: OS=el DIST=8
+        if: branch = "2.2"
       - name: "Fedora 28 build + test + deploy RPM"
         env: OS=fedora DIST=28
         if: branch = "2.2"
diff --git a/rpm/tarantool.spec b/rpm/tarantool.spec
index b837214a6ae0f03c277cec6f675c6c58c65ae56c..edce3911542131383b87c97859fe5dbffc84bc98 100644
--- a/rpm/tarantool.spec
+++ b/rpm/tarantool.spec
@@ -44,7 +44,14 @@ Requires(preun): chkconfig
 Requires(preun): initscripts
 %endif
 
-%bcond_without backtrace # enabled by default
+%if 0%{?rhel} >= 8
+# gh-4611: Disable backtraces on CentOS 8 by default due to lack
+# of libunwind package in the base system.
+%bcond_with backtrace
+%else
+# Enable backtraces by default.
+%bcond_without backtrace
+%endif
 
 %if %{with backtrace}
 BuildRequires: libunwind-devel
@@ -63,12 +70,18 @@ BuildRequires: libunwind-devel
 %endif
 
 # For tests
-%if (0%{?fedora} >= 22 || 0%{?rhel} >= 7)
+%if (0%{?fedora} >= 22 || 0%{?rhel} == 7)
 BuildRequires: python >= 2.7
 BuildRequires: python-six >= 1.9.0
 BuildRequires: python-gevent >= 1.0
 BuildRequires: python-yaml >= 3.0.9
 %endif
+%if 0%{?rhel} >= 8
+BuildRequires: python2 >= 2.7
+BuildRequires: python2-six >= 1.9.0
+BuildRequires: python2-gevent >= 1.0
+BuildRequires: python2-yaml >= 3.0.9
+%endif
 
 Name: tarantool
 # ${major}.${major}.${minor}.${patch}, e.g. 1.6.8.175
diff --git a/test/app-tap/pwd.skipcond b/test/app-tap/pwd.skipcond
new file mode 100644
index 0000000000000000000000000000000000000000..cf97461bcbe3da88b55e02984792bb9dec3ea5b5
--- /dev/null
+++ b/test/app-tap/pwd.skipcond
@@ -0,0 +1,11 @@
+import subprocess
+
+# Disable the test on CentOS 8 until gh-4592 will be resolved.
+try:
+    cmd = ['rpm', '--eval', '%{centos_ver}']
+    if subprocess.check_output(cmd).strip() == '8':
+        self.skip = 1
+except:
+    pass
+
+# vim: set ft=python: