29
KAN DU FÅ DATA TILBAKE IGJEN FRA DINE ELASTICSEARCH SNAPSHOTS? JavaZone 2016 Jan Fredrik Wedén

Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

Embed Size (px)

Citation preview

Page 1: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

KAN DU FÅ DATA TILBAKE IGJENFRA DINE ELASTICSEARCH

SNAPSHOTS?

JavaZone 2016Jan Fredrik Wedén

Page 2: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

WHAT ISSNAPSHOT/RESTORE?

Page 3: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

PUT/_snapshot/my_repo{"type":"fs|url |s3|azure|hdfs",settings…

}

PUT/_snapshot/my_repo/snap_1

Page 4: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

PUT/_snapshot/my_repo{"type":"fs|url |s3|azure|hdfs",settings…

}

PUT/_snapshot/my_repo/snap_1

GET/_snapshot/my_repo/snap_1

DELETE/_snapshot/my_repo/snap_1

Page 5: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

Trusted dev

Elasticsearch

UTV

Elasticsearch

PROD

Page 6: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

Evil hacker Trusted dev Internalforgivinggateway

Elasticsearch

UTV

Elasticsearch

PROD

Page 7: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?
Page 8: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?
Page 9: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?
Page 10: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?
Page 11: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?
Page 12: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?
Page 13: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

FIND THESNAPSHOT TO

RESTORE

Page 14: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

GET_snapshot/my_repo/_all

GET_snapshot/_all

Page 15: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

GET_snapshot/my_repo/_all

GET_snapshot/my_repo/snap_1

GET_snapshot/my_repo/snap_1/_status

GET_snapshot/_all

Page 16: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

RESTOREEVERYTHING

INTO THE FIERYCLUSTER FROM

WHENCE ITCAME

Page 17: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

POST_all/_close

Page 18: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

POST_all/_close

POST/_snapshot/my_repo/snap_1/_restore{"indices":"config",…

}

Page 19: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

RESTORE TO ANENTIRELY NEW

CLUSTER

Page 20: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

PUT/_snapshot/my_utv_repo{"type":"url","settings":{"url":"location/of/prod"

}}

Page 21: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

DELETE_all

PUT/_snapshot/my_utv_repo{"type":"url","settings":{"url":"location/of/prod"

}}

Setting to allow DELETE<*|_all> should always be disabled in PROD, and preferably in all envs.

Page 22: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

DELETE_all

PUT/_snapshot/my_utv_repo{"type":"url","settings":{"url":"location/of/prod"

}}

POST/_snapshot/my_utv_repo/snap_1/_restore{"indices":"config,…",…

}

Setting to allow DELETE<*|_all> should always be disabled in PROD, and preferably in all envs.

Page 23: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

RESTORE TOTHE SAME

CLUSTER WITHRENAMING

Page 24: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

POST/_snapshot/my_repo/snap_1/_restore{"indices":"config","include_global_state":false,"rename_pattern":"(.+)","rename_replacement":"restored_$1”

}

Page 25: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

POST/_snapshot/my_repo/snap_1/_restore{"indices":"config","include_global_state":false,"rename_pattern":"(.+)","rename_replacement":"restored_$1”

}

GET/restored_config/global_type/super_important_doc

Page 26: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

POST/_snapshot/my_repo/snap_1/_restore{"indices":"config","include_global_state":false,"rename_pattern":"(.+)","rename_replacement":"restored_$1”

}

GET/restored_config/global_type/super_important_doc

PUT/config/global_type/super_important_doc{theGETdataabove}

Page 27: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

POST/_snapshot/my_repo/snap_1/_restore{"indices":"config","include_global_state":false,"rename_pattern":"(.+)","rename_replacement":"restored_$1”

}

GET/restored_config/global_type/super_important_doc

PUT/config/global_type/super_important_doc{theGETdataabove}

DELETE/restored_config

Page 28: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?
Page 29: Kan du få data tilbake igjen fra dine Elasticsearch snapshots?

CARRY ON…

Jan Fredrik Wedén

@jfweden