Gibbs Kim's playground

[ElasticStack-32] Elasticsearch (On-premise) to Elasticsearch (Cloud) through Logstash 본문

Tech 기록지/Elastic Stack

[ElasticStack-32] Elasticsearch (On-premise) to Elasticsearch (Cloud) through Logstash

Lio Grande 2021. 3. 3. 14:40

Elasticsearch Cloud로 데이터를 구축 시, 기존 ES (On-premise)에서 데이터를 가져와야하는 경우가 발생합니다.

이때 로그스태시를 활용하여 데이터를 적재할 수 있습니다.

 

input {
    elasticsearch {
        hosts => "localhost:9200"
        index => "local_idx"
        query => '{ "query": { "match_all": {} } }'
    }
}

filter {

}

output {
    elasticsearch {
        cloud_id => "Deploy명:Key값"       
        cloud_auth => "elastic:패스워드"
        ssl => true
        index => "cloud_idx"
    }
}

기존 서버에서 구동중인 ES (On-premise)의 인덱스명을 'local_idx'로 가정합니다.

output에서 cloud_id 정보는 Elastic cloud에서 확인 가능합니다.

(cloud.elastic.co -> 로그인 후 'Deployment' 클릭 후 확인 가능)

 

cloud_auth에 관련된 정보의 ID는 'elastic'으로 고정입니다.

패스워드는 UI에서 초기화 하면서 확인이 가능하며 키값은 랜덤하게 생성(generate)되기 때문에 관련 정보를 기록하거나 파일로 저장해두어야 합니다. (패스워드 예시 : KaWqck9Ubas-czx...)