ํ์ฌ ๋ง์คํฐ(์ฒดํฌ์์ d5e1d01adafff7e42d985537b953f7d5ba506f47)๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ElasticSearch์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑ(php bin/console pim:installer:db --env=prod) ์ค๋ฅ๊ฐ ๋ฐ์ํ๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑ์ ๊ณ์ํ์ง ์์ต๋๋ค.
foo@akeneo-dev :~/pim-community-dev$ php bin/console pim:installer :db --env=prod
๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ์ค๋น
akeneo_pim
๋ผ๋ ์ฐ๊ฒฐ์ ๋ํด ์ญ์ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค
default๋ผ๋ ์ฐ๊ฒฐ์ ๋ํดakeneo_pim
๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋ค์์ต๋๋ค.
์ฃผ์: ์ด ์์ ์ ํ๋ก๋์ ํ๊ฒฝ์์ ์คํํ๋ฉด ์ ๋ฉ๋๋ค.๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ์์ฑ ์ค...
๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์์ฑ๋์์ต๋๋ค!
์ ๋ฐ์ดํธํ ์ฌํญ์ด ์์ต๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ด๋ฏธ ํ์ฌ ์ํฐํฐ ๋ฉํ๋ฐ์ดํฐ์ ๋๊ธฐํ๋์ด ์์ต๋๋ค.
Elasticsearch ์ธ๋ฑ์ค ์ฌ์ค์ [ElasticsearchCommon\Exceptions\NoNodesAvailableException]
ํด๋ฌ์คํฐ์ ํ์ฑ ๋ ธ๋๊ฐ ์์ต๋๋ค.
Ubuntu ์๋ฒ 17.04์ ๋ง์คํฐ ๋ฌธ์์ ๋ํ ํ์ฌ ์ ๋ณด ์กฐํฉ์ โโ์ฌ์ฉํ์ฌ ์ค์น
์๋ ํ์ธ์ @TheOnlyJoey ,
์ด ์ค๋ฅ๋ PIM์์ ๋ฐ์ํ๋ ๊ฒ์ด ์๋๋ผ Elasticsearch์์ ๋ฐ์ํ๋ ํ์ฑ ๋ ธ๋๋ฅผ ์ฐพ์ง ๋ชปํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ด ์ค๋ฅ์ ๊ด๋ จํ์ฌ Elasticsearch ํฌ๋ผ์์ ์ด๋ฏธ ์ ๊ธฐ๋ ๊ธฐ์กด ์ง๋ฌธ์ ์ดํด๋ณด๋ ๊ฒ์ด ์ข์ต๋๋ค.
https://github.com/elastic/elasticsearch-php/issues/519
https://github.com/elastic/elasticsearch-php/issues/300
Elasticsearch ๋ฌธ์:
https://www.elastic.co/start
https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started.html
์ด ์ ๋ณด๊ฐ ๋์์ด ๋๊ธธ ๋ฐ๋๋๋ค!
๋ฌธ์ ์ธ์ฌ,
์ฌ์ ์ด๋ฆ
ํค์ด ์นด๋ ,
๊ทธ๋์ ์ค์ ๋ก ์ด๋ฏธ ์ฌ๋ฌ ๋ฒ์ ์ ElasticSearch๋ฅผ ์๋ํ๊ณ ์ด๊ฒ์ด ๋ด ๋ก์ปฌ ๋ฒ์ ์ ๋ฌธ์ ๊ฐ ์๋์ ํ์ธํ์ต๋๋ค.
๋๋ ๋ํ ElasticSearch ๊ฐ๋ฐ์๋ค๊ณผ ์ฐ๋ฝ์ ์ทจํ๊ณ ๊ทธ๋ค์ ์๋ง๋ ์ด๊ฒ์ ์ผ๊ธฐํ๋ Akeneo์์์ ๊ตฌํ์ ๋ํด ์ธ๊ธํ์ต๋๋ค.
์๊ณก๊ฐ๋ ์ ๋น๋๋๋ฏ๋ก ElasticSearch๋ ์ฌ๋ฐ๋ฅด๊ฒ ๋น๋ ๋ฐ ์ค์ ๋ฉ๋๋ค.
2๊ฐ์ ๋ค๋ฅธ ์์คํ (Ubuntu 16.04 ๋ฐ Debian Sid)์์ ํ ์คํธํ์ผ๋ฉฐ ์ค์ ์ ๊ด๊ณ์์ด ๋ ๋ค ๋๊ฐ์ ๋ฌธ์ ๊ฐ ์์์ต๋๋ค.
์ด ์ค๋ฅ๋ Akeneo๊ฐ ์ฌ๋ฐ๋ฅธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑํ์ง ๋ชปํ๊ฒ ํฉ๋๋ค. ์ด๋ฌํ ์ ํ์ ์ค๋ฅ๋ ์ถ์ ๋ฉฐ์น ์ ์ ๋งค์ฐ ์น๋ช ์ ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
@TheOnlyJoey ,
์์คํ ํ์ผ ์ ๋ณด๋ฅผ ๊ณต์ ํ ์ ์์ต๋๊น?
๊ฐ์ฌ ํด์,
์ฌ์ ์ด๋ฆ
ํ ์คํธ๋ ์์คํ ์ Akeneo ๋ฌธ์(๋ง์คํฐ์์)์ ์ต์ ํจํค์ง๊ฐ ํฌํจ๋ Debian Sid์์ ์ข ์์ฑ์ด ์ค์น๋ Ubuntu 16.04์ ๋๋ค.
๋ํ ์ฒ์์๋ Ubuntu 17.04์์ ํ ์คํธ๋์์ต๋๋ค. ๋ชจ๋ ์์คํ ์ ๊ถ์ฅ๋๋ ๋๋ก PHP7.1์ ์ฌ์ฉํฉ๋๋ค.
@TheOnlyJoey ,
์ด ์ค๋ฅ๋ ์ผ๋ฐ์ ์ผ๋ก 'index_hosts' ๋งค๊ฐ๋ณ์('localhost:9200')์ ๊ธฐ๋ณธ๊ฐ์ ์ฌ์ฉํ ๋ ํ์๋๊ธฐ ๋๋ฌธ์ ์ฐ๊ฒฐ ๋ฌธ์ ์ ๊ด๋ จ๋ ๊ฒ์ผ ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
์๋ํ๋ ๊ตฌ์ฑ ๊ฐ์ '
app/config/parameters.yml์์ 'index_hosts' ๋งค๊ฐ๋ณ์๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
๋ฌธ์ ์ธ์ฌ,
์ฌ์ ์ด๋ฆ
๊ฐ์ ':@:'๋ก ๋ณ๊ฒฝํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๊ฐ ๋ํ๋ฉ๋๋ค.
[ElasticsearchCommon\Exceptions\InvalidArgumentException]
URI๋ฅผ ๊ตฌ๋ฌธ ๋ถ์ํ ์ ์์ต๋๋ค.
๋ํ https://github.com/akeneo/pim-community-dev/blob/master/app/config/parameters.yml.dist#L13 ์์ ๋ณผ ์ ์๋ฏ์ด index_hosts์ ๊ธฐ๋ณธ๊ฐ์ ' localhost:9200 '์ ๋๋ค.
์๋ ํ์ธ์ @TheOnlyJoey
์ฃ์กํฉ๋๋ค. ์ด์ ๋๊ธ์ ๊ฐ ํ์์ ๋ฌธ์ ๊ฐ ์์์ต๋๋ค.
์๋ํ๋ ๊ตฌ์ฑ ๊ฐ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
'<user>:<password>@<server>:<port>'
๊ทธ๊ฒ์ ์ค์ ๋ก ๊ธฐ๋ณธ์ ์ผ๋ก ' elastic:changeme@localhost :9200'์ ๋๋ค.
๋ฌธ์ ์ธ์ฌ,
์ฌ์ ์ด๋ฆ
ElasticSearch๊ฐ ์คํ ์ค์ธ์ง ํ์ธํ๊ฑฐ๋ ๊ฒฝ๊ณ ๊ฐ์๋ ๊ฒ ๊ฐ์ต๋๋ค. Composer๋ ์๋ ElasticSearch ์๋น์ค๋ฅผ ์ข
๋ฃ ํ ๊ฒ ๊ฐ์ต๋๋ค.
ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ ๋ก ๋ค์ ์์ํ๋ฉด ์ผ๋ฐ localhost:9200์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
์ฝ์ pim:installer :db ์คํฌ๋ฆฝํธ์์ ElasticSearch๊ฐ ์คํ ์ค์ธ์ง ํ์ธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ด๊ฒ์ด ์์ผ๋ฉด ์ค์น๊ฐ ์๋ฃ๋์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
aws ํ๋ ฅ์ ๊ฒ์ ํด๋ฌ์คํฐ๋ก akeneo๋ฅผ ์คํํ๋ ค๊ณ ํฉ๋๋ค... ์ ์
StaticNoPingConnectionPool.php ๋ผ์ธ 51:
ํด๋ฌ์คํฐ์ ํ์ฑ ๋ ธ๋๊ฐ ์์ต๋๋ค.
app/config/parameters.yml์์ index_host๋ฅผ aws vpc ๋์ ์ผ๋ก ๋ณ๊ฒฝํ์ต๋๋ค. ์๋ ์ฌ๋์ด ์์ต๋๊น?
ํ์์ ๊ฒฝ์ฐ app/config/parameters.yml์ index_host ๊ฐ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
localhost :9200
๊ทธ๋์ ๊ณต๋ฐฑ์ ์ ๊ฑฐํ๊ณ ์ด์ ์ ๋๋ก ์๋ํฉ๋๋ค.
localhost:9200
์๋ฃจ์ ์ port:80... aws๋ ํฌํธ 80์ ์ฌ์ฉํฉ๋๋ค...
์๋ ,
๋๋ ์ด๊ฒ์ ์ป๊ธฐ ์ํด ๋๋ฌด ๋ง์ ์๊ฐ์ ๋ญ๋นํ๋ค.
localhost:9200 ์ด ์๋ํ์ง ์์
๋ก์ปฌ ํธ์คํธ: 9200์ด ์๋ํ์ง ์์
akeneo๊ฐ ์์์์ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ ์ปจํ ์ด๋๋ก ๋ฐฐ์ก๋์ง ์๋ ์ด์ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
๋ฌธ์๋ฅผ ์ดํด๋ณด๋ค
https://docs.akeneo.com/3.0/install_pim/docker/installation_docker.html
๋น์ ์ parameters.yml.dist์์ ๋น์ ์ ์ค์ ํด์ผ
Elastic:changeme@elasticsearch :9200
๊ธํ:
์ฉ๊ธฐ๋ฅผ ์ฒญ์ํ๋ค
docker-compose down -v
์ปจํ
์ด๋ ์์
docker-compose up -d
bin/docker/pim-dependencies.sh
bin/docker/pim-initialize.sh
Elasticsearch๊ฐ ์๋ํด์ผ ํฉ๋๋ค.
๋ฐ๋ผ์ ElasticSearch Head google chrome ํ๋ฌ๊ทธ์ธ์ ์ฐ๊ฒฐ ๋ฌธ์์ด์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
(์ฌ๊ธฐ์์ Elasticsearch ๋จธ์ ์ด ์คํ ์ค์ธ์ง ํ์ธํ ์๋ ์์ต๋๋ค)
http://localhost :9210/
Elastic : Elasticsearch์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ด๋ฆ, ์๋ฌด๋ฐ๋ ์ค์ ๋์ง ์์
changeme : Elasticsearch์ ๊ธฐ๋ณธ ๋น๋ฐ๋ฒํธ, ์๋ฌด๋ฐ๋ ์ค์ ๋์ง ์์
elasticsearch : docker-compose.yml์์ "elasticsearch"๋ฅผ ์ฐพ์์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์ ์ฌ์ฉ๋๋ ํธ์คํธ ์ด๋ฆ์
๋๋ค.
9200: ์ฌ์ฉ๋ ํฌํธ๊ฐ
docker-compose.override.yml
- '9210:9200'
9200 ๋์ปค ๋จธ์ ํฌํธ
ํธ์คํธ ์์คํ
์์ ์ฐ๊ฒฐํ๊ธฐ ์ํ 9210 ์ธ๋ถ ํฌํธ
aws ํ๋ ฅ์ ๊ฒ์ ํด๋ฌ์คํฐ๋ก akeneo๋ฅผ ์คํํ๋ ค๊ณ ํฉ๋๋ค... ์ ์
StaticNoPingConnectionPool.php ๋ผ์ธ 51:ํด๋ฌ์คํฐ์ ํ์ฑ ๋ ธ๋๊ฐ ์์ต๋๋ค.
app/config/parameters.yml์์ index_host๋ฅผ aws vpc ๋์ ์ผ๋ก ๋ณ๊ฒฝํ์ต๋๋ค. ์๋ ์ฌ๋์ด ์์ต๋๊น?
์ด๊ฑฐ ๋ฒ์จ ํ์์ด?
@Rud5G ์... aws๋ ํฌํธ 80์ ์ฌ์ฉํฉ๋๋ค...
์ ๋ฐ, ๋๊ตฐ๊ฐ ๋๋ฅผ ๋์ธ ์ ์์ต๋๊น? ๋๋ ๊ฐ์ ๋์ ์ ์ง๋ฉดํด ์๊ณ ์๋ฌด๋ฐ ์ง์ ๋ ์์ด ๋ช ์๊ฐ ๋์ ๊ทธ ์ผ์ ํ๊ณ ์์ต๋๋ค.
`StaticNoPingConnectionPool.php ๋ผ์ธ 53:
ํด๋ฌ์คํฐ์ ํ์ฑ ๋ ธ๋๊ฐ ์์ต๋๋ค.
๋ช
๋ น์ด ์ค๋ฅ ์ฝ๋์ ํจ๊ป ์ข
๋ฃ๋จ: 1.
PIM ์ค์น ์ค ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค. ๋ช
๋ น์ด ์ค๋ฅ ์ฝ๋์ ํจ๊ป ์ข
๋ฃ๋จ: 1.
`
์์ ๋์ด๋ ๋ชจ๋ ์ ์๋ ์๋ฃจ์
์ ์ํํ์ง๋ง ๋ณ๊ฒฝ ์ฌํญ์ด ์์ต๋๋ค. ์ ๋ Akeneo ๋ฒ์ 3.2๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
ํ์์ ๊ฒฝ์ฐ app/config/parameters.yml์ index_host ๊ฐ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
localhost :9200
๊ทธ๋์ ๊ณต๋ฐฑ์ ์ ๊ฑฐํ๊ณ ์ด์ ์ ๋๋ก ์๋ํฉ๋๋ค.
localhost:9200