diff --git a/README.md b/README.md
index 797731506..6430aca96 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,6 @@
+This repository is forked from https://github.com/ansible/ansible-examples and
+includes changes to the `lamp_simple` example in order to make it work with CentOS 8 servers.
+
Ansible Examples
----------------
diff --git a/lamp_simple/group_vars/all b/lamp_simple/group_vars/all
index 74ca4581c..541af4d82 100644
--- a/lamp_simple/group_vars/all
+++ b/lamp_simple/group_vars/all
@@ -2,5 +2,5 @@
# Variables listed here are applicable to all host groups
httpd_port: 80
-ntpserver: 192.168.1.2
+chronypool: 2.fedora.pool.ntp.org
repository: https://github.com/bennojoy/mywebapp.git
diff --git a/lamp_simple/roles/common/handlers/main.yml b/lamp_simple/roles/common/handlers/main.yml
index 89e2374fe..9e4aaa63a 100644
--- a/lamp_simple/roles/common/handlers/main.yml
+++ b/lamp_simple/roles/common/handlers/main.yml
@@ -4,5 +4,5 @@
- name: restart ntp
service:
- name: ntpd
+ name: chronyd
state: restarted
diff --git a/lamp_simple/roles/common/tasks/main.yml b/lamp_simple/roles/common/tasks/main.yml
index ceef3da09..0db7e2c4c 100644
--- a/lamp_simple/roles/common/tasks/main.yml
+++ b/lamp_simple/roles/common/tasks/main.yml
@@ -1,22 +1,22 @@
---
# This playbook contains common plays that will be run on all nodes.
-- name: Install ntp
+- name: Install chrony
yum:
- name: ntp
+ name: chrony
state: present
tags: ntp
-- name: Configure ntp file
+- name: Configure chrony file
template:
- src: ntp.conf.j2
- dest: /etc/ntp.conf
+ src: chrony.conf.j2
+ dest: /etc/chrony.conf
tags: ntp
notify: restart ntp
- name: Start the ntp service
service:
- name: ntpd
+ name: chronyd
state: started
enabled: yes
tags: ntp
diff --git a/lamp_simple/roles/common/templates/chrony.conf.j2 b/lamp_simple/roles/common/templates/chrony.conf.j2
new file mode 100644
index 000000000..06672ac42
--- /dev/null
+++ b/lamp_simple/roles/common/templates/chrony.conf.j2
@@ -0,0 +1,5 @@
+pool {{ chronypool }} iburst
+driftfile /var/lib/chrony/drift
+makestep 1.0 3
+rtcsync
+leapsectz right/UTC
diff --git a/lamp_simple/roles/common/templates/ntp.conf.j2 b/lamp_simple/roles/common/templates/ntp.conf.j2
deleted file mode 100644
index 6336c2ea3..000000000
--- a/lamp_simple/roles/common/templates/ntp.conf.j2
+++ /dev/null
@@ -1,12 +0,0 @@
-
-driftfile /var/lib/ntp/drift
-
-restrict 127.0.0.1
-restrict -6 ::1
-
-server {{ ntpserver }}
-
-includefile /etc/ntp/crypto/pw
-
-keys /etc/ntp/keys
-
diff --git a/lamp_simple/roles/db/handlers/main.yml b/lamp_simple/roles/db/handlers/main.yml
index 43e3c9a5d..1cd1ec809 100644
--- a/lamp_simple/roles/db/handlers/main.yml
+++ b/lamp_simple/roles/db/handlers/main.yml
@@ -6,7 +6,7 @@
name: mysqld
state: restarted
-- name: restart iptables
+- name: restart firewalld
service:
- name: iptables
+ name: firewalld
state: restarted
diff --git a/lamp_simple/roles/db/tasks/main.yml b/lamp_simple/roles/db/tasks/main.yml
index 2afc4061c..7498419b7 100644
--- a/lamp_simple/roles/db/tasks/main.yml
+++ b/lamp_simple/roles/db/tasks/main.yml
@@ -6,10 +6,10 @@
name: "{{ item }}"
state: installed
with_items:
- - mysql-server
- - MySQL-python
- - libselinux-python
- - libsemanage-python
+ - mysql-server
+ - python3-mysql
+ - python3-libselinux
+ - python3-libsemanage
- name: Configure SELinux to start mysql on any port
seboolean:
@@ -33,12 +33,12 @@
- name: insert iptables rule
lineinfile:
- dest: /etc/sysconfig/iptables
+ dest: /etc/firewalld/zones/public.xml
state: present
- regexp: "{{ mysql_port }}"
- insertafter: "^:OUTPUT "
- line: "-A INPUT -p tcp --dport {{ mysql_port }} -j ACCEPT"
- notify: restart iptables
+ regexp: 'port="{{ mysql_port }}".*protocol="tcp"'
+ insertbefore: "^"
+ line: ' '
+ notify: restart firewalld
- name: Create Application Database
mysql_db:
diff --git a/lamp_simple/roles/web/handlers/main.yml b/lamp_simple/roles/web/handlers/main.yml
index 52ef3c90d..25effcd02 100644
--- a/lamp_simple/roles/web/handlers/main.yml
+++ b/lamp_simple/roles/web/handlers/main.yml
@@ -2,7 +2,7 @@
# Handler for the webtier: handlers are called by other plays.
# See http://docs.ansible.com/playbooks_intro.html for more information about handlers.
-- name: restart iptables
+- name: restart firewalld
service:
- name: iptables
+ name: firewalld
state: restarted
diff --git a/lamp_simple/roles/web/tasks/install_httpd.yml b/lamp_simple/roles/web/tasks/install_httpd.yml
index 4de593d95..ac77ad969 100644
--- a/lamp_simple/roles/web/tasks/install_httpd.yml
+++ b/lamp_simple/roles/web/tasks/install_httpd.yml
@@ -1,27 +1,26 @@
---
# These tasks install http and the php modules.
-- name: Install http and php etc
+- name: Install httpd and php etc
yum:
name: "{{ item }}"
state: present
with_items:
- - httpd
- - php
- - php-mysql
- - git
- - libsemanage-python
- - libselinux-python
+ - httpd
+ - php
+ - php-mysqlnd
+ - git
+ - python3-libsemanage
+ - python3-libselinux
- name: insert iptables rule for httpd
lineinfile:
- dest: /etc/sysconfig/iptables
- create: yes
+ dest: /etc/firewalld/zones/public.xml
state: present
- regexp: "{{ httpd_port }}"
- insertafter: "^:OUTPUT "
- line: "-A INPUT -p tcp --dport {{ httpd_port }} -j ACCEPT"
- notify: restart iptables
+ regexp: 'port="{{ httpd_port }}".*protocol="tcp"'
+ insertbefore: "^"
+ line: ' '
+ notify: restart firewalld
- name: http service state
service: