Flink On Yarn中文乱码解决

业务场景:

Flnk消费Kafka数据后,先入Hbase,经过校验后会发送数据到Kafka另一个topic,供另一个业务线消费入库。

组件版本:

CDH:6.3.0

Flink:1.10

1. 问题描述

经发现结果数据库中中文为乱码,如图:

2. 问题定位

1、首先排查IDEA开发、编译各项编码,都是UTF-8。

2、查看服务器编码,也是UTF-8。

3、后来怀疑是hbase读写的序列化有问题,但是经测试后没有问题,直接在代码里输出中文就是乱码!

3. 解决过程

看过一些博客,是yarn的配置有问题,需要修改yarn的参数,但动作太大,没做尝试。

最简单的方式就只需在启动flink任务时加上参数就可以解决:

-yD env.java.opts="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"

 --------------------------------END --------------------------------

希望对大家有帮助,有问题多交流

原文地址:https://www.cnblogs.com/changsblogs/p/14487979.html