ここでは、InfluxDBデータベースサーバーをインストールし、ターミナルを使用してAlmaLinuxまたはRockyLinux8で保護するための手順とコマンドについて説明します。また、InfluxのHTTPAPIを使用してリモートでアクセスする方法も…
InfluxDBとは何ですか?
InfluxDBは、InfluxDataによって開発されたオープンソースデータベースであり、MySQLやMariaDBなどのリレーショナルデータベースやRedisなどの構造化データベースとは異なり、複雑さを制限して最大の効率を優先します。ソフトウェアはオープンソースライセンスの下で配布されていますが、同社は自社のルートサーバー内のビジネス顧客向けのアクセス制御や、Webインターフェイスを介したグラフィカルデータ分析を備えたクラウドサービスなどの商用拡張機能も提供しています。
MySQLのようなリレーショナルデータベースは非常に柔軟性がありますが、構造が複雑であるため、高いメモリとコンピューティング能力が必要ですが、InfluxDBは単純な構造を使用します。これにより、表形式の構造の広範な分析や多数の相互参照の分析を必要とせずに、データベースを迅速かつ確実に管理できます。これらの機能により、DBMSは、モノのインターネット(IoT)のスマートデバイスを使用して、センサーや状態を含むデータセットをリアルタイムで登録し、それらをほぼ同時に保存および送信できます。バージョン2.0以降、InfluxDBは、情報のクエリにFluxと呼ばれる独自のプログラミング言語を使用できるようになりました。
InfluxDBの主な機能:
- 時系列の専門分野
- 1つの中央インスタンスでの複数のソースの組み合わせ
- 非常に高い処理効率
- 管理用のスクリプト言語としてのFluxのサポート
- たとえばサードパーティのAPIを介したさまざまなソースからのデータの収集
- インターフェイスとしてのApacheArrowを介したデータの交換
InfluxDBをAlmaLinuxまたはRocky8にインストールする手順
InfluxDBをAlmaLinuxにインストールするための以下の手順は、RHELまたはCentOS8Linuxサーバーのオペレーティングシステムにも適用できます。
ステップ1:InfluxDBリポジトリを追加する
InfluxDBの最新のRPMパッケージを公式Webサイトから直接ダウンロードできますが、リポジトリの方法により、システム更新コマンドを実行するたびにシステムが最新のパッケージを取得できるようになります-
以下の与えられたコマンドブロック全体をコピーします コマンドターミナルに貼り付けます。その後、入力を押します キーを押し、ユーザーパスワードを入力して、システムにInfluxDBリポジトリファイルを作成します。
sudo tee /etc/yum.repos.d/influxdb.repo<<EOF [influxdb] name = InfluxDB Repository baseurl = https://repos.influxdata.com/rhel/8/x86_64/stable/ enabled = 1 gpgcheck = 1 gpgkey = https://repos.influxdata.com/influxdb.key EOF
ステップ2:システム更新コマンドを実行する
次に、システムパッケージマネージャーDNFを使用してシステム更新コマンドを実行します。これにより、システムで利用可能な最新のパッケージと更新がインストールされるだけでなく、リポジトリキャッシュも更新されます。
sudo dnf update
ステップ3:InfluxDBをAlmalinuxまたはRockyLinuxにインストールするコマンド
最後に、指定されたコマンドを使用して、RPMベースのLinuxオペレーティングシステムにInfluxdBパッケージをダウンロードしてインストールします。
sudo dnf install influxdb
ステップ4:Influxdbサービスを開始して有効にする
システムの起動時にデータベースサーバーサービスを自動的に開始するには、指定されたコマンドを使用してデータベースサーバーサービスを開始して有効にします。
sudo systemctl start influxdb sudo systemctl enable influxdb
ステップ5:ファイアウォールでInfluxDBTCPポート8086を許可する
システムファイアウォールを有効にしている場合は、そのポート8086がHTTPAPIを介してクライアントからInfluxDbにアクセスできるようにします。
sudo firewall-cmd --add-port=8086/tcp --permanent sudo firewall-cmd --reload
同様に、必要に応じて、上記のコマンドを使用してTCPポート8088を開くこともできます。このポートは、RPCサービスがバックアップと復元に使用します。ポートを変更する場合は、 /etc/influxdb/influxdb.conf
にある構成ファイルから変更できます。
CLIにアクセスしてユーザーとデータベースを作成します
次のように入力するだけです:
influx
作成 少なくとも1人の管理者 指定されたコマンドを使用するユーザー。管理者とパスワードを設定したいものに置き換えます。
CREATE USER admin WITH PASSWORD 'password' WITH ALL PRIVILEGES
すべてのユーザーを確認するには:
SHOW USERS
データベースを作成するには:
CREATE DATABASE dbname
すべてのDBのリストを取得する
SHOW DATABASES
すべての特権を付与する データベースを利用できるようにするには、この構文を使用します
GRANT ALL ON database_name TO username
注: database_nameを置き換えます および ユーザー名 あなたの価値観。
既存の使用からすべてのデータベース特権を取り消すには
REVOKE ALL ON database_name FROM username
一部のデータベースで一部のInfluxDBユーザーに割り当てられている権限または特権を確認するには、次を使用します。
SHOW GRANTS FOR user_name
認証を有効にして、InfluxのHTTPAPIを使用してデータベースにリモートで接続および管理します
AlmalinuxまたはRockyのファイアウォールでInfluxdbポート8086を許可している場合は、リモートシステムのコマンドターミナルを使用してデータベースコマンドを発行できます。
そのためには、InfluxDB構成ファイルでHTTPと認証を有効にします。
sudo nano /etc/influxdb/influxdb.conf
#
を削除して、次のことを有効にします それらの前で利用できます。 Ansもauth-enable = false
を変更します auth-enable = true
へ スクリーンショットに示されているように。
[http] enabled = true bind-address = ":8086" auth-enabled = true log-enabled = true
保存 Ctrl + Altを押してファイルを 、その後 Y 、次に Enterを押します キー。
InfluxDBサービスを再起動します:
sudo systemctl restart influxdb
これで、他のシステムから、ターミナルを使用して、データベースの作成などのコマンドを発行できます。
カールがすでにリモートシステムにあることを確認してください。
curl --user admin:pass -k -XPOST 'http://server-ip-address:8086/query' --data-urlencode \ 'q=CREATE DATABASE "h2sdev"'
上記のコマンドで、 adminを変更します ユーザーとパスワード Influxデータベースサーバーで作成したものを使用します。一方、 h2sdev 作成したいデータベースです。
コマンドの出力は次のようになります:
{"results":[{"statement_id":0}]}
注意点 :構成ファイルで認証を有効にすると、最初に認証しないと、ローカルサーバー上のInfluxDBコマンドにアクセスできなくなります。したがって、ローカルホスト上のInfluxDBサーバーCLIにアクセスするたびに、次の方法でユーザーとパスワードを指定する必要があります。
influx -username username -password 'password'
交換 ユーザー名 およびパスワード 上記のコマンドで。上記のコマンド構文に示されているように、パスワードは一重引用符で囲む必要があることに注意してください。
これは、InfluxDBデータベースサーバーをインストールしてAlmalinuxまたはRocky Linux 8で使用する簡単な方法でした。セキュリティと認証の詳細については、公式ドキュメントを参照してください。