Tencent がクラウド ネイティブ サービス ディスカバリーおよびガバナンス センターをオープンソース化 - Polaris

Tencent がクラウド ネイティブ サービス ディスカバリーおよびガバナンス センターをオープンソース化 - Polaris

Polaris は、分散型またはマイクロサービス アーキテクチャにおけるサービスの可視性、フォールト トレランス、トラフィック制御、セキュリティ問題の解決に特化した Tencent のオープン ソース サービス検出およびガバナンス センターです。業界にはこれらの問題の一部を解決できるコンポーネントがいくつかありますが、標準的で多言語対応のフレームワークに依存しない実装が不足しています。

テンセントは膨大な数の分散型サービスを有しており、事業ラインやテクノロジースタックの多様性により、あらゆる規模の関連コンポーネントが数十個蓄積されています。 2019 年以降、当社は Polaris を通じてこれらのコンポーネントを抽象化および統合し、企業向けの統合サービス検出およびガバナンス ソリューションを作成し、企業の研究開発効率と運用品質の向上を支援しています。

現在、テンセント内のPolarisサービス登録数は100万を超え、1日のインターフェース通話量は10兆を超えています。汎用性と安定性は大規模に検証されています。そのため、私たちはこれをオープンソース コミュニティに提供し、他の企業を支援し、より多くの開発者が共同構築に参加することを期待しています。

特徴

  • Polaris の機能はプラグインの形で実装されています。企業はニーズに応じて使用方法を選択でき、拡張も非常に簡単です。
  • SDK と Sidecar の 2 つのアクセス方法を提供します。 SDK は高性能なビジネス シナリオに適しており、Sidecar は非侵入型開発モードに適しています。
  • SDK アクセスには、Java、Go、C++、NodeJS などの複数の言語で同じ機能を備えたクライアントを提供します。
  • Polaris SDKは、Spring Cloud、gRPC、Nginxなどの一般的なフレームワークやゲートウェイに統合できます。
  • Kubernetesに適用可能、K8sサービスとPolarisサイドカーの自動注入をサポート
  • テンセントの百万レベルサービスガバナンスセンターのオープンソース版は、分散サービスガバナンスにおけるテンセントの長年の経験を蓄積してきた。

コントロールサーフェス

North Star コントロール サーフェスの実装には、次の 3 つの特徴があります。

  • コンピューティングとストレージは分離されています。コンピューティング層ノードはクライアントノードの増加と並行して拡張でき、数百万のノードのアクセスを容易にサポートします。
  • コントロール プレーンには 1 つのプロセスのみがあり、アクセス層、ロジック層、ストレージ層、キャッシュ層に分かれており、構造が明確でメンテナンスが容易です。
  • アクセス層、ストレージ層、キャッシュ層はプラグイン設計を採用しており、拡張が容易で、さまざまなアプリケーション シナリオに適しています。

Polaris と k8s

k8sサービス

K8s は、サービスを通じてサービス検出と負荷分散機能を提供します。

  • ユーザーはサービスを作成し、そのサービスはラベルを通じて対応するポッドにバインドされます。各サービスはクラスター IP に関連付けられています。
  • k8sはまずkubedns、coredns、またはその他のDNSプラグインに依存してサービスをクラスターIPに解決します。
  • 次に、iptablesまたはIPVSを介してクラスターIPリクエストを対応するポッドに転送します。

k8s サービスの現在の実装には、次の欠点があります。

  • サービスの数が一定の制限を超えると、iptables と IPVS ではパフォーマンスの問題が発生し、大規模なサービスには適さなくなります。
  • iptables および IPVS でサポートされる負荷分散アルゴリズムは制限されており、カーネルに実装されており、アプリケーション層で拡張することはできません。
  • 動的ルーティング、回路ブレーカーのダウングレード、アクセス電流制限、アクセス認証などの一般的なサービス管理機能は提供されません。
  • Spring Cloudなどのマイクロサービスフレームワークのサービス登録および検出方法と互換性がなく、接続できない

k8s で Polaris を使用する

Polaris を使用して、k8s のサービス検出およびガバナンス機能を補完します。

  • k8s サービスの自動登録と SDK およびフレームワークを使用した登録の両方をサポートしており、両方が統一的に管理されます。
  • k8sのオリジナルのDNSアクセス方法に加えて、高性能と非侵入型の2つのサービスグリッドソリューションもサポートしています。
  • 高性能サービスメッシュは、多言語SDKを提供し、一般的なフレームワークやPolaris SDKとの統合も提供します。
  • 非侵入型サービスメッシュはSidecarを提供し、ビジネスはSDKやフレームワークに依存する必要がない

クイックスタート

前提条件

データベースを準備する

MySQL をダウンロードしてインストールする必要があります。バージョン番号は 5.7 以上である必要があります。こちらからダウンロードできます: https://dev.mysql.com/downloads/mysql/5.7.html

インポートデータベーステーブル作成スクリプト

テーブル作成スクリプトは./store/defaultStore/polaris_server.sqlで、mysqlコマンドまたは管理クライアントからインポートできます。

Golangコンパイル環境を準備する

Polaris サーバーのコンパイルには、golang コンパイル環境が必要です。バージョン番号は 1.12 以上である必要があります。これは、https://golang.org/dl/#featured からダウンロードできます。

コンパイルとビルド

  1. chmod +x ビルド.sh
  2. ビルド

ビルドが完了すると、現在のディレクトリに polaris-server-release_${version}.tar.gz パッケージが表示されます。

インストール

ソフトウェアパッケージを解凍する

polaris-server-release_${version}.tar.gz を入手して解凍します。

データベース構成の変更

解凍したディレクトリに入り、polaris-server.yaml を開いて、DB 構成に関連するいくつかの変数を実際のデータベース パラメータに置き換えます。 ##DB_USER## (データベース ユーザー名)、##DB_PWD## (データベース パスワード)、##DB_ADDR## (データベース アドレス)、##DB_NAME## (データベース名)

インストールスクリプトを実行する

  1. chmod +x ./tool/*.sh
  2. #インストール
  3. ./tool/install.sh
  4. #プロセスが正常に開始されたかどうかをテストする
  5. ./tool/p.sh

最後のステップで p.sh を実行した後、Polaris Server に戻り、起動が成功したことを確認します。

インストールの確認

  1. カール http://127.0.0.1:8080

機能が正常であることを証明するためにPolarisサーバーに戻る

経験

公式ウェブサイトアドレス:https://polarismesh.cn/、公式ではオンライン試用版も提供しています。アドレス:http://159.75.195.18/

リポジトリアドレス: https://github.com/polarismesh/polaris

<<:  Docker の脱獄、気づきましたか?

>>:  Kube-vip を使用して高可用性の Kubernetes クラスターを構築する (フル バージョン)

推薦する

クラウドネイティブの可観測性プラットフォームである OpenObserve の初体験

OpenObserve は、Rust で開発されたオープンソースの高性能クラウドネイティブ観測プラッ...

さまざまなウェブサイトが有料音楽トライアルを提供しているが、ネットユーザーは支払いを拒否している

Doubanの「ミュージシャン」セクションには、数十万人の独立系ミュージシャンのオンラインリスニング...

QingCloud: 新たなポジショニング、戦略的なアップグレード

設立以来、QingCloud の位置付けは、当初の「クラウド、フリーコンピューティングの礎」から、現...

dynadot-10 月のドメイン名プロモーション (3.99 登録組織)

Dynadot は比較的大規模なドメイン名登録会社です。10 月のドメイン名プロモーションの第 1 ...

ウェブサイトのページと機能の主な目的:ユーザーの心理的ニーズを調整する(パート 1)

ユーザーはなぜクリックしてウェブサイトに入るのでしょうか?検索エンジンはなぜインターネット環境を絶え...

ブランドマーケティング計画の基礎

本日お伝えしたいのは市場調査についてです。製品を作る前に、まず市場の基本的な状況と需要を理解する必要...

検索エンジン技術の3つの核心問題

月給5,000~50,000のこれらのプロジェクトはあなたの将来です検索エンジン技術は私たち SEO...

中小企業向けウェブサイトにおけるSEOサービスの実現可能性と手法に関する議論

中小企業のウェブサイトにSEOサービスを導入するのは現実的ではないという記事を目にすることがあります...

justhost UAE VPSはいかがでしょうか?アラブ首長国連邦フジャイラデータセンターのVPSのレビュー

Justhost は中東の UAE で新たに VPS サービスを開始しました。データ センターはフジ...

SEOの初期開発における3つの主要な方向性について簡単に説明します。

SEO業界の競争はますます激しくなっています。SEOを始めるのは難しくありません。ウェブサイト編集者...

#ハロウィン# fastcomet: 仮想ホストが 30% オフ、マネージド「クラウド サーバー」が 40% オフ

Fastcomet のハロウィーン プロモーションが始まりました。同社の主力製品である仮想ホスティン...

Baiduの6.22Kと6.28Kの駅に関する説明についての私の意見

6月28日のBaiduのビッグKサイトは、SEOコミュニティに大きな波紋を巻き起こしました。Goog...

losangelesvps: 年間 11 ドル、ロサンゼルスの無制限トラフィック VPS、1Gbps 帯域幅、768M メモリ/1 コア/10g SSD

中国の旧正月が近づいており、losangelesvps もこの楽しみに参加し、中国の旧正月向けの特別...

SEO学習の混乱を解消する:「外部リンク+記事」は考えるだけではない

最近、業界の友人数人と SEO について話したところ、同僚の多くが「オフサイトとは外部リンク、オンサ...

ヘイティーが「沈没」を先導する。

2022年はHEYTEAにとって決断の年です。今日、ずっと直営を主張してきた黒茶は正式にフランチャイ...