Azure

伺服器目前無法用於 Ubuntu 16.04

  • May 16, 2018

背景

我有一個 Ubuntu 16.04 乾淨的 VM,我正在嘗試在其上安裝最新版本的 graylog。不幸的是,它失敗了。

我做了什麼?

首先,我使用上述作業系統創建了一個乾淨的 VM。然後我一步一步按照官方的說明進行操作:

http://docs.graylog.org/en/2.4/pages/installation/os/ubuntu.html

我安裝了先決條件、mongo DB、ElasticSearch 和最後但並非最不重要的 Graylog 2.4。

我還配置/etc/elasticsearch/elasticsearch.ymlcluster.name: graylog(在安裝 graylog 之前)。

Graylog 配置

現在,我們都知道 graylog 不會開箱即用。你需要做一些配置。我的配置/etc/graylog/server/server.conf非常簡單:

rest_listen_uri = http://0.0.0.0:9000/api/
web_listen_uri = http://0.0.0.0:9000/

就是這樣。我還像往常一樣創建了必要的密鑰和密碼。

有什麼問題

當我通過埠 9000 通過其公共 IP 連接到我的伺服器時,我收到以下錯誤消息:

我們在連接到在http://10.0.0.11:9000/api/上執行的 Graylog 伺服器時遇到問題。請驗證伺服器是否健康且工作正常。

一旦我們可以連接到伺服器,您將被自動重定向到上一頁。

你需要一隻手嗎?我們能幫你。

以下是詳細資訊:

錯誤資訊 請求已終止 可能原因:網路離線、Access-Control-Allow-Origin 不允許 Origin、正在解除安裝頁面等 原始請求 GET http://10.0.0.11:9000/api/ system/sessions 狀態碼 undefined Full error message Error: Request has been terminate 可能的原因:網路離線、Access-Control-Allow-Origin不允許Origin、頁面正在解除安裝等。

我可以訪問該網頁,但我立即看到給定的錯誤。我有另一個以相同方式配置的實例,但使用的是 graylog 2.2,它從來沒有給我帶來任何麻煩。

你試圖解決什麼問題?

我的第一個想法是檢查服務的健康狀況。當我執行時sudo systemctl status XXXX,將 XXXX 替換為mongod,它們都處於活動狀態並正在執行elasticsearchgraylog-server

我還在這個論壇上檢查了類似的錯誤,但它們是針對不同的作業系統的,所以我有點迷路了。

給我一些規格!

以下是我的作業系統 ( lsb_release -a) 的規格:

沒有可用的 LSB 模組。發行商 ID:Ubuntu 描述:Ubuntu 16.04.4 LTS 版本:16.04 代號:xenial

我正在使用的瀏覽器:

Firefox 量子 60.0(64 位)

問題

  1. 我錯過了配置步驟嗎?
  2. 為什麼我會收到此錯誤,我該如何解決?

回答

這是一個配置問題。我使用以下配置修復了它:

rest_listen_uri = http://0.0.0.0:9000/api/
web_listen_uri = http://0.0.0.0:9000/
#web_endpoint_uri =
rest_transport_uri = http://<AZURE_PUBLIC_IP>:9000/api/

請注意web_endpoint_uri已評論。我仍然不太了解所有元件是如何工作的,但這似乎已經成功了。

作為獎勵回合,這相當於以下內容:

rest_listen_uri = http://0.0.0.0:9000/api/
web_listen_uri = http://0.0.0.0:9000/
web_endpoint_uri = http://<AZURE_PUBLIC_IP>:9000/api/

引用自:https://serverfault.com/questions/912288