Merge pull request #4860 from LBGarber/new/lke-ha-support

Add High Availability LKE cluster support
This commit is contained in:
Neil MacDougall 2023-02-21 13:59:18 +00:00 committed by GitHub
commit f0cf09b2be
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 47 additions and 9 deletions

View File

@ -46,16 +46,18 @@ const NODE_POOL_HEADERS = [
];
export default Component.extend(ClusterDriver, {
intl: service(),
linode: service(),
intl: service(),
linode: service(),
layout,
configField: 'lkeEngineConfig',
step: 1,
lanChanged: null,
refresh: false,
sortBy: '',
descending: false,
nodePoolHeaders: NODE_POOL_HEADERS,
configField: 'lkeEngineConfig',
step: 1,
lanChanged: null,
refresh: false,
sortBy: '',
descending: false,
nodePoolHeaders: NODE_POOL_HEADERS,
// This value is currently not returned by the Linode API
highAvailabilityMonthlyPrice: 60.0,
init() {
this._super(...arguments);
@ -64,6 +66,8 @@ export default Component.extend(ClusterDriver, {
let configField = get(this, 'configField');
setProperties(this, {
// We should store the previous state of HA to disallow downgrades
'highAvailability': config ? config.highAvailability : false,
'newTag': '',
'selectedNodePoolType': '',
'selectedNodePoolObj': {},
@ -79,6 +83,7 @@ export default Component.extend(ClusterDriver, {
accessToken: '',
region: 'us-central',
kubernetesVersion: '',
highAvailability: false,
tags: [],
nodePools: []
});

View File

@ -80,6 +80,35 @@
</div>
</div>
{{/if}}
<div class="row">
<div class="col span-6">
<label class="acc-label">
{{t "clusterNew.linodelke.highAvailability.label"}}
{{field-required}}
</label>
{{#input-or-display
editable=true
value=cluster.lkeEngineConfig.highAvailability
}}
<div class="radio">
<label>
{{radio-button selection=cluster.lkeEngineConfig.highAvailability value=true}}
{{t "generic.enabled"}}
(+{{format-number highAvailabilityMonthlyPrice style='currency' currency='USD'}}/{{t "clusterNew.linodelke.highAvailability.month"}})
</label>
</div>
<div class="radio">
<label>
{{radio-button selection=cluster.lkeEngineConfig.highAvailability disabled=highAvailability value=false}}
{{t "generic.disabled"}}
</label>
</div>
{{/input-or-display}}
<p class="help-block">
{{t "clusterNew.linodelke.highAvailability.warning"}}
</p>
</div>
</div>
<div class="row">
<div class="header mt-40 mb-0">
<div class="pull-left">

View File

@ -4284,6 +4284,10 @@ clusterNew:
loading: Saving your cluster configuration
next: Proceed to Node pool selection
title: Cluster Configuration
highAvailability:
label: High Availability
warning: Once a cluster has been upgraded to High Availability, it cannot be downgraded.
month: month
kubernetesVersion:
label: Kubernetes Version
placeholder: Select a kubernetes version for your cluster