企業は現在、さまざまな IT リソースを活用してビジネスを強化しています。コストが最大の考慮事項である場合、無料で使用でき、変更可能なオープンソース ツールは、企業のコスト削減に役立ちます。同時に、クラウド プロバイダーは、企業がクラウド サービスからより大きな価値を得られるよう支援する多くの新しいツールも提供しています。これらのツールにより、企業は予算と人員をより戦略的なビジネス プロジェクトに振り向けることができます。オープンソースのクラウド ツールを活用して、オンプレミスとクラウドベースのコンポーネントを連携させます。今日は、優れたオープンソースのクラウドツールをいくつか紹介します。
グラファナ Grafana を使用すると、データがどこに保存されているかに関係なく、メトリックをクエリ、視覚化、および理解できます。ダッシュボードを作成、探索、チームと共有し、データ主導の文化を促進できます。産業用センサー、天気、プロセス制御などの時系列データに最適です。 Grafana は Go と Node.js で書かれています。 sqlite3 と呼ばれる組み込みデータベースが付属しています。 MySQL、PostgreSQL、Graphite、Influx DB、Prometheus、Elasticsearch などの他のデータ ストアを使用してデータを保存することもできます。追加のプラグインを使用することで、他のデータ ストアもサポートします。 Grafana は、Linux、Windows、Docker、Mac にインストールできます。ダッシュボードへのアクセスを制御するために、LDAP、Google Auth、GitHub などの組み込みのユーザー コントロールと認証メカニズムが付属しています。上記の認証に加えて、Grafana は AD 認証もサポートしています。 Grafana には、ダッシュボードの保存、ユーザーの作成、データ ソースの更新に使用できる API があります。 Grafanaダッシュボード 動的で再利用可能なダッシュボードを簡単に作成できるほか、再利用のためにテンプレートを作成することもできます。保存されたタグ フィルターを使用してログを参照および検索すると、ダッシュボードの作成が簡単になります。アドホック クエリを使用して特定のデータを参照し、ソースまでドリルダウンすることもできます。 Grafana にはアラート システムが組み込まれており、これを使用して、指定したメトリックのアラート ルールを定義できます。継続的に評価し、電子メールまたは Slack などのツールを通じてシステムに通知を送信します。 Grafana と Kibana を比較すると、前者は特定のメトリック (CPU/ディスク/IO 使用量など) に基づく時系列データに適しています。しかし、Kibana は Elasticsearch 機能を使用する分析ダッシュボードに適しています。したがって、データの検索や探索に Grafana を使用することはできません。 テラフォーム Terraform は、HashiCorp が提供するクラウド インフラストラクチャ ツールです。インフラストラクチャを効率的に構築、変更、バージョン管理するために使用されます。つまり、Terraform は Infrastructure as Code (IAAC) を提供するのに役立ちます。オンプレミス インフラストラクチャだけでなく、ほとんどのパブリック クラウド サービス プロバイダーのインフラストラクチャもサポートします。 Terraform はプラットフォームに依存せず、自動テスト、ソースコード管理などのコーディング原則の導入に役立ちます。コミュニティから大きな支持を得ており、多くの企業がインフラストラクチャの管理に Terraform を使い始めています。 Terraform のドライ ランを実行すると、実際の変更をコミットせずにシミュレートすることができ、これは開発者にとって非常に便利な機能です。 Terraform リソース グラフは、各リソース間の依存関係を含むすべてのリソースのビューを作成します。 Terraform はそれぞれのクラウド プロバイダーの API を活用してインフラストラクチャを管理するため、追加のリソースの必要性が減ります。 Terraform は、リソースのターゲット レベルを記述するための記述言語です。一般的なクラウド プロバイダーには、それぞれのクラウド リソースを管理するためのプラグインが用意されています。さらに、さまざまな言語で独自のプラグインを作成することも可能です。 Terraform は主に Go 言語をサポートしています。 git シークレット コード内で使用されるパスワード/資格情報を暗号化し、安全な場所に保管することは、開発者の間では一般的な方法です。この目的のためのツールは複数あり、Vault もその 1 つです。 git-secret は、Git リポジトリにシークレットを保存するためのシンプルなツールです。 git-secret は暗号化と復号化に gpg を使用します。 使用例は次のとおりです。
git-secrets を使用して、Oauth キー、DB パスワード、アプリケーション キー、およびプレーン テキストで保存されているその他のシークレットを保存できます。 git-secret は、Git リポジトリにプライベートデータを保存するためのツールです。パスワードを gpg で暗号化し、信頼できるすべてのユーザーの公開鍵を使用してファイルを追跡します。したがって、ユーザーはそれぞれの個人キーを使用してのみファイルを復号化でき、ここではパスワードは変更されません。誰かが会社を辞めたり、交代したりした場合は、公開鍵を削除してファイルを再暗号化するだけで、ファイルを復号化できなくなります。 ツチブタとレポキッド Aardvark と Repokid を使用すると、大規模で動的なクラウド展開において、キャラクターが必要な権限のみを保持するようにすることができます。これらは、急速なイノベーションと分散スケーリングに対応するために Netflix が提供するオープンソースのクラウド セキュリティ ツールです。パフォーマンスを損なうことなく、最小権限アクセスの原則を実装するのに役立ちます。 すべてのパブリック クラウド プロバイダーには、ユーザーに対するきめ細かなポリシーの作成に役立つ ID およびアクセス管理 (IAM) サービスがあります。ただし、詳細なカスタムポリシーによって複雑さが増し、開発者が製品を作成するのが難しくなる可能性があります。必要な権限が不足するとアプリケーションが失敗する可能性があり、権限が多すぎるとセキュリティの脆弱性やコンプライアンスの問題が発生する可能性があります。 Aardvark は Phantoms を使用してクラウド プロバイダーのコンソールにログインし、アカウント内のすべての IAM ロールの Access Advisor データを取得します。最新の Access Advisor データを DynamoDB データベースに保存し、RESTful API を公開します。 Aardvark はスレッドをサポートしており、複数のアカウントのデータを同時に取得し、20 分以内にデータを更新します。 DynamoDB テーブルには、図に示すように、ポリシー、権限数 (合計と未使用)、ロールがリポジトリの対象かフィルター済みか、各ロールの未使用の権限が最後に削除された日時 (リポジトリ機能) に関するデータが含まれています。 Repokid は、ロールが使用していないサービスで DynamoDB に保存されているデータを使用し、未使用の権限を削除します。 ツチブタの学習プロセス ロールが完全にプロファイリングされると、Repokid の repose 機能は、そのロールに添付されたインライン ポリシーを変更して、未使用の権限を除外します。 Repokid は、キャラクターを以前の状態に復元する必要がある場合に備えて、以前のポリシー バージョンのキャッシュも保持します。買い戻し機能は単一のロールに適用できますが、通常はアカウント内のすべての対象ロールを対象にするために使用されます。 オープンシフト OpenShift は、オンプレミスとクラウド プラットフォームの両方に対応したコンテナ サービスです。これは、Red Hat Enterprise Linux 上で Kubernetes によってオーケストレーションおよび管理される Docker コンテナ上に構築されています。最新バージョンの V3 には多くの新機能があります。 OpenShift プロジェクトは、Kubernetes、Docker、CoreOS、Framework、Crio、Prometheus などによってサポートされています。 OpenShift コンテナ プラットフォーム アーキテクチャ コンテナをグループ化すると、OpenShift に導入できるアプリケーションの数が大幅に増加します。これにより、単一の IP アドレスと共有ファイル システムの利点が得られます。 OpenShift コンテナーは本質的に不変であるため、アプリケーション コード、依存ライブラリ、およびシークレットを実行時にコンテナーにアタッチできます。これにより、管理者とインテグレーターはコードとパッチを構成とデータから分離できるようになります。 OpenShift コンテナ フレームワークを図に示します。 OpenShift と Kubernetes は、共通の REST API を介して連携してシステムに変更を加えるマイクロサービスのセットとして構築されています。これらの API はシステム インテグレーターが利用可能であり、同じコア コンポーネントを無効にして代替実装を許可することもできます。 OpenShift は REST API に対してきめ細かなアクセス制御を公開し、サービス インテグレーターの作業を容易にします。 ボッシュ BOSH は、複雑な分散システムのリリース、展開、ライフサイクル管理のための、クラウドに依存しないオープンソース ツールです。ほとんどのディストリビューションと管理された Cloud Foundry 環境では、BOSH を使用して環境を完全に管理するため、コーディングとビジネス価値の提供に集中できます。 BOSH の柔軟性とパワーにより、Google と Pivotal は BOSH を Project Kubo (Kubernetes 向け Web スケール リリース エンジニアリング) の中核にしました。 BOSH は、異なる仮想マシン上で実行される個々のソフトウェア コンポーネントのコレクションが、より大きなシステムとして連携して動作する分散システムのように動作します。 BOSHの展開 BOSHの主な構成要素は以下の通りです。
BOSH は、さまざまなソフトウェアをパッケージ化して管理するために他の環境でも使用されます。 BOSH の利点は、ソフトウェアの構成と新しいバージョンへのアップグレード、システム全体をあるバージョンから別のバージョンにアップグレードする際のテスト、ホストのサイズ変更、セキュリティ更新の処理など、初日と 2 日目の運用タスクの両方を管理できることです。 スピネーカー Spinnaker は、ソフトウェアの変更を高速でリリースするためのオープンソースのマルチクラウド継続的デリバリー プラットフォームです。強力で柔軟なパイプライン管理システムと、AWS EC2、Kubernetes、Google Compute Engine、Google Kubernetes Engine、Google App Engine、Microsoft Azure、OpenStack、Cloud Foundry、Oracle Cloud Infrastructure などの主要なクラウド プロバイダー サービスの統合を組み合わせています。 統合テストとシステム テストの実行、サーバー グループの上下移動、デプロイメントの監視が可能なデプロイメント パイプラインを作成することで、リリースを自動化します。 Git イベント、Jenkins、Travis CI、Docker、CRON、またはその他の Spinnaker パイプラインを介してパイプラインをトリガーします。 Spinnaker デプロイメント パイプライン Spinnaker は不変のイメージを作成してデプロイし、デプロイの高速化、ロールバックの簡易化、デバッグが難しい構成ドリフトの問題の排除を実現します。レッド/ブラックやカナリアデプロイメントなどの組み込みのデプロイメント戦略を使用して、クラウド内の不変のインフラストラクチャを活用します。 Spinnaker のアプリケーション管理機能は、クラウド リソースの管理に役立ちます。 Spinnaker は、アプリケーションまたはマイクロサービスと呼ばれることもあるサービスのコレクションとして実行されます。アプリケーション、クラスター、サーバー グループは、Spinnaker がサービスを記述するために使用する主要な概念です。ロード バランサとファイアウォールは、サービスがユーザーにどのように公開されるかを説明します。 Spinnaker パイプラインは、一連のアクションで構成される主要なデプロイメント管理構造です。図に示すように、パイプラインに沿ってステージ間でパラメータを渡すことが可能です。パイプラインは手動で開始することも、ジョブの完了、レジストリへの新しいイメージの表示、CRON スケジュール、別のパイプラインのアクションなどのイベントによって自動的にトリガーすることもできます。パイプラインは、パイプライン実行中のさまざまな時点で電子メール、Slack、または SMS 経由で通知するように構成できます。 Spinnaker はクラウドネイティブのデプロイメント戦略を念頭に置いて構築されており、ヘルスチェックの検証、古いサーバー グループの無効化、新しいサーバーの有効化などの基本的なオーケストレーションを処理します。これは、赤/黒 (別名青/緑) 戦略をサポートし、図に示すように、アクティブな開発ではローリング赤/黒およびカナリア戦略を採用しています。 Spinnaker の導入戦略 |
<<: 政府のクラウドは伝染病の予防と制御に役立ち、クラウドベースの監視と信頼のメカニズムがより重要になる
>>: クラウド コンピューティングのコストを管理するための 7 つのヒント
[[214684]]背景1月中旬、ZDIは2017年のコンテストのルールを発表した。そのルールにはV...
ハイブリッド クラウド戦略を求める声は根強く残っています。では、ハイブリッド クラウド アプローチを...
ウェブサイト運営者として、私たちはウェブサイトのトラフィックに常に注意を払っています。トラフィックに...
一定量のクラウド コンピューティングとストレージ容量を購入する場合のコストを計算するのは難しくありま...
1APIの独自ドメイン名販売ブランドhexonetもブラックフライデーとサイバーマンデーのプロモーシ...
[51CTO.comからのオリジナル記事] 5G時代が到来しました。 5G は、さまざまな垂直アプリ...
最近、中国社会科学院金融経済研究所は、中国の「クラウドコンピューティング地図」を描いた報告書「クラウ...
図から、このウェブサイトは20日以内に構築され、Baiduに5つの外部リンクがあることがわかります。...
【要点】 チャート操作の悪影響は誰もが知っていますが、利益を追求するために必死になって操作する人がま...
政策の恩恵とデジタル経済の加速的な発展に牽引され、クラウドネイティブ技術は急速に発展し、企業のデジタ...
Lunarpages は、非常に安定したサーバーと十分な帯域幅リソース、そして非常にタイムリーなカス...
諺にあるように、困難な時代に英雄が現れる。百度のランダムKの時代には、小さなウェブサイトが台頭するチ...
ライブストリーミングで商品を販売するのは、霧の中に花が咲き、水の中に月が浮かぶようなものです。羅永浩...
[[268284]]導入今日のアプリケーションは、分散システム開発の驚異です。異なるシステム アーキ...
百度が数か月以内に行った調整は、検索結果の品質向上に向けた同社の決意を示している。360 Searc...