Installation Process Apache Flink 1.18.1


Installation Process Apache Flink 1.18.1

Step 1 — Install Java 17 (Required for Flink 1.x)

sudo dnf install -y java-17-openjdk java-17-openjdk-devel

Download Apache Flink 1.18.1 (Correct link)

cd /opt 
sudo wget https://dlcdn.apache.org/flink/flink-1.18.1/flink-1.18.1-bin-scala_1.18.1.tgz

Extract Flink and move flink folder

Set Environment Variables

Start Flink Cluster

If CentOS firewall is active:

sudo firewall-cmd --add-port=8081/tcp --permanent
sudo firewall-cmd --reload

Check that Flink listens on 0.0.0.0

sudo nano flink/conf/config.yaml

Inside jobmanager tag bind-host will be 0.0.0.0

Restart Flink:

/opt/flink/bin/stop-cluster.sh
/opt/flink/bin/start-cluster.sh

Run the flink as a system deamon

Create a Flink system user

sudo useradd -r -m -d /opt/flink -s /bin/bash flink
sudo chown -R flink:flink /opt/flink

Create a systemd service file

Create the file:

sudo nano /etc/systemd/system/flink.service

Paste this service configuration:

[Unit]
Description=Apache Flink Cluster
After=network.target

[Service]
Type=forking
User=flink
Group=flink

# Modify if your Flink is in a different directory
Environment="FLINK_HOME=/opt/flink"
WorkingDirectory=/opt/flink

ExecStart=/opt/flink/bin/start-cluster.sh
ExecStop=/opt/flink/bin/stop-cluster.sh

Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

Reload systemd daemon

sudo systemctl daemon-reload

sudo systemctl enable flink

sudo systemctl start flink

sudo systemctl status flink

http://192.168.1.227:8081

Open firewall

sudo firewall-cmd --add-port=8081/tcp --permanent
sudo firewall-cmd --reload