Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add helm chart #59

Merged
merged 1 commit into from
Dec 15, 2018
Merged

Add helm chart #59

merged 1 commit into from
Dec 15, 2018

Conversation

bergerx
Copy link
Contributor

@bergerx bergerx commented Oct 12, 2018

What this PR does / why we need it:
The only helm chart available for etcd-backup-restore was in gardener, this one adds a helm chart to the upstream.

Which issue(s) this PR fixes:
Fixes #

Special notes for your reviewer:

  • I copied the chart from gardener repo as is and only updated the dummy image names to the ones in use in gardener
  • I didn't do any further modification on purpose since gardener seems to be main user better to keep this in sync as much as possible. This one is open to discussions.

Historical discussion in the slack channel can be found in: https://kubernetes.slack.com/archives/CB57N0BFG/p1539340130000100

Release note:

There is now a helm chart to deploy etcd-backup-restore.

@CLAassistant
Copy link

CLAassistant commented Oct 12, 2018

CLA assistant check
All committers have signed the CLA.

@swapnilgm swapnilgm added kind/enhancement Enhancement, improvement, extension exp/beginner Issue that requires only basic skills reviewed/do-not-merge Has no approval for merging as it may break things, be of poor quality or have (ext.) dependencies needs/changes Needs (more) changes size/s Size of pull request is small (see gardener-robot robot/bots/size.py) component/etcd-backup-restore ETCD Backup & Restore platform/all priority/normal status/under-investigation Issue is under investigation labels Oct 12, 2018
Copy link
Contributor

@swapnilgm swapnilgm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks you for opening the PR. I know this is still in progress. But PTAL at the suggested changes.

chart/templates/etcd-statefulset.yaml Outdated Show resolved Hide resolved
chart/templates/_versions.tpl Outdated Show resolved Hide resolved
"Failed")
continue;;
"Successful")
exec etcd --data-dir=/var/etcd/data \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was anyways thinking of using --config-file parameter pointing to etcd.conf.yaml which looks better. So lets add another confimap data field called etcd.conf.yaml and move the parameters there. We will probably mount this file under /var/etcd/config. Also, bootstrap.sh file under /var/etcd/bin

Copy link
Contributor Author

@bergerx bergerx Oct 12, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree on using etcd.conf.yaml is a better approach and I was actually about to compleet this change request. But I just realised that this file's structure seems to be in sync with current examples. Once we have the chart in the repo, we'll need to update also the chart with each change in the examples.

Doing the suggested changes will diverge the structure in the examples, and will make the chart relatively harder to maintain in long term. Rather than having chart best practices, at this stage it seems to be more important to me to keep the chart maintenance more hassle-free in short term. We can start doing such improvements after seeing the chart does worth spending such maintenance overhead. I'm just concerned about keeping the chart up-to-date as the project evolves.

Here are the recent changes happened in the examples directory, there seems to be regular updates on examples for a while, i'm not sure if that will change soon:

$ git lg example/
* 6712697 - Update examples (4 months ago) <Swapnil Mhamane>
* c45e7b3 - Update changelog (5 months ago) <Swapnil Mhamane>
* ae89094 - Add generate-example script (5 months ago) <Swapnil Mhamane>
* 7711680 - Fix to make sure etcd is not running when the backup container is failing to take a backup to cloud. Doesnt need to restart the backup container but keep retrying instead keeping etcd down. (5 months ago) <I308301>
* 32a226b - TLS Support for snapshotter. (6 months ago) <I308301>
* 4d03f04 - Fix: check member directory instead of data directory. Cannot delete data directory as its the mount point. (6 months ago) <I308301>
* 779f6b3 - Changed data directory deletion to delete contents in the directory instead of the directory. (6 months ago) <I308301>
* 926f0ad - Remove dependency of gcs snapstore on project-id enviornment variable (7 months ago) <Swapnil Mhamane>
* ddd683c - GCS object store support. (7 months ago) <I308301>
* a1301a5 - Add store prefix option (7 months ago) <Swapnil Mhamane>
* b7e95fc - Asynchronize http call for initialization (7 months ago) <Swapnil Mhamane>
* 0e0ad3a - Expose etcd initialiation functionaliy over http (7 months ago) <Swapnil Mhamane>
* c4449af - Adding comments in example statefulset yaml. (8 months ago) <I308301>
* 7bb28ba - Integrating restore code. (8 months ago) <I308301>
* 52ed7bd - Refactor code to have single root command (8 months ago) <Swapnil Mhamane>
* e8bb35b - Add restore support (8 months ago) <Swapnil Mhamane>

Would you still prefer me to proceed with this change?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, i see the examples are generated from hack/templates/etcd-statefulset.yaml.tpl, I think it would be even better to make this file a synchronized structural copy of it.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once we moved to chart, I don't feel need of maintaining separate example yamls. You can simply remove those. So, in my opinion you can go ahead and use etcd.conf.yaml.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool, thanks for the clarification, i'll follow up.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I pushed the last bit in commit cc11fe7, @mvladev can you have another look?

chart/templates/etcd-statefulset.yaml Show resolved Hide resolved
chart/values.yaml Show resolved Hide resolved
Copy link
Contributor

@swapnilgm swapnilgm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the changes. I have suggested some more changes, following the document. PTAL. We will incorporate template structural changes in gardener as well. So don't worry about diverging from gardener :).

Please add a support for no-SSL option as mentioned in one of the comments.

- -ec
- ETCDCTL_API=3
- etcdctl
- --config-file /var/etcd/config/etcd.conf.yaml
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add = symbol. --config-file=/var/etcd/config/etcd.conf.yaml


backup:
schedule: "*/5 * * * *" # cron standard schedule
maxBackups: 7 # Maximum number of backups to keep (may change in future)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add field

# garbageCollectionPolicy mentions the policy for garbage collecting old backups. Allowed values are Exponential(default), LimtBased.
`garbageCollectionPolicy`: `Exponential`

chart/templates/etcd-statefulset.yaml Show resolved Hide resolved
etcd-backup-restore: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.3.0

backup:
schedule: "*/5 * * * *" # cron standard schedule
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will please comments as per the standard mentioned here.

@@ -0,0 +1,28 @@
---
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rename it to etcd-bootstrap-configmap.yaml.

@@ -0,0 +1,48 @@
---
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rename it to etcd-config-configmap.yaml. Actually merge this with etcd-bootstrap-configmap.yaml.

@@ -0,0 +1,186 @@
apiVersion: v1
kind: Service
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Create separate file named etcd-client-service.yaml for service.

# CN should be "etcd-<role>", and
# hosts should include "etcd-<role>-0"
# * tlsClientSecretName should have "tls.crt" and "tls.key"
tlsCaSecretName: ca-etcd
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about restructuring it as:

tls:
 caSecret: ca-etcd
 serverSecret: etcd-server-tls
 clientSecret: etcd-client-tls

Also, internally, in template files, have if-check {{ if .Value.tls }} then only embed tls related code. Otherwise go without SSL.

@swapnilgm swapnilgm added the needs/second-opinion Needs second review by someone else label Oct 15, 2018
Copy link
Contributor

@georgekuruvillak georgekuruvillak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you very much for the nicely done PR. Please do go through our review comments.

chart/templates/etcd-statefulset.yaml Outdated Show resolved Hide resolved
chart/templates/configmap-etcd-config.yaml Outdated Show resolved Hide resolved
@bergerx
Copy link
Contributor Author

bergerx commented Oct 22, 2018

@georgekuruvillak would you want me to include this change into this PR as well:
https://github.com/gardener/gardener/pull/470/files#diff-eac731a79c5907a2bc7abf8b37d745b1R12

I don't really understand what this part does, can you elaborate on why this mv is required.

@swapnilgm
Copy link
Contributor

swapnilgm commented Oct 24, 2018

@bergerx Ignore the mv part. That was for backward compatibility on gardener. We are changing PV directory structure. Initially the mount path from /var/etcd/data. And this was passed as data directory to etcd. So, etcd was was creating member directory at root of PV. Now, instead we will be pass /var/etcd/data/new.etcd as data directory to etcd. So, in PV the member directory we will be inside the /new.etcd instead of /.

From helm PR's perspective, no need to change bootstrap.sh script. Just make sure you pass /var/etcd/data/new.etcd as data directory to etcd and sidecar instead of /var/etcd/data.

The change is being done in favour of #58

@swapnilgm
Copy link
Contributor

Hi @bergerx,

I haven't seen update on this PR for long time. I can understand that you might be busy. Will you please take look into this and address the comments?

Thanks and regards,
Swapnil

@bergerx
Copy link
Contributor Author

bergerx commented Dec 9, 2018

Sorry for being late, but i've been stuck with an issue that i can't really understand the reason.

When i provide an empty tls field in the values file:

  • backup-restore transitions to progress and stuck there after going through several different statuses, and
  • etcd container stuck in the query loop.

Below you can see some logs.

backup-restore:

[minikube:]etcd-backup-restore: (add-helm-chart u=) $ kubectl logs etcd-for-test-0 backup-restore --timestamps  | head -n 50
2018-12-09T09:11:28.908846027Z time="2018-12-09T09:11:28Z" level=info msg="Regsitering the http request handlers..."
2018-12-09T09:11:28.908948455Z time="2018-12-09T09:11:28Z" level=info msg="Starting the http server..."
2018-12-09T09:11:28.908954391Z time="2018-12-09T09:11:28Z" level=info msg="Created snapstore from provider: Local"
2018-12-09T09:11:28.908957694Z time="2018-12-09T09:11:28Z" level=info msg="Validating schedule..."
2018-12-09T09:11:28.908960778Z time="2018-12-09T09:11:28Z" level=info msg="Probing etcd..."
2018-12-09T09:11:28.914844537Z time="2018-12-09T09:11:28Z" level=info msg="Responding to status request with: New"
2018-12-09T09:11:28.92214621Z time="2018-12-09T09:11:28Z" level=info msg="Received start initialization request."
2018-12-09T09:11:28.922162545Z time="2018-12-09T09:11:28Z" level=info msg="Updating status from New to Progress"
2018-12-09T09:11:28.922166376Z time="2018-12-09T09:11:28Z" level=info msg="Checking for data directory structure validity..."
2018-12-09T09:11:28.922267235Z time="2018-12-09T09:11:28Z" level=info msg="Checking for data directory files corruption..."
2018-12-09T09:11:28.922271145Z time="2018-12-09T09:11:28Z" level=info msg="Verifying snap directory..."
2018-12-09T09:11:28.922274072Z time="2018-12-09T09:11:28Z" level=info msg="Verifying WAL directory..."
2018-12-09T09:11:28.922980782Z time="2018-12-09T09:11:28Z" level=info msg="Verifying DB file..."
2018-12-09T09:11:28.923953244Z time="2018-12-09T09:11:28Z" level=info msg="Data directory valid."
2018-12-09T09:11:28.923963484Z time="2018-12-09T09:11:28Z" level=info msg="Successfully initialized data directory \"/var/etcd/data\" for etcd."
2018-12-09T09:11:28.924477313Z time="2018-12-09T09:11:28Z" level=info msg="Responding to status request with: Successful"
2018-12-09T09:11:28.924487402Z time="2018-12-09T09:11:28Z" level=info msg="Updating status from Successful to New"
2018-12-09T09:11:29.554236852Z time="2018-12-09T09:11:29Z" level=info msg="Responding to status request with: New"
2018-12-09T09:11:29.600232285Z time="2018-12-09T09:11:29Z" level=info msg="Received start initialization request."
2018-12-09T09:11:29.600267986Z time="2018-12-09T09:11:29Z" level=info msg="Updating status from New to Progress"
2018-12-09T09:11:29.602076293Z time="2018-12-09T09:11:29Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:30.606320287Z time="2018-12-09T09:11:30Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:31.709817057Z time="2018-12-09T09:11:31Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:32.803139794Z time="2018-12-09T09:11:32Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:33.903213376Z time="2018-12-09T09:11:33Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:34.906777625Z time="2018-12-09T09:11:34Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:36.100801493Z time="2018-12-09T09:11:36Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:37.105670689Z time="2018-12-09T09:11:37Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:38.109584781Z time="2018-12-09T09:11:38Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:39.201919599Z time="2018-12-09T09:11:39Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:40.30431298Z time="2018-12-09T09:11:40Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:41.404928083Z time="2018-12-09T09:11:41Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:42.504945757Z time="2018-12-09T09:11:42Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:43.605914803Z time="2018-12-09T09:11:43Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:44.704538039Z time="2018-12-09T09:11:44Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:45.802893933Z time="2018-12-09T09:11:45Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:46.904320385Z time="2018-12-09T09:11:46Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:48.0048498Z time="2018-12-09T09:11:48Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:49.103634004Z time="2018-12-09T09:11:49Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:50.205833237Z time="2018-12-09T09:11:50Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:51.302103158Z time="2018-12-09T09:11:51Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:52.399949652Z time="2018-12-09T09:11:52Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:53.408414518Z time="2018-12-09T09:11:53Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:54.410722557Z time="2018-12-09T09:11:54Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:55.50394154Z time="2018-12-09T09:11:55Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:56.603147104Z time="2018-12-09T09:11:56Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:57.703190077Z time="2018-12-09T09:11:57Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:58.706546026Z time="2018-12-09T09:11:58Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:11:59.803774123Z time="2018-12-09T09:11:59Z" level=info msg="Responding to status request with: Progress"
2018-12-09T09:12:00.904743462Z time="2018-12-09T09:12:00Z" level=info msg="Responding to status request with: Progress"
[minikube:]etcd-backup-restore: (add-helm-chart u=) $

etcd:

[minikube:]etcd-backup-restore: (add-helm-chart u=) $ kubectl logs etcd-for-test-0 etcd --timestamps  | head -n 50
2018-12-09T09:11:29.553509624Z Connecting to localhost:8080 (127.0.0.1:8080)
2018-12-09T09:11:29.555141265Z   HTTP/1.1 200 OK
2018-12-09T09:11:29.555153413Z   Date: Sun, 09 Dec 2018 09:11:29 GMT
2018-12-09T09:11:29.555156859Z   Content-Length: 3
2018-12-09T09:11:29.555159669Z   Content-Type: text/plain; charset=utf-8
2018-12-09T09:11:29.555162412Z   Connection: close
2018-12-09T09:11:29.555165621Z
2018-12-09T09:11:29.555168338Z status               100% |*******************************|     3   0:00:00 ETA
2018-12-09T09:11:29.555172157Z
2018-12-09T09:11:29.555553846Z Connecting to localhost:8080 (127.0.0.1:8080)
2018-12-09T09:11:29.600457937Z   HTTP/1.1 200 OK
2018-12-09T09:11:29.600482476Z   Date: Sun, 09 Dec 2018 09:11:29 GMT
2018-12-09T09:11:29.600487558Z   Content-Length: 0
2018-12-09T09:11:29.600491761Z   Content-Type: text/plain; charset=utf-8
2018-12-09T09:11:29.600495738Z   Connection: close
2018-12-09T09:11:29.600499562Z
2018-12-09T09:11:29.6005033Z
2018-12-09T09:11:29.60135755Z Connecting to localhost:8080 (127.0.0.1:8080)
2018-12-09T09:11:29.602209537Z   HTTP/1.1 200 OK
2018-12-09T09:11:29.602221568Z   Date: Sun, 09 Dec 2018 09:11:29 GMT
2018-12-09T09:11:29.602225618Z   Content-Length: 8
2018-12-09T09:11:29.602229258Z   Content-Type: text/plain; charset=utf-8
2018-12-09T09:11:29.602232868Z   Connection: close
2018-12-09T09:11:29.60223633Z
2018-12-09T09:11:29.602296433Z status               100% |*******************************|     8   0:00:00 ETA
2018-12-09T09:11:29.602304975Z
2018-12-09T09:11:30.60573108Z Connecting to localhost:8080 (127.0.0.1:8080)
2018-12-09T09:11:30.606210103Z   HTTP/1.1 200 OK
2018-12-09T09:11:30.606325856Z   Date: Sun, 09 Dec 2018 09:11:30 GMT
2018-12-09T09:11:30.606461224Z   Content-Length: 8
2018-12-09T09:11:30.606469952Z   Content-Type: text/plain; charset=utf-8
2018-12-09T09:11:30.606540043Z   Connection: close
2018-12-09T09:11:30.60654728Z
2018-12-09T09:11:30.69972453Z status               100% |*******************************|     8   0:00:00 ETA
2018-12-09T09:11:30.699758057Z
2018-12-09T09:11:31.703212381Z Connecting to localhost:8080 (127.0.0.1:8080)
2018-12-09T09:11:31.709751092Z   HTTP/1.1 200 OK
2018-12-09T09:11:31.709773758Z   Date: Sun, 09 Dec 2018 09:11:31 GMT
2018-12-09T09:11:31.709777198Z   Content-Length: 8
2018-12-09T09:11:31.709780078Z   Content-Type: text/plain; charset=utf-8
2018-12-09T09:11:31.709782897Z   Connection: close
2018-12-09T09:11:31.709785633Z
2018-12-09T09:11:31.710112797Z status               100% |*******************************|     8   0:00:00 ETA
2018-12-09T09:11:31.710121705Z
2018-12-09T09:11:32.802284418Z Connecting to localhost:8080 (127.0.0.1:8080)
2018-12-09T09:11:32.803371129Z   HTTP/1.1 200 OK
2018-12-09T09:11:32.803476549Z   Date: Sun, 09 Dec 2018 09:11:32 GMT
2018-12-09T09:11:32.80348625Z   Content-Length: 8
2018-12-09T09:11:32.803548176Z   Content-Type: text/plain; charset=utf-8
2018-12-09T09:11:32.803722977Z   Connection: close
[minikube:]etcd-backup-restore: (add-helm-chart u=) $

@swapnilgm
Copy link
Contributor

swapnilgm commented Dec 11, 2018

Sorry for being late

No issues.

i've been stuck with an issue that i can't really understand the reason.

Ahh. You probably facing this issue with backup sidecar image version 0.3.x. which had one of the unhandled race condition. Will you please change image version to 0.4.0 and try?

Looks like you updated the PR. I'll review it soon.

@bergerx
Copy link
Contributor Author

bergerx commented Dec 11, 2018 via email

@bergerx bergerx force-pushed the add-helm-chart branch 2 times, most recently from 5c4811f to 70c0f41 Compare December 12, 2018 18:41
@bergerx
Copy link
Contributor Author

bergerx commented Dec 12, 2018

@swapnilgm thanks for the tip, seems like working fine now PTAL

Copy link
Contributor

@swapnilgm swapnilgm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for updating the PR. Overall LGTM. I have suggested some final minor changes. Please address those. Also, please rebase it to latest master.

name: etcd-{{.Values.role}}

# Path to the data directory.
data-dir: /var/etcd/data
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will you please change this to /var/etcd/data/new.etcd. Otherwise restore will fail.

etcd: quay.io/coreos/etcd:v3.3.10

# etcd-backup-restore image to use
etcd-backup-restore: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.3.1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please update tag to: 0.4.0

# whole tls section if you dont want to use tls for the etcd.
tls:

# caSecret should point a pre-crearted Opaque secret that includes a
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

type: s/crearted/created/g

# secretKeyRef:
# name: etcd-backup
# key: "secretAccessKey"
# - name: "AWS_ACCESS_KEY_ID
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please append ending quote ".

- --max-backups={{ .Values.backup.maxBackups }}
- --garbage-collection-policy={{ .Values.gabageCollectionPolicy }}
{{- end }}
- --data-dir=/var/etcd/data
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please change this to /var/etcd/data/new.etcd.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No. Mount path should be /var/etcd/data. Its correct. Reason here is, as per recent change restore operation happens at <etcd-data-dir-path>.part i.e in this case /var/etcd/data/new.etcd.part. Once restoration there is succeded, we rename it to actual <etcd-data-dir> i.e. /var/etcd/data/new.etcd. So, if we change mount point to /var/etcd/data/new.etcd the rename operation will fail because of permission.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the confirmation.

@swapnilgm swapnilgm added status/in-progress Issue is in progress/work and removed needs/second-opinion Needs second review by someone else labels Dec 13, 2018
@swapnilgm swapnilgm removed the status/under-investigation Issue is under investigation label Dec 13, 2018
@bergerx bergerx force-pushed the add-helm-chart branch 2 times, most recently from 1e707fb to ff6811d Compare December 14, 2018 18:40
@bergerx
Copy link
Contributor Author

bergerx commented Dec 14, 2018

Addressed the comments, squashed, and rebased.

@bergerx
Copy link
Contributor Author

bergerx commented Dec 14, 2018

Oh please hold, i just found something i missed about the .Values.backup.backupSecret, looking into that.

Copied and modified teh helm chart available in Gardener repo.
@bergerx
Copy link
Contributor Author

bergerx commented Dec 15, 2018

Apparently, I closed the backup secret condition at the wrong place, and also forcing the backup secret not to be used if storageProvider is Local:
https://github.com/gardener/etcd-backup-restore/compare/ff6811d93a90109ee44935f883e3fd23f6e979e0..805b0abfda21ff6b2ec49bda8b148e8328475566

Seems like working properly with or without TLS now, already planning to use this it in https://github.com/gardener/gardener/pull/606/files#diff-c0fdeb77a0802ee74c1c55237b2d4bfeR193

This is now ready to be reviewed and merged.

@swapnilgm swapnilgm added reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) reviewed/lgtm Has approval for merging and removed needs/changes Needs (more) changes reviewed/do-not-merge Has no approval for merging as it may break things, be of poor quality or have (ext.) dependencies labels Dec 15, 2018
@gardener-robot-ci-1 gardener-robot-ci-1 added needs/ok-to-test Needs approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Dec 15, 2018
Copy link
Contributor

@swapnilgm swapnilgm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@swapnilgm swapnilgm merged commit 993d074 into gardener:master Dec 15, 2018
@bergerx bergerx deleted the add-helm-chart branch December 15, 2018 04:59
@PadmaB PadmaB modified the milestones: 0.4.1, --- Jan 23, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/etcd-backup-restore ETCD Backup & Restore exp/beginner Issue that requires only basic skills kind/enhancement Enhancement, improvement, extension needs/ok-to-test Needs approval for testing (check PR in detail before setting this label because PR is run on CI/CD) platform/all reviewed/lgtm Has approval for merging size/s Size of pull request is small (see gardener-robot robot/bots/size.py) status/in-progress Issue is in progress/work
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants