---
title: Kibana migration
tags: Kibana
description: View the slide with "Slide Mode".
---
# Kibana migration
## [<font color=blue>Export objects API</font>](https://www.elastic.co/guide/en/kibana/7.x/saved-objects-api-export.html)
#### 指令
```htmlmixed=
curl -X POST "localhost:5601/api/saved_objects/_export" -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d'
{
"type": "dashboard"
}
'
```
#### 結果
```jsonld=
{
"attributes":{
"description":"",
"hits":0,
"kibanaSavedObjectMeta":{
"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[]}"
},
"optionsJSON":"{\"useMargins\":true,\"hidePanelTitles\":false}",
"panelsJSON":"[{\"gridData\":{\"w\":24,\"h\":15,\"x\":0,\"y\":0,\"i\":\"1\"},\"version\":\"7.3.2\",\"panelIndex\":\"1\",\"embeddableConfig\":{},\"panelRefName\":\"panel_0\"},{\"gridData\":{\"w\":24,\"h\":15,\"x\":24,\"y\":0,\"i\":\"2\"},\"version\":\"7.3.2\",\"panelIndex\":\"2\",\"embeddableConfig\":{},\"panelRefName\":\"panel_1\"},{\"gridData\":{\"w\":24,\"h\":15,\"x\":0,\"y\":15,\"i\":\"3\"},\"version\":\"7.3.2\",\"panelIndex\":\"3\",\"embeddableConfig\":{},\"panelRefName\":\"panel_2\"}]",
"timeRestore":false,
"title":"[es-test]New Dashboard2",
"version":1
},
"id":"54e5a620-77af-11ea-ab37-0d506aa29a78",
"migrationVersion":{
"dashboard":"7.3.0"
},
"references":[
{
"id":"8e1567c0-77a8-11ea-ab37-0d506aa29a78",
"name":"panel_0",
"type":"visualization"
},
{
"id":"587bf070-77a8-11ea-ab37-0d506aa29a78",
"name":"panel_1",
"type":"search"
},
{
"id":"8e1567c0-77a8-11ea-ab37-0d506aa29a78",
"name":"panel_2",
"type":"visualization"
}
],
"type":"dashboard",
"updated_at":"2020-04-06T02:35:51.554Z",
"version":"WzE1LDFd"
}
```
### [type](https://www.elastic.co/guide/en/kibana/7.x/saved-objects-api-get.html)
1. visualization
1. dashboard
1. search
1. index-pattern
1. config
1. timelion-sheet
### [Import objects API](https://www.elastic.co/guide/en/kibana/7.x/saved-objects-api-import.html)
>[name=昱齊]順序很重要!要先有index-pattern -> search -> visualzation -> dashboard
---
>[name=昱齊] space/tenancy/tenants呢
>[name=昱齊] tenant[啟動](https://opendistro.github.io/for-elasticsearch-docs/docs/security-access-control/multi-tenancy/)
>[name=昱齊] open distro的tenant目前有bug, [tenant migration index - issue 102](https://github.com/opendistro-for-elasticsearch/security-kibana-plugin/issues/102)
### index `.kibana_1`存什麼
- 升版時才會用到,Saved object migrations
- 系統會自動處理不同版本object的問題
> <font color=blue>Saved objects are stored</font> in an index named .kibana_N, where N is a number that increments over time as Kibana is upgraded. The index alias <font color=blue>.kibana</font> points to the latest up-to-date index for a given install.
[官方文件](https://www.elastic.co/guide/en/kibana/7.3/upgrade-migrations.html)
>[name=昱齊] 所以直接搬移index即可全部物件轉移嗎?
### 盤點資料
1. Discoveries
1. dashboards
1. visualizations
1. index patterns
1. user space
---
## 網頁操作
1. #### "FROM"-instance:
```
Settings -> Objects -> Export all Discoveries
Settings -> Objects -> Export all Visualizations
Settings -> Objects -> Export all Dashboards
```
2. #### "TO"-instance:
```
Settings -> Objects -> Import all Discoveries
Settings -> Objects -> Import all Visualizations
Settings -> Objects -> Import all Dashboards
```
## <font color=#F0B5A5>指令操作</font>
```
# export
$ curl -u elastic:changeme http://localhost:5601/s/marketing/api/kibana/dashboards/export?dashboard=d203dd90-deac-11e8-869e-d73106bbd5ad > export.json
# import
$ curl -H "Content-Type: application/json" -H "kbn-xsrf: true" -u elastic:changeme http://localhost:5601/s/sales/api/kibana/dashboards/import --data-binary @export.json
```
[出處](https://www.elastic.co/blog/how-to-migrate-to-kibana-spaces)