使用阿里云抢占服务器体验至数云平台
1. 抢占阿里云服务器
阿里云链接: https://ecs.console.aliyun.com/
选择抢占式实例,4核心8GB任意选一个,可以指定释放时间
选择
Centos 7.9 64位
的系统版本
注意!!安全组需要开放端口号:
8080
(必须开放)、8081
(可选)、8082
(可选)、4040
(可选)、30177
(可选)
自定义root密码
获取服务器的
内网ip
和外网ip
系统信息如下
系统: Centos7.9
资源: 4核8GB
外网ip: 47.92.206.49
内网ip: 172.16.215.83
账号: root
密码: zhishuyun123..
2. 进入服务器
ssh root@47.92.206.49
3. 安装java环境(在线安装)
Ubuntu系统,执行命令如下:
sudo apt update
sudo apt install openjdk-8-jdk openjdk-8-jre -y
sudo yum install java-1.8.0-openjdk-devel java-1.8.0-openjdk -y
3. 安装java环境(离线安装)
cd /tmp
nohup wget https://openfly.oss-cn-shanghai.aliyuncs.com/java/zulu8.78.0.19-ca-jdk8.0.412-linux_x64.tar.gz >> download_jdk.log 2>&1 &
tail -f download_jdk.log
注意!!!一定要在~/.bashrc中配置JAVA_HOME环境变量
tar -vzxf /tmp/zulu8.78.0.19-ca-jdk8.0.412-linux_x64.tar.gz -C /opt
ln -s /opt/zulu8.78.0.19-ca-jdk8.0.412-linux_x64 /opt/java
tee -a ~/.bashrc <<-'EOF'
export JAVA_HOME=/opt/java
export PATH=$PATH:$JAVA_HOME/bin
EOF
source ~/.bashrc
java -version
4. 下载至数云安装包
等待时间比较久,大约1GB安装包
cd /tmp
nohup wget https://isxcode.oss-cn-shanghai.aliyuncs.com/zhishuyun/zhishuyun.tar.gz >> download_zhishuyun.log 2>&1 &
tail -f download_zhishuyun.log
5. 解压安装包
cd /tmp
tar -vzxf zhishuyun.tar.gz
6. 启动至数云
cd /tmp/zhishuyun/bin
bash start.sh
7. 检测服务是否启动
健康检测接口: http://47.92.206.49:8080/tools/open/health
8. 访问至数云服务
1M的带宽,首次加载,大约40s
- 访问接口: http://47.92.206.49:8080
- 管理员账号:
admin
- 管理员密码:
admin123
9. 创建用户租户
- 创建用户
zhishuyun
- 创建租户
体验租户
10. 上传许可证(可选)
使用基础功能,不需要上传许可证
在官网的最下面,可以免费获取体验许可证
官网链接: https://zhishuyun.isxcode.com/
11. 安装集群
退出后台管理界面,使用
zhishuyun
账号登录
选择
StandAlone
类型的集群,支持默认安装spark服务
点击集群名称
推荐使用内网ip
host: 172.16.215.83
用户名: root
密码: zhishuyun123..
默认安装Spark: 打勾
12. 访问spark服务
Spark Master: http://47.92.206.49:8081
Spark Worker: http://47.92.206.49:8082
13. 添加Mysql数据源
如果用户没有可测试的mysql数据源,可以通过docker快速启动一个mysql服务
docker run \
--name zhishuyun-mysql \
--privileged=true \
--restart=always \
-d \
-p 30306:3306 \
-e MYSQL_ROOT_PASSWORD=zhishuyun123 \
-e MYSQL_DATABASE=test_db \
mysql:8.0
类型:
Mysql
链接信息:jdbc:mysql://47.92.206.49:30306/test_db
用户名:root
密码:zhishuyun123
14. 新建作业流,执行默认sparksql
默认sql为查询当前时间
15. 新建jdbc执行sql
创建两张表,一张原始表一张结果表,并在原始表中插入一条数据
-- 原始表
create table users(
username varchar(100),
sex int,
birth datetime
);
-- 结果表
create table users_result(
username varchar(100),
sex int,
birth varchar(100)
);
-- 结果表中插入一条数据
insert into users values('zhangsan',13,now());
16. 新建jdbc查询sql
通过jdbc查询作业,查看原始表中的数据。
select * from users;
17. 使用自定义函数
自定义函数需要先上传编译的jar包
- 自定义函数参考模版: https://github.com/isxcode/spark-function-template
- 演示函数下载: https://openfly.oss-cn-shanghai.aliyuncs.com/spark-custom-func.jar
- 演示依赖下载: https://repo1.maven.org/maven2/cn/hutool/hutool-all/5.8.27/hutool-all-5.8.27.jar
18. 新建自定义函数
名称: to_chinese_date
类型: UDF
类名: com.isxcode.star.udf.Func
返回类型: string
备注: 将时间格式转成中文
19. 使用自定义函数
新建数据同步作业,使用数据同步将原始表中的日期格式改成中文格式,并同步到结果表中。
添加自定义函数
to_chinese_date
添加函数依赖hutool-all-5.8.27.jar
创建jdbc查询作业,查询结果
20. 自定义作业使用
计算pi的值
- 自定义作业参考模版: https://github.com/isxcode/spark-job-template
- 官网pi计算作业下载: https://openfly.oss-cn-shanghai.aliyuncs.com/spark-examples_2.12-3.4.1.jar
上传资源中心
应用名称: pi-demo
mainClass: org.apache.spark.examples.SparkPi
请求参数: 10
点击数据返回,查看pi结果