带阿里标识的版本
This commit is contained in:
@@ -11,7 +11,6 @@
|
||||
<div class="item"><strong>集群设置</strong></div>
|
||||
</second-menu>
|
||||
|
||||
|
||||
{$template "/left_menu_with_menu"}
|
||||
|
||||
<div class="right-box with-menu">
|
||||
@@ -39,50 +38,65 @@
|
||||
<td>节点安装根目录</td>
|
||||
<td>
|
||||
<input type="text" name="installDir" maxlength="100" v-model="settings.installDir" />
|
||||
<p class="comment">边缘节点安装 HTTPDNS 服务的默认所在目录,此目录将被用于下发配置。通常保持默认即可。</p>
|
||||
<p class="comment">边缘节点安装 HTTPDNS 服务的默认目录,通常保持默认即可。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>默认解析 TTL</td>
|
||||
<td>
|
||||
<div class="ui input right labeled">
|
||||
<input type="text" name="cacheTtl" maxlength="5" v-model="settings.cacheTtl"
|
||||
style="width: 6em" />
|
||||
<input type="text" name="cacheTtl" maxlength="5" v-model="settings.cacheTtl" style="width: 6em" />
|
||||
<span class="ui label">秒</span>
|
||||
</div>
|
||||
<p class="comment">SDK 向 HTTPDNS 请求域名解析时,返回的默认缓存有效期 (TTL)。SDK 超时后将重新发起请求。</p>
|
||||
<p class="comment">SDK 通过 HTTPDNS 解析域名时返回的默认 TTL。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>降级超时容忍度</td>
|
||||
<td>
|
||||
<div class="ui input right labeled">
|
||||
<input type="text" name="fallbackTimeout" maxlength="5" v-model="settings.fallbackTimeout"
|
||||
style="width: 6em" />
|
||||
<input type="text" name="fallbackTimeout" maxlength="5" v-model="settings.fallbackTimeout" style="width: 6em" />
|
||||
<span class="ui label">毫秒</span>
|
||||
</div>
|
||||
<p class="comment">HTTPDNS 节点在回源查询其它 DNS 时的最大等待时间。超出此时间将触发服务降级逻辑(返回上一有效缓存或错误)。</p>
|
||||
<p class="comment">节点回源查询上游 DNS 时的最大等待时间。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>启用当前集群</td>
|
||||
<td>
|
||||
<div class="ui checkbox">
|
||||
<input type="checkbox" name="isOn" value="1" v-model="settings.isOn"
|
||||
@change="syncDefaultCluster" />
|
||||
<input type="checkbox" name="isOn" value="1" v-model="settings.isOn" @change="syncDefaultCluster" />
|
||||
<label></label>
|
||||
</div>
|
||||
<p class="comment">如果取消启用,整个集群的 HTTPDNS 解析服务将停止。</p>
|
||||
<p class="comment">取消启用后,该集群不会参与 HTTPDNS 服务。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>默认集群</td>
|
||||
<td>
|
||||
<div class="ui checkbox">
|
||||
<input type="checkbox" name="isDefaultCluster" value="1" v-model="settings.isDefaultCluster" />
|
||||
<label>设置为默认部署集群</label>
|
||||
<input type="checkbox" value="1" v-model="settings.defaultClusterEnabled" @change="syncDefaultClusterSelection" />
|
||||
<label>设为默认集群</label>
|
||||
</div>
|
||||
<p class="comment">全局设置。如果应用未单独指定集群,将默认分配和部署到该集群中。</p>
|
||||
<div class="ui form" style="margin-top: .8em;" v-if="settings.defaultClusterEnabled">
|
||||
<div class="grouped fields" style="margin:0;">
|
||||
<div class="field">
|
||||
<div class="ui radio checkbox">
|
||||
<input type="radio" v-model="settings.defaultClusterRole" value="primary" @change="syncDefaultClusterSelection" />
|
||||
<label>主集群</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field">
|
||||
<div class="ui radio checkbox">
|
||||
<input type="radio" v-model="settings.defaultClusterRole" value="backup" @change="syncDefaultClusterSelection" />
|
||||
<label>备用集群</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" name="isDefaultCluster" value="1" v-if="settings.defaultClusterEnabled && settings.defaultClusterRole == 'primary'" />
|
||||
<input type="hidden" name="isDefaultBackupCluster" value="1" v-if="settings.defaultClusterEnabled && settings.defaultClusterRole == 'backup'" />
|
||||
<p class="comment">同一时刻最多 1 个默认集群角色,新设置会自动取消旧设置。</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -91,15 +105,12 @@
|
||||
<tr>
|
||||
<td class="title">绑定端口 *</td>
|
||||
<td>
|
||||
<network-addresses-box :v-url="'/httpdns/addPortPopup'" :v-addresses="tlsConfig.listen"
|
||||
:v-protocol="'tls'" :v-support-range="true"></network-addresses-box>
|
||||
<network-addresses-box :v-url="'/httpdns/addPortPopup'" :v-addresses="tlsConfig.listen" :v-protocol="'tls'" :v-support-range="true"></network-addresses-box>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- SSL配置 -->
|
||||
<ssl-config-box v-show="activeSection == 'tls'" :v-ssl-policy="tlsConfig.sslPolicy"
|
||||
:v-protocol="'tls'"></ssl-config-box>
|
||||
<ssl-config-box v-show="activeSection == 'tls'" :v-ssl-policy="tlsConfig.sslPolicy" :v-protocol="'tls'"></ssl-config-box>
|
||||
|
||||
<submit-btn></submit-btn>
|
||||
</form>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
Tea.context(function () {
|
||||
Tea.context(function () {
|
||||
this.success = NotifyReloadSuccess("保存成功")
|
||||
|
||||
this.activeSection = this.activeSection || "basic"
|
||||
@@ -8,9 +8,38 @@ Tea.context(function () {
|
||||
this.settings = {}
|
||||
}
|
||||
|
||||
// 兼容旧字段,转换成统一“默认集群 + 角色”表现
|
||||
let isDefaultPrimary = !!this.settings.isDefaultCluster
|
||||
let isDefaultBackup = !!this.settings.isDefaultBackupCluster
|
||||
this.settings.defaultClusterEnabled = isDefaultPrimary || isDefaultBackup
|
||||
this.settings.defaultClusterRole = isDefaultBackup ? "backup" : "primary"
|
||||
|
||||
this.syncDefaultCluster = function () {
|
||||
if (!this.settings.isOn) {
|
||||
this.settings.defaultClusterEnabled = false
|
||||
this.settings.defaultClusterRole = "primary"
|
||||
this.settings.isDefaultCluster = false
|
||||
this.settings.isDefaultBackupCluster = false
|
||||
return
|
||||
}
|
||||
this.syncDefaultClusterSelection()
|
||||
}
|
||||
|
||||
this.syncDefaultClusterSelection = function () {
|
||||
if (!this.settings.defaultClusterEnabled) {
|
||||
this.settings.isDefaultCluster = false
|
||||
this.settings.isDefaultBackupCluster = false
|
||||
return
|
||||
}
|
||||
|
||||
if (this.settings.defaultClusterRole === "backup") {
|
||||
this.settings.isDefaultCluster = false
|
||||
this.settings.isDefaultBackupCluster = true
|
||||
} else {
|
||||
this.settings.defaultClusterRole = "primary"
|
||||
this.settings.isDefaultCluster = true
|
||||
this.settings.isDefaultBackupCluster = false
|
||||
}
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{$layout}
|
||||
{$layout}
|
||||
{$template "menu"}
|
||||
|
||||
<div class="ui margin"></div>
|
||||
@@ -27,7 +27,7 @@
|
||||
<input type="text" name="cacheTtl" maxlength="5" value="30" style="width: 6em" />
|
||||
<span class="ui label">秒</span>
|
||||
</div>
|
||||
<p class="comment">SDK 向 HTTPDNS 请求域名解析时,返回的默认缓存有效期 (TTL)。SDK 超时后将重新发起请求。</p>
|
||||
<p class="comment">SDK 通过 HTTPDNS 解析域名时返回的默认 TTL。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -37,36 +37,52 @@
|
||||
<input type="text" name="fallbackTimeout" maxlength="5" value="300" style="width: 6em" />
|
||||
<span class="ui label">毫秒</span>
|
||||
</div>
|
||||
<p class="comment">HTTPDNS 节点在回源查询其它 DNS 时的最大等待时间。超出此时间将触发服务降级逻辑(返回上一有效缓存或错误)。</p>
|
||||
<p class="comment">节点回源查询上游 DNS 时的最大等待时间。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>节点安装根目录</td>
|
||||
<td>
|
||||
<input type="text" name="installDir" maxlength="255" value="/opt/edge-httpdns" />
|
||||
<p class="comment">边缘节点安装 HTTPDNS 服务的默认所在目录,此目录将被用于下发配置。通常保持默认即可。</p>
|
||||
<p class="comment">边缘节点安装 HTTPDNS 服务的默认目录。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>启用当前集群</td>
|
||||
<td>
|
||||
<div class="ui checkbox">
|
||||
<input type="checkbox" name="isOn" value="1" checked />
|
||||
<input type="checkbox" name="isOn" value="1" v-model="isOn" @change="syncDefaultClusterEnabled" checked />
|
||||
<label></label>
|
||||
</div>
|
||||
<p class="comment">如果取消启用,整个集群的 HTTPDNS 解析服务将不被系统分配。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>默认集群</td>
|
||||
<td>
|
||||
<div class="ui checkbox">
|
||||
<input type="checkbox" name="isDefault" value="1" />
|
||||
<label>设置为默认部署集群</label>
|
||||
<input type="checkbox" value="1" v-model="defaultClusterEnabled" @change="syncDefaultClusterEnabled" />
|
||||
<label>设为默认集群</label>
|
||||
</div>
|
||||
<p class="comment">全局设置。如果应用未单独指定集群,将默认分配和部署到该集群中。</p>
|
||||
<div class="ui form" style="margin-top: .8em;" v-if="defaultClusterEnabled">
|
||||
<div class="grouped fields" style="margin:0;">
|
||||
<div class="field">
|
||||
<div class="ui radio checkbox">
|
||||
<input type="radio" v-model="defaultClusterRole" value="primary" />
|
||||
<label>主集群</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field">
|
||||
<div class="ui radio checkbox">
|
||||
<input type="radio" v-model="defaultClusterRole" value="backup" />
|
||||
<label>备用集群</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" name="isDefaultPrimary" value="1" v-if="defaultClusterEnabled && defaultClusterRole == 'primary'" />
|
||||
<input type="hidden" name="isDefaultBackup" value="1" v-if="defaultClusterEnabled && defaultClusterRole == 'backup'" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<submit-btn></submit-btn>
|
||||
</form>
|
||||
</form>
|
||||
|
||||
@@ -1,4 +1,15 @@
|
||||
Tea.context(function () {
|
||||
Tea.context(function () {
|
||||
this.isOn = true
|
||||
this.defaultClusterEnabled = false
|
||||
this.defaultClusterRole = "primary"
|
||||
|
||||
this.syncDefaultClusterEnabled = function () {
|
||||
if (!this.isOn) {
|
||||
this.defaultClusterEnabled = false
|
||||
this.defaultClusterRole = "primary"
|
||||
}
|
||||
}
|
||||
|
||||
this.success = function (resp) {
|
||||
let clusterId = 0
|
||||
if (resp != null && resp.data != null && typeof resp.data.clusterId != "undefined") {
|
||||
|
||||
Reference in New Issue
Block a user