【centos】vmware安装airflow流程

文章目录

    • 1.下载系统https://mirrors.aliyun.com/centos/7/isos/x86_64/ 选择DVD2009
    • 2.在VMware中,除了修改安装位置,其它选择默认安装centos7
    • 3.用户名为root,登录
    • 4.网络适配器为桥接模式。
    • 5.使用命令消除显示器警告。
    • 6.安装anaconda
      • 6.1下载包:
      • 6.2授予安装包权限并安装
    • 7.取消默认进入base命令
    • 8.换源
    • 9.安装airflow
    • 10.启动
    • 11.创建用户
    • 12.启停脚本
    • 13.安装mysql。
    • 14.更改mysql为airflow的数据库
    • 15.查看dags_folder = /root/airflow/dags

1.下载系统https://mirrors.aliyun.com/centos/7/isos/x86_64/ 选择DVD2009

2.在VMware中,除了修改安装位置,其它选择默认安装centos7

3.用户名为root,登录

4.网络适配器为桥接模式。

5.使用命令消除显示器警告。

出现了“WARNING! The remote SSH server rejected X11 forwarding request.”,意思是“远程SSH服务器拒绝X11转发请求。

yum install xorg-x11-xauth -y 

6.安装anaconda

6.1下载包:

wget https://repo.anaconda.com/archive/Anaconda3-5.3.0-Linux-x86_64.sh

如果wget 命令不存在,先安装wget

yum install wget -y

6.2授予安装包权限并安装

chmod +x Anaconda3-5.3.0-Linux-x86_64.sh
./Anaconda3-5.3.0-Linux-x86_64.sh

缺少依赖安装依赖

yum install -y bzip2

查看隐藏文件

ls -al

末尾配置环境变量并更新

export PATH=/root/anaconda3/bin:$PATH
source ~/.bashrc

查看命令执行成功没

conda -V

7.取消默认进入base命令

conda config --set auto_activate_base false

上面的失败了,在vi ~/.bashrc后输入

source activate airflow

8.换源

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/conda config --set show_channel_urls yespip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

文件所在/root/.config/pip/pip.conf

conda config --remove channels defaults  ## 移除默认源
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/noarchhttps://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarchhttps://repo.anaconda.com/pkgs/main/linux-64https://repo.anaconda.com/pkgs/main/noarchhttps://repo.anaconda.com/pkgs/free/linux-64https://repo.anaconda.com/pkgs/free/noarchhttps://repo.anaconda.com/pkgs/r/linux-64https://repo.anaconda.com/pkgs/r/noarchhttps://repo.anaconda.com/pkgs/pro/linux-64https://repo.anaconda.com/pkgs/pro/noarch

9.安装airflow

conda create -n af python==3.8.12

pip install apache-airflow
airflow db init

google-re2安装失败时

pip install google-re2==1.0

10.启动

airflow webserver -p 8080 -D

关闭防火墙

systemctl stop firewalld

参考的https://blog.csdn.net/xiaoyaGrace/article/details/105701852

访问端口

http://192.168.251.113:8080/

11.创建用户

airflow users  create --role Admin --username admin --email admin --firstname admin --lastname admin --password 7758

启动定时任务示例

airflow scheduler -D

12.启停脚本

#!/bin/bash
case $1 in
"start"){echo " --------启动 airflow-------"ssh 192.168.251.113 "conda activate af;airflow webserver -p 8080 -D;airflow scheduler -D;conda deactivate"
};;
"stop"){echo " --------关闭 airflow-------"ps -ef|egrep 'scheduler|airflow-webserver'|grep -v grep|awk '{print $2}'|xargs kill -15
};;
esac

13.(已舍弃,往下看新的)安装mysql。

下载mysql57 mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

解压移动到local改名

tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 
mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/
mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql

创建 用户,并给数据目录赋予权限

groupadd mysql
useradd -r -g mysql mysqlcd /
mkdir -p data
cd data/
mkdir -p mysql```
chown mysql:mysql -R /data/mysql

配置参数

vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0

初始化mysql

cd /usr/local/mysql/bin/./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

启动mysql,并更改root 密码

service mysql start

找不到mysql命令

 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqlln -s /usr/local/mysql/bin/mysql /usr/bin

检测启动

ps -ef|grep mysql

更改密码

cd /usr/local/mysql/binmysql -u root -p
SET PASSWORD = PASSWORD('1234');ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;flush privileges;

如果密码错误,出现ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)。请检查密码

关闭mysql

quit
service mysql stop

14.更改mysql为数据库


pip install mysqlclient==2.0.2

如果出错,手动下载,更改出错的代码,手动安装https://blog.csdn.net/qingdaoyin/article/details/111227604


pip install  pymysql mysql

设置时间戳可为null。并且位置不能配置错,在[mysqld]、[mysqld_safe]之间,最好在[mysqld_safe]前一格

vi /etc/my.cnf
explicit_defaults_for_timestamp=1

连接navicat出错1130,修改host访问权限为所有ip。https://blog.csdn.net/dabao87/article/details/80571877

连接navicat出错2002,关闭防火墙service firewalld stop。https://blog.csdn.net/xiaoyaGrace/article/details/105701852

修改airflow连接数据库的配置。

#修改配置文件。原文链接:https://blog.csdn.net/java31/article/details/121868003

vi /home/san/airflow/airflow.cfg
executor = LocalExecutor
sql_alchemy_conn = mysql://airflow:xxxxxxxx@localhost:3306/airflow?charset=utf8
sql_engine_encoding = utf-8

创建数据库airflow_db

CREATE DATABASE IF NOT EXISTS airflow_db DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

初始化数据库

airflow db init

出错,提示ModuleNotFoundError: No module named ‘MySQLdb’。表示没有客户端
pip 安装失败,因为Exception: Can not find valid pkg-config name.
使用conda安装,可以自动解决依赖问题。

conda install conda install mysqlclient

重新初始化后airflow db init。提示2002找不到文件/tmp/mysql.sock。2002, “Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)”
全局查找文件:

find / -iname  mysql.sock

创建软连接。

ln -s /var/lib/mysql/mysql.sock /tmp/

重新创建用户

airflow users  create --role Admin --username admin --email admin --firstname admin --lastname admin --password 7758

13.安装mysql。

参考https://www.bilibili.com/video/BV1mm411y7RS/
启动安装脚本(需要先授权)。查看脚本可知,帮我们改host为%可以连接了mysql,创建了用户root和密码为root.

chmod -R 777 MySQL
cd MySQL
./install.sh

14.更改mysql为airflow的数据库

【mysql】设置时间戳可为null。并且位置不能配置错,在[mysqld]、[mysqld_safe]之间,最好在[mysqld_safe]前一格

vi /etc/my.cnf
explicit_defaults_for_timestamp=1

永久关闭防火墙,使用navicat创建数据库airflow_db给airflow使用。

vi /root/.bashrc
service firewalld stop
CREATE DATABASE IF NOT EXISTS airflow_db DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

【airflow】配置更改数据库,更改多线程无序执行。#修改配置文件。原文链接:https://blog.csdn.net/java31/article/details/121868003

vi /home/san/airflow/airflow.cfg
executor = LocalExecutor
sql_alchemy_conn = mysql://root:root@localhost:3306/airflow_db?charset=utf8
sql_engine_encoding = utf-8

初始化数据库

airflow db init

出错,提示ModuleNotFoundError: No module named ‘MySQLdb’。表示没有客户端
pip 安装失败,因为Exception: Can not find valid pkg-config name.
使用conda安装,可以自动解决依赖问题。

conda install conda install mysqlclient

重新初始化后airflow db init。提示2002找不到文件/tmp/mysql.sock。2002, “Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)”
全局查找文件:

find / -iname  mysql.sock

创建软连接。

ln -s /var/lib/mysql/mysql.sock /tmp/

重新创建用户

airflow users  create --role Admin --username admin --email admin --firstname admin --lastname admin --password 7758

15.查看dags_folder = /root/airflow/dags

创建目录

mkdir /root/airflow/dags

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/6749.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业计算机服务器中了halo勒索病毒怎么处理,halo勒索病毒解密流程

随着网络技术的不断发展,网络在企业生产运营过程中发挥着重大作用,很多企业利用网络开展各项工作业务,网络也大大提高了企业的生产效率,但随之而来的网络数据安全问题成为众多企业关心的主要话题。近日,云天数据恢复中…

50个前端实战项目之04:隐藏的搜索小组件

大家好,我是宝哥。 今天讲50个前端实战项目之04:隐藏的搜索小组件。 源码下载地址 https://github.com/bradtraversy/50projects50days/tree/master/hidden-search 前端实战项目系列正在更新:04/50 01:可展开卡片02:进…

按键精灵纯本地离线文字识别插件

目的 按键精灵是一款可以模拟鼠标和键盘操作的自动化工具。它可以帮助用户自动完成一些重复的、繁琐的任务,节省大量人工操作的时间。但按键精灵是不包含图色功能,无法识别屏幕上的图像,根据图像的变化自动执行相应的操作。本篇文章主要讲解下…

Docker in Docker:深入解析与实战应用

Docker in Docker:深入解析与实战应用 一、引言 随着容器化技术的日益普及,Docker已经成为开发、测试、部署应用的标配工具。而在某些特定的场景下,如持续集成/持续部署(CI/CD)流水线中,我们可能需要在Do…

400 Bad Request问题

总结:请求路径写错了 400 问题 原地址,deleteSetmeal的参数应该改为param 更改请求地址正确后即可

靶场分享反弹shell

1、存在反弹shell命令的java代码文件Exploit.java,通过版本为1.8的jdk工具进行编译,生成Exploit.class文件 2、在存在Exploit.class文件的目录下开启http服务,让开启ldap服务端的工具marshalsec-0.0.3-SNAPSHOT-all.jar来访问这个文件 3、使用…

Spring IoCDI (1)

目录 一、IoC & DI入门 1、Spring是什么 (1)什么是容器? (2)什么是IoC? 二、IoC介绍 1、传统程序开发 2、解决方案 3、IoC程序开发 4、IoC优势 三、DI介绍 通过前面的学习,我们知…

Python语言的类和对象的基础

在 Python 中,类(class)和对象(object)是面向对象编程的核心概念。类是用来创建对象的蓝图或模板,它定义了对象的属性和方法;对象是类的实例,具有类定义的属性和方法。本文将介绍 Py…

QPS(Queries Per Second)和TPS(Transactions Per Second)的介绍和区别

QPS(Queries Per Second)和TPS(Transactions Per Second)是衡量计算系统性能的两个指标,它们分别代表了系统每秒可以处理的查询数和事务数。虽然这两个术语在某些情况下可以互换使用,但它们在技术上有所区别…

OpenCV 开源的计算机视觉和机器学习软件库

OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,它包含了许多用于图像处理、计算机视觉和机器学习的通用算法。这个库最初由Intel开发,但现在已经成为一个全球性的社区项目,由许多贡献者共同维护和发展。 OpenCV的主要特点和优势包…

Day30:热帖排行、生成长图、将文件上传到云服务器、优化热门帖子列表、压力测试

热帖排行 不同的算分方式: 只存变化的帖子到redis中,每五分钟算一次分,定时任务 存redis 构建redis键 //统计帖子分数 //key:post:score -> value:postId public static String getPostScoreKey() {return PREFIX_POST SPLIT "…

公众号/小程序 开发模式切换

开发公众号/小程序 模式切换 https://ke.qq.com/course/6033257/14616022822424425#term_id106263577

软件架构设计模式:微服务与单体架构的比较

在软件开发领域,架构设计模式是指导如何组织应用程序代码和服务的基本方法。微服务架构和单体架构是两种常见的架构模式,它们各有优势和劣势,适用于不同的项目需求和团队结构。以下是微服务与单体架构的比较: ### 单体架构 单体…

如何进行APP下载分发?

进行APP软件分发主要涉及以下几个步骤: 准备应用程序:首先,开发人员需要确保应用程序已经经过完整的测试和质量保证,包括功能测试、用户体验测试、性能测试等,以确保其稳定性和可靠性。同时,打包应用程序&…

Redis(Jedis和SpringBoot整合Redis)

文章目录 1.Jedis1.介绍2.环境配置1.创建maven项目2.pom.xml引入依赖3.新建一个包并创建一个文件 3.Jedis远程连接到Redis1.Redis放到服务器可以连接的前提条件2.为Redis设置密码1.编辑配置文件2.找到 requirepass3.设置密码为root4.重启Redis,在shutdown的时候报错…

算法入门<一>:C++各种排序算法详解及示例源码

1、排序算法 排序算法(sorting algorithm)用于对一组数据按照特定顺序进行排列。排序算法有着广泛的应用,因为有序数据通常能够被更高效地查找、分析和处理。 1.1 评价维度 运行效率:我们期望排序算法的时间复杂度尽量低&#xf…

机械臂标准DH建模及正运动学分析(以IRB4600型工业机械臂为例)

1. 前言 对于工业机械臂而言,运动学是不考虑力学特性的情况下对机械臂的几何参数与其位置、速度、加速度等运动特性的关系研究。DH建模是运动学的基础,全称为Denavit-Hartenberg建模方法,是一种广泛应用于机器人运动学中的建模技术。该方法通…

c++ 生成模拟测序数据代码

统计真实数据不同测序位置碱基的错误率,引入到DNA片段中,从而模拟生成DNA测序数据。 参考 ART: a next-generation sequencing read simulator - PMC #include <iostream> #include <random> #include <string> #include <cassert>using namespace…

05_G1垃圾收集器

G1垃圾收集器简介 垃圾优先 Garbage-First&#xff08;G1&#xff09;垃圾收集器面向多处理器机器&#xff0c;适用于大内存场景。它尝试在无需太多配置的情况下实现垃圾收集暂停时间目标&#xff0c;并同时实现高吞吐量。G1旨在通过适用于当前目标应用和环境的功能&#xff0…

3DMax中场景太大如何优化?

如果你在3dMax中进行大型项目时曾因性能低下或崩溃而感到沮丧,那么你就来对地方了。大型3dMax场景由于其复杂性和文件大小而具有挑战性,但使用正确的优化技术,你可以改进工作流并获得更平滑的结果。在今天的文章中,我们将深入探讨如何在大量3ds Max场景中增强性能。 原因:…