本文是App service 连接 Azure database for MySQL系列文章的一部分,全部的文章请参见:
- (视频)Azure App Service Connect To Azure database for MySQL -资源准备
- (视频)Azure App Service Connect To Azure database for MySQL (1)- Firewall and IP Range
- (视频)Azure App Service Connect To Azure database for MySQL (2)- VNET and Service endpoint
- (视频)Azure App Service Connect To Azure database for MySQL (3)- VNET and Private Endpoint
本文介绍:
Azure App Service 连接Azure Database for MySQL的第三种方式:mysql private endpoint 和vnet
本案例是介绍的App service 连接mysql的方式中,唯一将deny public network access 设置为 yes的案例。
本案例示意图:
本案例重点配置:
Deny Public network access=Yes
MySQL: Add private endpoint and private dns zone
App Service: Connect to VNET
(1)connect MySQL through internal private IP
或者
(2)connect MySQL server after config app service DNS setting
视频介绍:
图文介绍:
本案例步骤:
1.准备资源
2.MySQL 配置private endpoint
3.App service 加入VNET中并配置DNS
4.测试App Service 到MySQL的连接
1.准备资源
2.MySQL 配置private endpoint
3.App service 加入VNET中
本例中,在上一讲《》中,app service 已经连接到了子网subnet-01-mysql中,本例可以保留上一讲的连接,也可以修改。
对App service 配置dns:
在App service 与 VNet 集成后,它将使用与 VNet 相同的 DNS 服务器。 默认情况下,你的应用程序将不能使用 Azure DNS 专用区域。 若要使用 Azure DNS 专用区域需要添加以下应用设置:
1. Name: WEBSITE_DNS_SERVER, Value: 168.63.129.16
2.Name: WEBSITE_VNET_ROUTE_ALL, Value: 1
4.测试App Service 到MySQL的连接
测试用的app service 源码:https://github.com/sean8544/web_api_for_app_service_test_mysql_connect
测试(1)使用private ip 连接:在private endpoint页面找到private ip
测试(2)使用private fqdn 连接:
完整的连接由两部分构成:app-connect-test.privatelink.mysql.database.azure.com
如下图连接成功: