Запуск MLFlow на виртуальной машине GCP - PullRequest
2 голосов
/ 09 марта 2020

Я установил mlflow на экземпляр виртуальной машины GCP, теперь я хочу получить доступ к интерфейсу mlflow с внешним IP-адресом. Я попытался настроить правило брандмауэра и открыть порт по умолчанию для mlflow, но не смог получить к нему доступ. Может кто-нибудь дать пошаговый процесс для запуска mlflow на экземпляре виртуальной машины?

1 Ответ

1 голос
/ 09 марта 2020

Я решил проверить свою тестовую виртуальную машину и запустить mlflow server на виртуальной машине GCE. Посмотрите на мои шаги ниже:

  1. создание экземпляра виртуальной машины на основе Ubuntu Linux 18.04 LTS
  2. установка MLflow :

    $ sudo apt update
    $ sudo apt upgrade
    $ cd ~
    $ git clone https://github.com/mlflow/mlflow
    $ cd mlflow
    $ sudo apt install python3-pip
    $ pip3 install mlflow
    $ python3 setup.py build
    $ sudo python3 setup.py install
    $ mlflow --version
    mlflow, version 1.7.1.dev0
    
  3. запустить mlflow-сервер на внутреннем IP-адресе экземпляра виртуальной машины (по умолчанию 127.0.0.1):

    $ ifconfig 
    ens4: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1460
    inet 10.XXX.15.XXX  netmask 255.255.255.255  broadcast 0.0.0.0
    ...
    
    $ mlflow server --host 10.XXX.15.XXX
    [2020-03-09 15:05:50 +0000] [8631] [INFO] Starting gunicorn 20.0.4
    [2020-03-09 15:05:50 +0000] [8631] [INFO] Listening at: http://10.128.15.211:5000 (8631)
    [2020-03-09 15:05:50 +0000] [8631] [INFO] Using worker: sync
    [2020-03-09 15:05:50 +0000] [8634] [INFO] Booting worker with pid: 8634
    [2020-03-09 15:05:51 +0000] [8635] [INFO] Booting worker with pid: 8635
    [2020-03-09 15:05:51 +0000] [8636] [INFO] Booting worker with pid: 8636
    [2020-03-09 15:05:51 +0000] [8638] [INFO] Booting worker with pid: 8638
    
  4. проверка из экземпляра виртуальной машины (из второго соединения ):

    $ curl -I http://10.XXX.15.XXX:5000
    HTTP/1.1 200 OK
    Server: gunicorn/20.0.4
    Date: Mon, 09 Mar 2020 15:06:08 GMT
    Connection: close
    Content-Length: 853
    Content-Type: text/html; charset=utf-8
    Last-Modified: Mon, 09 Mar 2020 14:57:11 GMT
    Cache-Control: public, max-age=43200
    Expires: Tue, 10 Mar 2020 03:06:08 GMT
    ETag: "1583765831.3202355-853-3764264575"
    
  5. установить сетевой тег mlflow-server

  6. создать правило брандмауэра разрешить доступ через порт 5000

    $ gcloud compute --project=test-prj firewall-rules create mlflow-server --direction=INGRESS --priority=999 --network=default --action=ALLOW --rules=tcp:5000 --source-ranges=0.0.0.0/0 --target-tags=mlflow-server
    
  7. чек с локальной Linux машина nmap -Pn 35.225.XXX.XXX

    Starting Nmap 7.80 ( https://nmap.org ) at 2020-03-09 16:20 CET
    Nmap scan report for 74.123.225.35.bc.googleusercontent.com (35.225.XXX.XXX)
    Host is up (0.20s latency).
    Not shown: 993 filtered ports
    PORT     STATE  SERVICE
    ...
    5000/tcp open   upnp
    ...
    
  8. go в веб-браузер http://35.225.XXX.XXX: 5000 /

mlflow

...