키보드워리어

[Docker]Network정리, elasticsearch에 붙이기 본문

도커&쿠버네티스

[Docker]Network정리, elasticsearch에 붙이기

꽉 쥔 주먹속에 안경닦이 2023. 12. 2. 17:16
728x90
docker에서 컨테이너로 실행되는 서버를 docker 내 사설
IP(172. 10. 와 같은 대역이 아닌)가
192.x.x.x로 하려면 어떻게 해야 하는가?

이것에 대해 알아볼게요.

 

먼저 주의사항입니다.

 

🔥주의사항

컨테이너 ip주소를 지정하게 되면 서브넷, 게이트웨이 주소( 192.x.x.1)를 설정하는데 이렇게하면 범위상 자동지정은 192.x.x.x2번부터 시작됨. 이미 운영중인 ip 주소로 지정하게 되면 잘 돌아가고 있는 서버가 다운되니 주의한다.

 

docker-compose.yml에서 설정을 지정해주면 가능합니다.

그중 일부입니다.

 

전체코드 바로가기 

    networks:
    elastic:
        driver: bridge
        ipam:
        config:
            - subnet: 192.x.x.0/24  ## 서브넷은 내가 일할 수 있는 범위 24는 bit이며 255.255.255.0을 의미함
            gateway: 192.x.x.1 ## gateway는 사내 192.x.x.1로 지정되어 있음​

1. 맨아래 networks 지정에는 네트워크(elastic)의 세세한 설정들(subnet, gateway)을 지정

 

  networks:
      elastic:
        ipv4_address: 192.x.x.x

 

2. services안에 application들의 network도 지정

 

Q) 실제 해당 서비스를 할당해줄 수 있는가?

A) 네 elasticsearch를 구성해 보겠습니다. 2번, 3번, 4번을 사용.

 

1. docker 프로세스 확인

PS C:\Users\keyboardwarrior\docker> docker ps

 

2. 네트워크 확인

PS C:\Users\keyboardwarrior\docker> docker network inspect cluster_elastic

 

[
        {
            "Name": "cluster_elastic",
            "Id": "fc7c0bae1dexx",
            "Created": "2023-11-22T03:02:07.398067932Z",
            "Scope": "local",
            "Driver": "bridge",
            "EnableIPv6": false,
            "IPAM": {
                "Driver": "default",
                "Options": null,
                "Config": [
                    {
                        "Subnet": "192.x.x.0/24",
                        "Gateway": "192.x.x.1"
                    }
                ]
            },
            "Internal": false,
            "Attachable": false,
            "Ingress": false,
            "ConfigFrom": {
                "Network": ""
            },
            "ConfigOnly": false,
            "Containers": {
                "4d553d6d6xafe36": {
                    "Name": "es03",
                    "EndpointID": "5d349e6a7536x54e6bf78587e1a302f",
                    "MacAddress": "02:42:x:db:5b",
                    "IPv4Address": "192.x.x.2/24",
                    "IPv6Address": ""
                },
                "9261a32dxb6ac26c115e9": {
                    "Name": "kibana01",
                    "EndpointID": "78dxfe3bded3cc70f1f",
                    "MacAddress": "02:x:db:02",
                    "IPv4Address": "192.x.x.5/24", 🧨#kibana는 지정을 안해주니 자동으로 192.x.x.5:5601로 설정되었네요
                    "IPv6Address": ""
                },
                "c72a3f685x8e9b75ceb42a4a6d": {
                    "Name": "es01",
                    "EndpointID": "6fc9d26da1b274162x279042badfe5d4",
                    "MacAddress": "0x",
                    "IPv4Address": "192.x.x.3/24",
                    "IPv6Address": ""
                },
                "e170b2fd2da565a5eede81000d67e47623a6b8fa24d2ef586c1bd5f923e5f465": {
                    "Name": "es02",
                    "EndpointID": "e06e7bbx6ae0a0255",
                    "MacAddress": "02:x:5a",
                    "IPv4Address": "192.x.x.4/24",
                    "IPv6Address": ""
                }
            },
            "Options": {},
            "Labels": {
                "com.docker.compose.network": "elastic",
                "com.docker.compose.project": "cluster",
                "com.docker.compose.version": "2.23.0"
            }
        }
    ]

 

3. 작동 확인 (접속)

-네트워크 및 인터넷 설정 열기: "제어판" -> "네트워크 및 인터넷" -> "네트워크 및 공유 센터"로 이동. -어댑터 설정 열기:

 

"현재 사용 중인 연결"에서 사용 중인 네트워크 연결을 찾아(OpenVPN Data Channel Offload)

마우스 오른쪽 버튼을 클릭

 

 "속성"을 선택.

 

- IPv4 속성 변경: 목록에서 "Internet Protocol Version 4 (TCP/IPv4)"를 찾아 선택하고 "속성"을 클릭

 

 

 

일련의 과정을 거치면 내가 원하는 포트로 옮길 수 있다.

 

ping 192.x.x.x # 접속한 ip에서 확인가능하다.

 

 

728x90