赞
踩
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
给大家整理的视频资料:
给大家整理的电子书资料:
如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
1.3.2 python控制台中按backspace返回^H
(1)下载docker-ce.repo文件
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
(2)注意如果下载配置过python3,yum-config-manager命令可能会报错,
记得修改/usr/bin/yum-config-manager开头到python2
这是我的软连接路径,具体情况依照个人的配置
(3)按照官网文档,需要安装docker和dockerCompose v2!!! ,实测启动后内存占用4G多一点,最低配置6G内存应该可以。
(4)下载docker-ce、docker
① yum下载docker
yum install docker-ce docker –y
② 开启服务
systemctl start docker
③ 设置开机自启
systemctl enable docker
(5)下载docker-compose
注意!!务必使用以下方法或去github(Releases · docker/compose (github.com)")下载docker-compose 2.x,没试过其余版本但2.16以上绝对可以。yum install下载的版本为docker-compose 1.x,运行会报非常多错,一开始没注意走了很多弯路,
① curl-SL下载命令
curl -SL https://github.com/docker/compose/releases/download/v2.16.0/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose
② chmod +x赋予运行权限
③到/usr/bin下创建软链接
④ docker-compose version查看安装是否成功
(6)docker运行hello-world检查是否安装成功
docker run hello-world
不知是不是老虚拟机的缘故,网上别的教程里要求的python库我都没有特地去安,只按官网要求安装库就可以运行了
(1)更新pip、wheel、setuptools工具
python3 -m pip install --upgrade pip wheel setuptools
(2)下载acryl-datahub
python3 -m pip install --upgrade acryl-datahub
(3)datahub version查看是否成功
如果看到“command not found”,尝试运行前缀为python3 -m的cli命令,例如python3 -m datahub version,注意数据中心CLI不支持 Python 2.x。
(4)快速启动datahub
datahub docker quickstart
直接执行quickstart可能会报错:
ConnectionError: HTTPSConnectionPool(host=‘raw.githubusercontent.com’, port=443): Max retries exceeded with url: /linkedin/datahub/master/docker/quickstart/docker-compose-without-neo4j.quickstart.yml (Caused by NewConnectionError(‘<urllib3.connection.HTTPSConnection object at 0x7fe29e5fe760>: Failed to establish a new connection: [Errno -2] Name or service not known’))
这个网址国内有可能连不上,不过命令的原理就是到raw.githubusercontent.com下载docker-compose-without-neo4j.quickstart.yml,可以在github上下载这个yml到本地
然后使用命令:
datahub docker quickstart --quickstart-compose-file ~/docker-compose-without-neo4j.quickstart.yml
源码可以不整个git clone,文件很大加上github下载速度慢,只下载docker-compose-without-neo4j.quickstart.yml就可以
注意如果虚拟机上安装过mysql或者mariadb记得systemctl stop ,不然会报端口占用错误,另外启动容器时还需要开放如下端口
不建议在已安装上述常见组件的服务器上运行datahub,
(5)出现下图则证明各个容器启动完成
(6) 摄取官方提供的测试用元数据
datahub docker ingest-sample-data
(7)登陆${hostname}:9002查看前端界面
对于公司开发内网环境来说,无法pip、yum在线下载,无法在线pull docker镜像,这一章尝试离线安装所有需要的组件。
(1)进入官网下载tgz包(https://download.docker.com/linux/static/stable/x86_64/)
(2)将安装包上传后tar –zxvf解压
(3)创建docker.service
vi /etc/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
#TasksMax=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
chmod +x /etc/systemd/system/docker.service
systemctl daemon-reload
systemctl start docker
(4)用1.1.1(5)中github(Releases · docker/compose (github.com)"))下载安装包的方式安装docker-compose
(5)启动datahub后docker ps 查看所有启动的容器
(6)使用命令保存镜像,注意把相关的镜像都下载到本地docker save –o 包名 镜像名
例如:docker save -o localimage/datahub-actions.tar acryldata/datahub-actions:head
将所有datahub相关镜像全部下载到本地,最后效果是这样的:
(7)将镜像包发送到无网络环境的服务器上
(8)docker load –I 包名
将镜像加载到无网络环境的服务器上
(1)使用国内华为源(https://mirrors.huaweicloud.com/python)下载tar.xz包
(2)xz –d将tar.xz解压为tar
xz -d Python-3.9.11.tar.xz
(3)tar –xvf 将tar包解压
tar -xvf Python-3.9.11.tar
(4)注意安装之前必须保证有gcc、libffi-devel、zlib(否则pip无法安装)、openssl≥1.1.1、bzip2-devel(dathub所需)
离线安装gcc等命令可以在有网络的服务器使用repotrack命令将相关rpm包下载下来,然后传至无网服务器使用rpm -Uvh *rpm --nodeps –force安装
以gcc举例:
① 在有网络服务器创建目录package/gccpkg
② 进入package/gccpkg
③ repotrack gcc
④ 将gccpkg发送到无网服务器
⑤ 进入gccpkg目录
⑥ rpm -Uvh *rpm --nodeps --force安装所有rpm包
⑦ gcc –v查看是否安装成功
(5)安装openssl
下载openssl安装包(Releases · openssl/openssl (github.com)"))
tar -zxvf openssl-1.1.1t.tar.gz
./config --prefix=/usr/local/lib/openssl-1.1.1
make
make install
rm /usr/lib64/libssl.so.1.1
rm /usr/lib64/libcrypto.so.1.1
cd /usr/bin
rm openssl
ln -s /usr/local/lib/openssl-1.1.1/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/lib/openssl-1.1.1/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
cd /usr/bin
ln -s /usr/local/lib/openssl-1.1.1/bin/openssl usr/bin/openssl
openssl version
(6)./configure --prefix=/usr/python3 --with-openssl=/usr/local/lib/openssl-1.1.1
No module named _ssl
(7)make&&make install
(8)删除原来的python->python2软连接,添加python->python3,python3->安装目录
查看python版本
(9)添加软连接pip->pip3,pip3->安装目录
pip查看版本
(1)与在线安装一样,需要安装pip、wheel、setuptools、acryl-datahub,pip也可以将包下载到本地
① 将本地安装过的所有库名记录到requirements.txt中
pip freeze > requirements.txt
② 遍历requirements.txt中的内容,下载
pip install -r requirements.txt
③ 将某个<package_name>库下载到本地<dir>下
pip download -d <dir> <package_name>
④ 遍历requirements.txt中的内容,下载到本地<dir>下
pip download -d
⑤ 将
pip install --no-index -f <dir> <package_name>
例如:
pip download -d acryl-datahub acryl-datahub
pip install –no-index –f acryl-datahub/*
(2)运行命令时-f指定yml地址,-no-pull-images不pull,使用本地镜像
datahub docker quickstart -f /usr/datahub/docker-compose-without-neo4j.quickstart.yml --no-pull-images
(3)与在线安装一样,登录${hostname}:9002查看前端界面,用户名密码datahub/datahub
(4)上传官方测试json至离线服务器,摄取官方测试数据
(5)可以看到界面中已经出现了测试信息
(cd docker && COMPOSE_DOCKER_CLI_BUILD=1 DOCKER_BUILDKIT=1 docker-compose -p datahub -f docker-compose-without-neo4j.yml -f docker-compose-without-neo4j.override.yml -f docker-compose.dev.yml up -d --no-deps --force-recreate datahub-gms)
python3会导致yum不能正常使用
vi /usr/bin/yum
把 #! /usr/bin/python 修改为 #! /usr/bin/python2
vi /usr/libexec/urlgrabber-ext-down
把 #! /usr/bin/python 修改为 #! /usr/bin/python2
vi /usr/bin/yum-config-manager
#!/usr/bin/python 改为 #!/usr/bin/python2
没有提示的不用修改
临时解决:
Ctrl+退格键
永久解决:
安装readline,readline 是 bash shell 用的库,包含许多使用功能
yum install readline readline-devel
安装完成后,需要再重新编译安装 Python,重复1.2.2
检查插件
datahub check plugins --verbose
如果插件不可用pip install acryl-datahub[插件名],无网络环境可以参考1.2.3将pip包download至本地,再load -o
这里我pip install ‘acryl-datahub[mysql]’
确保插件无disable后再进行摄取操作
编辑摄取文件
vi /usr/datahub/mysqlmaster.yml
source:
type: mysql
config:
# Coordinates
host_port: master:3306
database: dolphinscheduler
# Credentials
username: root
password: lovol
# If you need to use SSL with MySQL:
# options:
# connect_args:
# ssl_ca: “path_to/server-ca.pem”
# ssl_cert: “path_to/client-cert.pem”
# ssl_key: “path_to/client-key.pem”
sink:
# sink configs
type: datahub-rest
config:
server: http://slave1:8080
执行命令
datahub ingest -c /usr/datahub/mysqlmaster.yml
5 0 * * * datahub ingest -c /usr/datahub/mysqlmaster.yml
可以调度执行摄取任务,corn用法教程网上有很多,这里就不介绍了
在2.3中介绍另一种摄取方法
datahub --help查看所有命令
常用命令:
检查插件 –v输出详细信息
datahub check plugins -v
datahub delete
命令行删除元数据
datahub delete --env prod --entity_type dataset -p mysql --query dolphinscheduler --hard
任何命令加 –n则空跑,不会产生实际影响,例如
datahub delete --env prod --entity_type dataset -p mysql --query dolphinscheduler --hard -n
由于cli命令原理是依靠输入参数快速构建rest,如果按照2.4.1开放了tokens,再使用命令时相当于无token运行,会报http连接错误
由于UI界面创建的摄取任务是在容器内运行的,容器内没有添加hostname,使用hostname格式不能运行,
且进入容器的租户无权添加hosts,UI界面创建的任务只有用服务器IP才能成功执行
(1)选择数据源
(2)选择设置项
在Connection中输入服务器ip、端口号、mysql用户名密码
由于UI界面创建的摄取任务是在容器内运行的,容器内没有添加hostname,使用hostname格式不能运行,
尝试进入容器修改hosts,无效
查看datahub-actions的containerID
修改服务器/var/lib/docker/containers/ 36d5ece46eb8546cb95fe9ea6305bfe90c92a84aa0fe8281130eb2364181cdf7/hosts
添加master后才可以在前端使用host进行摄取
每次重启docker后hosts文件都会重置,所以如果频繁启停的话建议使用ip进行摄取
Filter中编辑的是过滤条件,可以对数据库、MySQL源数据、表、视图做出限制,只摄取符合限制的表,Deny优先级高于allow
在Advanced中可以勾选附加选项
(3)调度运行时间
必须将Run on a schedule打开才能启用调度
(4)为摄取任务取名
个人访问令牌允许向数据中心的 API 发出编程请求。令牌持有者继承发出人的权限,并且寿命有限。最好不要共享令牌
datahub令牌功能默认是关闭的,界面报
Token based authentication is currently disabled. Contact your DataHub administrator to enable this feature.(忘截图了)
需要修改1.1.3(4)中的的配置文件docker-compose-without-neo4j.quickstart.yml,在datahub-frontend-react和datahub-gms下的environment添加- METADATA_SERVICE_AUTH_ENABLED=true,开启令牌功能,注意更改yml后容器会类似重置,2.8中用户文件夹会刷新,记得重新编辑,添加用户
创建令牌
创建完成后界面不能重复打开,只能删除,建议保存到安全的位置
curl -X POST ‘http://slave1:9002/api/graphql’ \
–header ‘Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJhY3RvclR5cGUiOiJVU0VSIiwiYWN0b3JJZCI6Imxpa2FpIiwidHlwZSI6IlBFUlNPTkFMIiwidmVyc2lvbiI6IjIiLCJqdGkiOiI4MWZjN2E0NC1mNmQ2LTRhODAtYmU0MS02NmE4MmI3OTlmZmYiLCJzdWIiOiJsaWthaSIsImV4cCI6MTY4ODk3Mzg3NywiaXNzIjoiZGF0YWh1Yi1tZXRhZGF0YS1zZXJ2aWNlIn0.t1Mz27Jiw4r18wqIFqgl3CfFBQTwFAEA1vY3Sl0_DFU’ \
–header ‘Content-Type: application/json’ \
–data-raw ‘{“query”:“{\n me {\n corpUser {\n username\n }\n }\n}”,“variables”:{}}’
Users界面可以快速分配角色,但不能创建用户,创建用户见2.8
Group界面创建用户组
进入组后可以添加用户
1、Roles
点击快速分配
2、Policies
默认root user,admin,editors和readers策略,无法删除无法编辑
可以点击创建新策略
① 输入名称和选择策略的类型,类型有Platform和Metadata两种
平台策略类型允许向用户分配数据中心平台权限。其中包括管理用户和组、创建策略、查看分析图等。
元数据策略类型允许向用户分配元数据权限。其中包括操作元数据的能力比如所有权,标签,数据集、图表之类的文档。
②
最全的Linux教程,Linux从入门到精通
======================
linux从入门到精通(第2版)
Linux系统移植
Linux驱动开发入门与实战
LINUX 系统移植 第2版
Linux开源网络全栈详解 从DPDK到OpenFlow
第一份《Linux从入门到精通》466页
====================
内容简介
====
本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜爱的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。
本书适合广大Linux初中级用户、开源软件爱好者和大专院校的学生阅读,同时也非常适合准备从事Linux平台开发的各类人员。
需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
716d6.png)
②
最全的Linux教程,Linux从入门到精通
======================
linux从入门到精通(第2版)
Linux系统移植
Linux驱动开发入门与实战
LINUX 系统移植 第2版
Linux开源网络全栈详解 从DPDK到OpenFlow
第一份《Linux从入门到精通》466页
====================
内容简介
====
本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜爱的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。
本书适合广大Linux初中级用户、开源软件爱好者和大专院校的学生阅读,同时也非常适合准备从事Linux平台开发的各类人员。
需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。