本人在centos7 的环境下部署,怎么在centos7 下配置静态 IP 关闭防火墙 以及安装jdk在这里不多赘述,

centos7 配置静态ip可以参考:https://www.cnblogs.com/braveym/p/8523100.html  和  https://www.cnblogs.com/braveym/p/9096402.html

Airflow 基础安装

1、默认自带python2环境,自行安装pip
  1. sudo yum -y install epel-release
  2. sudo yum -y install python-pip

2、进行pip的更新,否则很多安装会报错
  1. sudo pip install --upgrade pip
  2. sudo pip install --upgrade setuptools

3、安装开发库
  1. sudo yum install python-devel
  2. sudo yum install libevent-devel
  3. sudo yum install mysql-devel

4、安装centos7下的mysql

在安装mysql前建议先更新一下源,不然下载老失败

打开centos的yum文件夹(需要root权限或者拥有该目录的操作权限才可以)

输入命令cd  /etc/yum.repos.d

用wget下载repo文件

输入命令sudo wget  http://mirrors.aliyun.com/repo/Centos-7.repo(如果wget命令不生效,说明还没有安装wget工具,输入sudo yum -y install wget 回车进行安装)

备份系统原来的repo文件

  1. sudo mv CentOS-Base.repo CentOS-Base.repo.bak

替换系统原理的repo文件

  1. sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo

在更新源之前先把自带的mariadb删除,会报类似这样的错误

  1.  

  1. [bigdata@bigdata ~]$ rpm -qa|grep mariadb
  2. mariadb-libs-5.5.-.el7_5.x86_64
  3. [bigdata@bigdata ~]$ rpm -e --nodeps mariadb-libs-5.5.-.el7_5.x86_64
  4. error: can't create transaction lock on /var/lib/rpm/.rpm.lock (Permission denied)
  5. [bigdata@bigdata ~]$ sudo rpm -e --nodeps mariadb-libs-5.5.-.el7_5.x86_64
  6. [bigdata@bigdata ~]$ rpm -qa|grep mariadb
  7. [bigdata@bigdata ~]$

执行yum源更新命令

  1. sudo yum clean all
  2.  
  3. sudo yum makecache
  4.  
  5. sudo yum -y update (需要比较长的时间)

https://dev.mysql.com/downloads/mysql/下载mysql的离线安装包

下载完之后把包上传到集群

解压

把以上解压包每一个都安装一遍,但是,安装的时候建议安装顺序来,不要随便拿起一个就安装,不然会报这样的错误

所以建议按照下面的顺序进行安装

bigdata@bigdata mysql]$ sudo rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm
warning: mysql-community-common-5.7.27-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-common-5.7.27-1.e################################# [100%]
[bigdata@bigdata mysql]$ sudo rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm
warning: mysql-community-libs-5.7.27-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-libs-5.7.27-1.el7################################# [100%]
[bigdata@bigdata mysql]$ sudo rpm -ivh mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm
warning: mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-libs-compat-5.7.2################################# [100%]
[bigdata@bigdata mysql]$ sudo rpm -ivh mysql-community-embedded-compat-5.7.27-1.el7.x86_64.rpm
warning: mysql-community-embedded-compat-5.7.27-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-embedded-compat-5################################# [100%]
[bigdata@bigdata mysql]$ sudo rpm -ivh mysql-community-devel-5.7.27-1.el7.x86_64.rpm
warning: mysql-community-devel-5.7.27-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-devel-5.7.27-1.el################################# [100%]
[bigdata@bigdata mysql]$ sudo rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm
warning: mysql-community-client-5.7.27-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-client-5.7.27-1.e################################# [100%]
[bigdata@bigdata mysql]$ sudo rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm
warning: mysql-community-server-5.7.27-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-server-5.7.27-1.e################################# [100%]
[bigdata@bigdata mysql]$

先关闭mysql服务

修改MySql配置

skip-grant-tables #添加这句话,这时候登入mysql就不需要密码

启动mysql

  1. [bigdata@bigdata mysql]$ sudo systemctl start mysqld.service
  2. [bigdata@bigdata mysql]$ sudo systemctl status mysqld.service
  3. mysqld.service - MySQL Server
  4. Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
  5. Active: active (running) since Tue -- :: CST; 3s ago
  6. Docs: man:mysqld()
  7. http://dev.mysql.com/doc/refman/en/using-systemd.html
  8. Process: ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=/SUCCESS)
  9. Process: ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=/SUCCESS)
  10. Main PID: (mysqld)
  11. Tasks:
  12. CGroup: /system.slice/mysqld.service
  13. └─ /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
  14.  
  15. Aug :: bigdata systemd[]: Starting MySQL Server...
  16. Aug :: bigdata systemd[]: Started MySQL Server.

登录mysql,输入密码处直接回车就可以

5、初始化配置mysql,可以设定允许root远程登录

先通过root登录mysql,密码是刚刚给root用户设置的密码我这里是:Admin123!

Mysql默认不允许远程登录,我们需要设置下,并且防火墙开放3306端口;(备注 mysql5.7默认密码策略要求密码必须是大小写字母数字特殊字母的组合,至少8位)

  1. mysql> set password for root@localhost = password('Admin123!');
    ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
  2.  
  3. mysql> set password for root@localhost = password('Admin123!');
    Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> create user 'airflow'@'localhost' identified by 'Airflow123!';
Query OK, 0 rows affected (0.05 sec)

  1.  

mysql> grant all on airflow.* to 'airflow'@'%';
Query OK, 0 rows affected (0.02 sec)

  1.  
  2. mysql>  flush privileges;
    Query OK, 0 rows affected (0.00 sec)
  3.  
  4. mysql> quit;
    Bye

修改配置文件

设置MySql开机自启

  1. sudo systemctl enable mysqld

对于防火墙开启的情况下,就需要开发3306端口,我这里是把防火墙关闭

  1. [bigdata@bigdata mysql]$ sudo firewall-cmd --zone=public --add-port=/tcp --permanent
  2. FirewallD is not running
  3. [bigdata@bigdata mysql]$ sudo firewall-cmd --reload
  4. FirewallD is not running

6、配置Mysql默认编码为UTF-8

修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置

  1. character_set_server=utf8
  2. init_connect='SET NAMES utf8'

编辑保存完 重启mysql服务: sudo systemctl restart mysqld.service

查看下编码:

  1. [bigdata@bigdata mysql]$ mysql -u root -p
  2. Enter password:
  3. Welcome to the MySQL monitor. Commands end with ; or \g.
  4. Your MySQL connection id is
  5. Server version: 5.7. MySQL Community Server (GPL)
  6.  
  7. Copyright (c) , , Oracle and/or its affiliates. All rights reserved.
  8.  
  9. Oracle is a registered trademark of Oracle Corporation and/or its
  10. affiliates. Other names may be trademarks of their respective
  11. owners.
  12.  
  13. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  14.  
  15. mysql> show variables like '%character%';
  16. +--------------------------+----------------------------+
  17. | Variable_name | Value |
  18. +--------------------------+----------------------------+
  19. | character_set_client | utf8 |
  20. | character_set_connection | utf8 |
  21. | character_set_database | utf8 |
  22. | character_set_filesystem | binary |
  23. | character_set_results | utf8 |
  24. | character_set_server | utf8 |
  25. | character_set_system | utf8 |
  26. | character_sets_dir | /usr/share/mysql/charsets/ |
  27. +--------------------------+----------------------------+
  28. rows in set (0.01 sec)
  29.  
  30. mysql>

7、安装AirFlow

给airflow设置环境变量

sudo vim /etc/profile

  1. #airflow
  2. export AIRFLOW_HOME=/opt/modules/airflow
  3. export SLUGIFY_USES_TEXT_UNIDECODE=yes

是环境变量生效

安装airflow

  1. sudo pip install apache-airflow

可以看到出现以下错误

这样解决:

  1. sudo pip install six --user -U
  2. sudo pip install ipython --user -U
    sudo pip install --ignore-installed dnspython

sudo yum install python-devel

sudo yum install openldap-devel

sudo pip install --ignore-installed python-ldap

sudo pip install --ignore-installed enum34

前面的问题解决了,又开始新的问题

这个问题这样解决:

  1. sudo pip install --ignore-installed requests

最后再重新安装一次airflow,可以看到成功了

8、 设置mysql数据库连接

  1. sudo pip install apache-airflow[mysql]

创建airflow用户,创建airflow数据库并给出所有权限给此用户(注意在设置密码的时候还是前面讲的问题,不能太简单,否则不能通过)

  1. mysql> create database airflow;
  2. Query OK, row affected (0.00 sec)
  3.  
  4. mysql> create user 'airflow'@'%' identified by 'AirFlow123!';
  5. Query OK, rows affected (0.02 sec)
  6.  
  7. mysql> GRANT all privileges on airflow.* TO 'airflow'@'%' IDENTIFIED BY 'AirFlow123!';
  8. Query OK, rows affected, warning (0.01 sec)
  9.  
  10. mysql> FLUSH PRIVILEGES;
  11. Query OK, rows affected (0.00 sec)
修改airflow配置文件,指向数据库mysql
airflow.cfg 文件通常在~/airflow目录下

  1. executor = LocalExecutor
  2. sql_alchemy_conn = mysql://airflow:AirFlow123!@192.168.189.11/airflow
    对应字段解释如下: dialect+driver://username:password@host:port/database

修改mysql的配置文件

vim /etc/my.cnf

添加这一句

  1. explicit_defaults_for_timestamp=

重启mysql

9、初始化airflow并启动web服务

  1. sudo airflow initdb
  2. sudo airflow webserver
  3. sudo airflow scheduler
  4. sudo airflow worker

在浏览器打开地址 192.168.189.11:8080

Centos7 安装部署 Airflow的更多相关文章

  1. CentOS7安装部署zabbix3.4操作记录

    CentOS7安装部署zabbix3.4操作记录 1.安装前准备 1.1 查看centos的系统版本 [root@zabbix ~]# cat /etc/redhat-release CentOS L ...

  2. centos7 安装部署运行 Redis5

    原文:centos7 安装部署运行 Redis5 Redis5 下载与解压(官网: https://redis.io/download ) 下载命令:wget http://download.redi ...

  3. 容器centos7安装部署ansible

    容器centos7安装部署ansible centos镜像版本及ansible版本 centos:centos7.5.1804 ansible:2.9.11 启动容器并进入容器 docker run ...

  4. Centos7安装部署搭建gitlab平台、汉化

    Centos7安装部署搭建gitlab平台.汉化 安装环境要求:内存不要小于4G,否则后期web界面可能会报错 一.准备工作 1.1 查看系统版本 首先查询系统版本,下载Gitlab的对应版本 [ro ...

  5. centos7安装部署opentsdb2.4.0

    写在前面 安装HBase 在HBase中创建表结构 安装配置并启动opentsdb 写在前面 最近因为项目需要在读opentsdb的一部分源码,后面会做个小结分享出来.本人是不大喜欢写这种安装部署的文 ...

  6. centos7 安装部署 Jenkins

    Jenkins 安装部署 1. 安装资源下载 Jenkin镜像地址: http://mirrors.jenkins-ci.org/status.html 选择清华大学镜像地址下载rpm https:/ ...

  7. centos7安装部署SVN

      SVN介绍 SVN是个自由.开源的版本控制系统,绝大多数开源软件都使用SVN作为代码版本管理软件. SVN的官方网站http://subversion.apache.org/.目前SVN在开源社区 ...

  8. Centos7 安装部署Kubernetes(k8s)集群

    目录 一.系统环境 二.前言 三.Kubernetes 3.1 概述 3.2 Kubernetes 组件 3.2.1 控制平面组件 3.2.2 Node组件 四.安装部署Kubernetes集群 4. ...

  9. jumpserverv0.5.0 基于 CentOS7安装部署

    基于 CentOS 7 一步一步安装 Jumpserver 0.5.0 环境 系统: CentOS 7 IP: 192.168.244.144 关闭 selinux和防火墙 # CentOS 7 $ ...

随机推荐

  1. UTF-8 无 BOM

    [参考] UTF8最好不要带BOM,附许多经典评论 Visual Studio UTF-8 无 BOM 一站式解决办法https://blog.csdn.net/dolphin98629/articl ...

  2. js中Ajax工作原理(转)

    在写这篇文章之前,曾经写过一篇关于AJAX技术的随笔,不过涉及到的方面很窄,对AJAX技术的背景.原理.优缺点等各个方面都很少涉及null.这次写这篇文章的背景是因为公司需要对内部程序员做一个培训.项 ...

  3. 010_linuxC++之_运算符重载

    (一)运算符重载:运算符重载,就是对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型. (二)实现类不同对象里中变量的相加 (三)程序 #include <iostream> ...

  4. 51 Nod 1509 加长棒(巧妙的隔板法计数)

    1509 加长棒  题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题  收藏  关注 现在有三根木棒,他们的长度分别是a,b,c厘米 ...

  5. LA 6979 Known Notation 构造+贪心 铜牌题

    题意:给出一个字符串,有两种操作: 1.插入一个数字  2.交换两个字符   问最少多少步可以把该字符串变为一个后缀表达式(操作符只有*) #include <cstdio> #inclu ...

  6. Hadoop元数据备份与恢复方案

    Hadoop元数据备份与恢复方案 标签(空格分隔): Hadoop Namenode 备份策略: 周期性备份namenode.standby namenode的dfs.namenode.name.di ...

  7. Dubbo系列(一)dubbo的产生背景与原理概述

    一.Dubbo框架的产生背景        大规模服务化之前,应用只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过F5等硬件进行负载均衡. (1) ...

  8. Netfilter 之 五个钩子点

    概述 在协议栈的三层IPv4(IPv6还没看,不清楚)数据包的处理过程中,可能经过Netfilter的五个钩子点,分别为NF_INET_PRE_ROUTING.NF_INET_LOCAL_IN.NF_ ...

  9. Nginx之进程间的通信机制(Nginx频道)

    1. Nginx 频道 ngx_channel_t 频道是 Nginx master 进程与 worker 进程之间通信的常用工具,它是使用本机套接字实现的,即 socketpair 方法,它用于创建 ...

  10. Python 调用JS文件中的函数

    Python 调用JS文件中的函数 1.安装PyExecJS第三方库 2.导入库:import execjs 3.调用JS文件中的方法 Passwd = execjs.compile(open(r&q ...