開発者のバックグラウンドから来ると、実際には「開発者」になるのが難しくなります。あなたの質問はほぼ3歳ですので、あなたがどのように旅を見つけているのか聞くのは興味深いでしょう、私はの観点から答えを与えます上記のアプリケーションについてのシステム管理者は、何らかの光を放つか、人(管理者または開発者)が例えばdevopsからの質問を正確に検討し始める理由を説明する非技術的な視点を提供することを願っています遠近法x、y、zの関係は、これらのツールがそれぞれの部分の合計よりも大きいのですか?
私は実際にシステム管理者が優位であり、あなたの質問で言及したアプリケーションのほとんどが管理者の「問題」を解決し、そうすることでより抽象的なデータセンター環境を提供し、これは開発者と新しい「 devopsの戦略(戦略/チームを読む、devopsは人ではありません)。あなたが言及したアプリとの関係は何ですか?これはITサービスへの全体的なアプローチをどのように提供しますか?
OpenStack:独自のプライベートクラウドを構築できるツール。したがって、AWSなどに匹敵します。
それはそれが何であるかですが、それは何をしますか?-主に適切な名前のオペレーティングシステムはDOSでした-BIOSを抽象化してディスクを操作し、OpenStackがデータセンターを操作し、インフラストラクチャを抽象化しました(IaaS-データセンターオペレーティングシステムの専門用語)。現在、データセンターにはAPI、コマンド構文、GUIがあり、OpenStackはハイパーバイザー、スイッチ、ルーター、ファイアウォール、ストレージエリアネットワーク、ロードバランサー、ドッカーホストなどを駆動できます。Openstackはハードウェアメーカーの「プラグイン」または特定の機能を使用しますソフトウェアが何かを定義したので、ソフトウェアのみに存在できますまたはネットワーク機能の仮想化。このOpenStackおよび他のすべてのクラウド上で、オーケストレーションエンジンでスローしたスクリプトまたはルールに基づいてトリガーされたスクリプト(スケールアップ、スケールダウンなど)を読み取ることで、独自のインフラストラクチャをオーケストレーションできます。したがって、openstackは抽象化の巨大な層です。たとえば、どのスイッチを使用するか、このコマンドでネットワークを提供するか、複雑な負荷分散、HA、公開、自動スケーリング、ドメイン名登録、ストレージを構築します。添付されたもの - このスクリプトで私はインターネットで見つけました。
Docker:Linuxカーネルのいくつかの概念に基づいた「軽量VM」。共有Webホスティング環境などでプロセスを分離して実行するために使用できます。
Dockerは抽象化の別のレイヤーであり、クラウドが破壊的なテクノロジーであるように、ソフトウェアの依存関係、アップグレード、データの分離、完全な移植性などの運用上の「問題」を解決するため、業界を変えています。Javaは、開発者が考慮する必要のないソースコードの移植性のために普及しました。実行中のJVMは、Javaをサポートしている限り、コーヒーマシンでコードを実行することを意味します。Dockerは同様の問題を解決します。アプリを実行するには、Dockerホストではなく、、このバージョンのpython、このカーネル、このLinuxディストリビューションなどが必要です。もちろん、アプリにはそれらの依存関係がありますが、基盤となるホストは気にせず、管理者は隔離されたコンテナ内で何をするか気にしません(ポイントまで)。Dockerは、開発と運用の両方のパラダイムを変え、オペレーティングシステム全体とそのサービスをバイナリのように扱います。リポジトリから取得、バージョン管理、変更、パラメータを使用した実行などが可能です。
Chef:VMなどのオペレーティングシステムをセットアップおよび構成するためのツール。
はい、最初の2つほど破壊的ではありません。Chef、Puppet、Ansible、Salt、System Center Operations Manager、およびこのスペースにある他の膨大な数のアプリケーションは、開発者や管理者がデプロイメント、アップグレード、その他のアクション(config変更)、クラウドの場合のようにこれらの取り組みを検討している標準化団体は存在しないようです。しかし、私たちはインフラストラクチャのように決定的なものを扱っていないので、これらを学ぶのはより苦痛であり、一方から他方へ移すことはあまりありません。
Vagrant:私の理解では、VMの作成と管理を自動化することです:VMのセットアップ、開始、停止。これは、ローカルVMまたはリモート(クラウドプラットフォームなど)を使用して実行できます。
これはあなたが言及するアプリのリストの中で奇妙なものです.Vagrantは開発者向けのツールであり、管理者向けのおもちゃです。あなたはすぐにvagrantで開発環境を立ち上げることができます。たとえば、Androidアプリを開発したり、IDEを入手したい浮浪者、私はそれがDockerによってすぐに追い越されると思います。
このすべての使用を開始する方法についてアドバイスをいただけますか(同時に、非常に多く、どこから始めるべきかまだわかりません)。
これが、管理者が優位だと思う理由です。これのほとんどを手動で行い、何がうまくいかないかを知る必要がありました。パペットマニフェスト、クラウドコンピューティング、ドッカーオーケストレーションが簡単になり、開発者は多くの接線を取ることになります潜在的なdevopsへのアドバイスは、最初に管理者になることです。