云服务器内容精选

  • 跨VPC访问和通过DNAT访问实例 请按照表4设置安全组规则。 表4 安全组规则 方向 协议 端口 源地址 说明 入方向 TCP 9011 198.19.128.0/17 通过 VPC终端节点 实现跨VPC访问Kafka实例(密文接入和明文接入都适用)。 入方向 TCP 9011 0.0.0.0/0 使用DNAT访问Kafka实例(密文接入和明文接入都适用)。 入方向 TCP 9092 0.0.0.0/0 使用对等连接跨VPC访问Kafka实例(明文接入)。 入方向 TCP 9093 0.0.0.0/0 使用对等连接跨VPC访问Kafka实例(密文接入)。
  • 使用内网通过同一个VPC访问实例 客户端和实例是否使用相同的安全组? 是,如果保留了创建安全组后,系统默认添加的入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,则无需添加其他规则。否则,请添加表1所示规则。 表1 安全组规则 方向 协议 类型 端口 源地址 说明 入方向 TCP IPv4 9092 0.0.0.0/0 使用内网通过同一个VPC访问Kafka实例(明文接入)。 入方向 TCP IPv6 9192 ::/0 使用内网通过同一个VPC访问Kafka实例(关闭SSL加密)。 入方向 TCP IPv4 9093 0.0.0.0/0 使用内网通过同一个VPC访问Kafka实例(密文接入)。 入方向 TCP IPv6 9193 ::/0 使用内网通过同一个VPC访问Kafka实例(开启SSL加密)。 否,执行2。 参考如下配置安全组规则。 假设客户端和Kafka实例的安全组分别为:sg-53d4、Default_All。以下规则,远端可使用安全组,也可以使用具体的IP地址,本章节以安全组为例介绍。 客户端所在安全组需要增加如下规则,以保证客户端能正常访问Kafka实例。 表2 安全组规则 方向 策略 协议端口 目的地址 出方向 允许 全部 Default_All 图1 配置客户端安全组 Kafka实例所在安全组需要增加如下规则,以保证能被客户端访问。 表3 安全组规则 方向 策略 协议端口 源地址 入方向 允许 全部 sg-53d4 图2 配置Kafka实例安全组
  • 可能原因二:端口不正确 VPC内访问场景下,端口不正确时,报错如下: [root@ecs-test RabbitMQ-Tutorial]# java -cp .:rabbitmq-tutorial.jar Send 192.168.125.111 5673 user ******* Exception in thread "main" java.net.ConnectException: Connection refused (Connection refused) at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) 公网访问场景下,端口不正确时,报错如下: [root@ecs-test RabbitMQ-Tutorial]# java -cp .:rabbitmq-tutorial.jar Send 139.xxx.179 5673 user ******* Exception in thread "main" java.net.SocketTimeoutException: connect timed out at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) 解决方法:修改端口号。
  • 可能原因五:未创建Vhost或者填错Vhost名称 报错如下: Couldn't log in: server connection error 530, message: NOT_ALLOWED - vhost /localdev/ not found 解决方法: 如果未创建Vhost,进入RabbitMQ控制台的“Vhost列表”页面,创建Vhost。 如果是Vhost名称填错了,请参考RabbitMQ控制台的“Vhost列表”页面显示的Vhost名称,修改连接URL和配置文件。
  • 可能原因一:连接地址不正确 VPC内访问场景下,连接地址不正确时,报错如下: [root@ecs-test RabbitMQ-Tutorial]# java -cp .:rabbitmq-tutorial.jar Send 192.168.125.110 5672 user ******* Exception in thread "main" java.net.NoRouteToHostException: No route to host (Host unreachable) at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) 公网访问场景下,连接地址不正确时,报错如下: [root@ecs-test RabbitMQ-Tutorial]# java -cp .:rabbitmq-tutorial.jar Send 139.xxx.178 5672 user ******* Exception in thread "main" java.net.SocketTimeoutException: connect timed out at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) 解决方法:在RabbitMQ控制台的“基本信息”页面,获取“内网连接地址”/“公网连接地址”,修改连接实例代码中的连接地址。
  • 可能原因三:用户名或密码错误 报错如下: [root@ecs-test RabbitMQ-Tutorial]# java -cp .:rabbitmq-tutorial.jar Send 192.168.125.111 5672 user ******* Exception in thread "main" com.rabbitmq.client.AuthenticationFailureException: AC CES S_REFUSED - Login was refused using authentication mechanism PLAIN. For details see the broker logfile. at com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:351) at com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:64) 解决方法:修改用户名或密码。如果忘记密码,参考重置实例密码,重置密码。
  • 怎样配置 DLI 队列与数据源的网络连通? 配置DLI队列与内网数据源的网络连通 DLI在创建运行作业需要连接外部其他数据源,如:DLI连接 MRS 、RDS、 CSS 、Kafka、DWS时,需要打通DLI和外部数据源之间的网络。 DLI提供的增强型跨源连接功能,底层采用对等连接的方式打通与目的数据源的vpc网络,通过点对点的方式实现数据互通。 图1 增强型跨源连接配置流程 增强型跨源连接配置示例请参考配置DLI队列与内网数据源的网络连通。 配置DLI队列与公网网络连通 通过配置SNAT规则,添加到公网的路由信息,可以实现队列到和公网的网络打通。 图2 配置DLI队列访问公网流程 详细操作请参考配置DLI 队列与公网网络连通。 父主题: 跨源连接问题
  • SSL方式连接RabbitMQ实例失败? 首先排查安全组的入方向规则,是否放开了端口5671(SSL方式访问)或5672(非SSL访问)。 其次,参考如下内容配置SSL单向认证: 1 2 3 4 5 6 7 8 ConnectionFactory factory = new ConnectionFactory(); factory.setHost(host); factory.setPort(port); factory.setUsername(user); factory.setPassword(password); factory.useSslProtocol(); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); 父主题: 连接问题
  • Kafka实例连接数有限制吗? 不同规格的Kafka实例,连接数限制如下: 表1 老规格Kafka实例的连接数 基准带宽 连接数上限 100MB/s 3000 300MB/s 10000 600MB/s 20000 1200MB/s 20000 表2 新规格Kafka实例的连接数 实例规格 单个代理客户端总连接数上限 kafka.2u4g.cluster.small 2000 kafka.2u4g.single.small 2000 kafka.2u4g.cluster 2000 kafka.2u4g.single 2000 kafka.4u8g.cluster 4000 kafka.8u16g.cluster 4000 kafka.12u24g.cluster 4000 kafka.16u32g.cluster 4000 父主题: 连接问题
  • 检查是否为DLI授权了DLI Datasource Connections Agency Access权限 您可以从连接日志判断是否是由于权限不足导致的连接失败。 如图4、图5所示,无法获取对端的子网ID、路由ID,因此跨源连接失败。 解决措施:请在服务授权添加DLI Datasource Connections Agency Access授权。 了解DLI更新委托权限。 图4 查看连接日志-2 图5 查看连接日志-3 图6 DLI服务授权
  • 排查思路 以下排查思路根据原因的出现概率进行排序,建议您从高频率原因往低频率原因排查,从而帮助您快速找到问题的原因。 如果解决完某个可能原因仍未解决问题,请继续排查其他可能原因。 检查是否在 域名 或者IP后添加了端口 检查是否连接的是对端VPC和子网 检查队列的网段是否与数据源网段是否重合 检查是否为DLI授权了DLI Datasource Connections Agency Access权限 检查对端安全组是否放通队列的网段 检查增强型跨源连接对应的对等连接的路由信息 检查VPC网络是否设置了ACL规则限制了网络访问
  • 检查队列的网段是否与数据源网段是否重合 绑定跨源的DLI队列网段和数据源网段不能重合。 您可以从连接日志判断是否是队列与数据源网段冲突。 如图3所示,即当前队列A网段与其他队列B网段冲突,且队列B已经建立了与数据源C的增强型跨源连接。因此提示队列A与数据源C的网段冲突,无法建立新的增强型跨源连接。 解决措施:修改队列网段或重建队列。 建议创建队列时就规划好网段划分,否则冲突后只能修改队列网段或重建队列。 图3 查看连接日志-1
  • Kafka实例的连接地址默认有多少个? Kafka实例的连接地址个数和实例的代理个数有关,连接地址个数即为代理个数。每类实例规格对应的代理个数如下表所示。 表1 Kafka实例规格(集群版实例) 实例规格 代理个数范围 单个代理TPS 单个代理分区上限 单个代理建议消费组数 单个代理客户端总连接数上限 存储空间范围 单个代理流量规格(MB/s) kafka.2u4g.cluster.small 3~30 20000 100 15 2000 300GB~300000GB 40 kafka.2u4g.cluster 3~30 30000 250 20 2000 300GB~300000GB 100 kafka.4u8g.cluster 3~30 100000 500 100 4000 300GB~600000GB 200 kafka.8u16g.cluster 3~50 150000 1000 150 4000 300GB~1500000GB 375 kafka.12u24g.cluster 3~50 200000 1500 200 4000 300GB~1500000GB 625 kafka.16u32g.cluster 3~50 250000 2000 200 4000 300GB~1500000GB 750 表2 Kafka实例规格(单机版实例) 实例规格 代理个数 单个代理TPS 单个代理分区上限 单个代理建议消费组数 单个代理客户端总连接数上限 存储空间范围 单个代理流量规格(MB/s) kafka.2u4g.single.small 1 20000 100 15 2000 100GB~10000GB 40 kafka.2u4g.single 1 30000 250 20 2000 100GB~10000GB 100 父主题: 连接问题
  • Kafka实例是否支持跨VPC访问? Kafka实例支持跨VPC访问,您可以通过以下任意一个方式实现跨VPC访问: 创建VPC对等连接,将两个VPC的网络打通,实现跨VPC访问。具体步骤请参考VPC对等连接说明。 创建一个云连接实例,然后在创建的云连接实例中加载需要互通的VPC,实现跨VPC访问。具体步骤请参考同区域同账号VPC互通。 利用VPC终端节点在不同VPC间建立跨VPC的连接通道,实现Kafka客户端通过内网访问Kafka实例。具体步骤请参考跨VPC访问Kafka实例。 父主题: 连接问题