JP6781126B2 - Virtual machine setting input system, virtual machine setting input method, and program - Google Patents
Virtual machine setting input system, virtual machine setting input method, and program Download PDFInfo
- Publication number
- JP6781126B2 JP6781126B2 JP2017182277A JP2017182277A JP6781126B2 JP 6781126 B2 JP6781126 B2 JP 6781126B2 JP 2017182277 A JP2017182277 A JP 2017182277A JP 2017182277 A JP2017182277 A JP 2017182277A JP 6781126 B2 JP6781126 B2 JP 6781126B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- setting
- configuration information
- management unit
- machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
本開示は、コンピュータ上で仮想マシンに設定を自動的に投入するためのシステム、方法、及びプログラムに関する。 The present disclosure relates to systems, methods, and programs for automatically populating virtual machines with settings on a computer.
あらかじめ作成した情報を元に仮想マシンのイメージを構築する技術が存在する。例えばDockerと呼ばれる仮想マシン(ここで仮想マシンはコンテナを含む、実マシン上に動的に構成される独立したソフトウェア実行環境一般の概念を示す)のデプロイメントを自動化するソフトウェアでは、Dockerfileと呼ばれるファイルから命令を読み込むことでイメージを構築する(例えば、特許文献1を参照。)。 There is a technology to build an image of a virtual machine based on information created in advance. For example, in software that automates the deployment of virtual machines called Docker (where virtual machines represent the general concept of an independent software execution environment that is dynamically configured on a real machine, including containers), from a file called Dockerfile. An image is constructed by reading an instruction (see, for example, Patent Document 1).
この時、例えばコンテナが起動後に利用するネットワークにおけるプロキシなどの環境情報はコンテナを配置するケース毎に異なるため、Dockerfileには記述せずにコンテナ利用者がコンテナの起動時にコンテナ内環境変数として設定する。これはプロキシ設定にかぎらずDNS設定などでも同様である。このように、仮想マシンイメージの構築時には設定ができず、仮想マシンの利用環境に応じて個別に設定が必要となる設定情報が存在する(例えば、非特許文献1を参照。)。 At this time, for example, the environment information such as the proxy in the network used after the container starts differs depending on the case where the container is placed, so the container user sets it as an environment variable in the container when the container starts without describing it in the Dockerfile. .. This applies not only to proxy settings but also to DNS settings and the like. As described above, there is setting information that cannot be set at the time of constructing the virtual machine image and needs to be set individually according to the usage environment of the virtual machine (see, for example, Non-Patent Document 1).
従来、仮想マシンの利用者は仮想マシンの利用時にプロキシやネットワークなどの環境設定について理解している必要があった。例えば物理マシンの設定をシステムで自動的に行っていたり仮想マシンの利用者とインフラ管理者が異なる場合、仮想マシンの利用者は仮想マシンの動作に必要な環境設定を理解していない可能性がある。また、仮想マシン内で動作するソフトウェアによっては、例えば実行元の環境変数に設定されたプロキシ情報を利用せずに、ソフトウェア独自の設定ファイルに記述されたプロキシ等の環境情報を読み込む場合がある。その場合には環境変数として設定されたプロキシなどの環境情報を利用できず、仮想マシン上のソフトウェアがネットワークを利用できないことがあり、仮想マシンの利用者がソフトウェア毎に設定ファイル内のプロキシなどの環境情報を書き込む必要があった。環境情報を書き込むためには、仮想マシンの利用者はその内部で動作する各種ソフトウェアの設定方法を理解している必要があり、仮想マシンを容易に利用ができない、という課題があった。また、設定方法を理解していても、仮想マシンの利用者が仮想マシンの利用環境に応じて仮想マシン内の各種ソフトウェアの設定を変更する必要があり手間がかかるという課題もある。 In the past, virtual machine users had to understand environment settings such as proxies and networks when using virtual machines. For example, if the system automatically configures the physical machine, or if the virtual machine user and the infrastructure administrator are different, the virtual machine user may not understand the environment settings required for the virtual machine to operate. is there. Further, depending on the software running in the virtual machine, for example, the environment information such as the proxy described in the software-specific configuration file may be read without using the proxy information set in the environment variable of the execution source. In that case, environment information such as a proxy set as an environment variable cannot be used, and the software on the virtual machine may not be able to use the network, and the user of the virtual machine may not be able to use the proxy in the configuration file for each software. It was necessary to write the environment information. In order to write the environment information, the user of the virtual machine needs to understand the setting method of various softwares operating inside the virtual machine, and there is a problem that the virtual machine cannot be easily used. Further, even if the user understands the setting method, there is a problem that the user of the virtual machine needs to change the settings of various software in the virtual machine according to the usage environment of the virtual machine, which is troublesome.
本発明は、このような課題を解決するため、仮想マシンのOS(オペレーティングシステム)やソフトウェア毎の設定ファイルなどに自動的に設定を投入することができる仮想マシン設定投入システム、仮想マシン設定投入方法、及びプログラムを提供することを目的とする。 In order to solve such a problem, the present invention is a virtual machine setting input system and a virtual machine setting input method capable of automatically inputting settings to a virtual machine OS (operating system) or a setting file for each software. , And the purpose of providing the program.
上記目的を達成するために、本発明に係る仮想マシン設定投入システムは、仮想マシンのOSやソフトウェア毎のプロキシやネットワークなどの変数情報を保持しておき、起動される仮想マシンの環境変数に応じた変数情報を用いて設定コマンドを仮想マシンに投入することとした。 In order to achieve the above object, the virtual machine setting input system according to the present invention holds variable information such as a proxy and a network for each virtual machine OS and software, and responds to the environment variables of the virtual machine to be started. It was decided to submit the setting command to the virtual machine using the variable information.
具体的には、本発明に係る仮想マシン設定投入システムは、
ホストマシンに起動する仮想マシンの構成情報を保持する仮想マシンイメージ構成情報管理部と、
前記ホストマシンに起動する仮想マシンの構成情報及び環境変数に対する設定コマンドを保持する設定方法管理部と、
前記ホストマシンに仮想マシンが起動するときに、前記仮想マシンに設定されている環境変数を取得し、前記仮想マシンイメージ構成情報管理部から前記仮想マシンの構成情報を取得し、前記設定方法管理部から前記環境変数及び前記構成情報に対応する設定コマンドを取得して前記仮想マシンに投入する設定投入部と、
を備える。
Specifically, the virtual machine setting input system according to the present invention is
The virtual machine image configuration information management unit that holds the configuration information of the virtual machine to be started on the host machine,
The setting method management unit that holds the configuration information of the virtual machine to be started on the host machine and the setting commands for the environment variables,
When the virtual machine starts up on the host machine, the environment variables set in the virtual machine are acquired, the configuration information of the virtual machine is acquired from the virtual machine image configuration information management unit, and the setting method management unit is used. The setting input unit that acquires the setting command corresponding to the environment variable and the configuration information from the virtual machine and inputs it to the virtual machine.
To be equipped.
また、本発明に係る仮想マシン設定投入方法は、
ホストマシンに起動する仮想マシンの構成情報を仮想マシンイメージ構成情報管理部に保持し、
前記ホストマシンに起動する仮想マシンの構成情報及び環境変数に対する設定コマンドを設定方法管理部に保持し、
前記ホストマシンに仮想マシンが起動するときに、前記仮想マシンに設定されている環境変数を取得し、前記仮想マシンイメージ構成情報管理部から前記仮想マシンの構成情報を取得し、前記設定方法管理部から前記環境変数及び前記構成情報に対応する設定コマンドを取得して前記仮想マシンに投入する。
Further, the method of inputting the virtual machine setting according to the present invention is
Holds the configuration information of the virtual machine to be started on the host machine in the virtual machine image configuration information management unit,
The setting method management unit holds the configuration information of the virtual machine to be started on the host machine and the setting command for the environment variable.
When the virtual machine starts up on the host machine, the environment variables set in the virtual machine are acquired, the configuration information of the virtual machine is acquired from the virtual machine image configuration information management unit, and the setting method management unit is used. The setting command corresponding to the environment variable and the configuration information is acquired from and input to the virtual machine.
仮想マシンの起動とともに保持されている変数情報から設定コマンドが投入されるので、仮想マシンの利用者がソフトウェア毎に設定ファイル内のプロキシなどの環境情報を書き込む必要がなくなる。つまり、仮想マシンの利用者がその内部で動作する各種ソフトウェアの設定方法を理解している必要はなく、また、仮想マシンの利用環境に応じて仮想マシン内の各種ソフトウェアの設定を変更する必要もないので、仮想マシンの利用者は仮想マシンを容易に利用することができる。 Since the setting command is input from the variable information held when the virtual machine is started, it is not necessary for the virtual machine user to write the environment information such as the proxy in the setting file for each software. In other words, the user of the virtual machine does not need to understand how to set the various software that operates inside the virtual machine, and it is also necessary to change the settings of the various software in the virtual machine according to the usage environment of the virtual machine. Since there is no virtual machine, the user of the virtual machine can easily use the virtual machine.
従って、本発明は、仮想マシンのOSやソフトウェア毎の設定ファイルなどに自動的に設定を投入することができる仮想マシン設定投入システム及び仮想マシン設定投入方法を提供することができる。 Therefore, the present invention can provide a virtual machine setting input system and a virtual machine setting input method that can automatically input settings to a setting file for each OS or software of a virtual machine.
本発明に係る仮想マシン設定投入システムは、仮想マシンのイメージ及び仮想マシンイメージを構築する命令である仮想マシンイメージ構築ファイルから前記構成情報を作成して前記仮想マシンイメージ構成情報管理部に保持させる仮想マシンイメージ構成情報作成部をさらに備える。 The virtual machine setting input system according to the present invention creates the configuration information from the virtual machine image and the virtual machine image construction file which is an instruction for constructing the virtual machine image, and holds the configuration information in the virtual machine image configuration information management unit. It also has a machine image configuration information creation unit.
仮想マシンの利用者は、仮想マシンイメージ構成管理部に仮想マシンイメージの構成を手動で登録する必要がなくなり手間が削減される。 Virtual machine users do not have to manually register the virtual machine image configuration in the virtual machine image configuration management unit, which reduces the time and effort.
本発明に係る仮想マシン設定投入システムは、前記ホストマシンから前記環境変数の内、ホストマシンに関する環境変数を取得し、前記設定投入部へ通知するホストマシン設定管理部をさらに備える。 The virtual machine setting input system according to the present invention further includes a host machine setting management unit that acquires environment variables related to the host machine from the host machine and notifies the setting input unit.
仮想マシンの利用者は、仮想マシンがホストマシンと同じ環境変数を持てば良い場合などに仮想マシン起動時に環境変数の設定を省略することができ、手間が削減できる。また、ホストマシンの設定を流用してネットワーク設定を行うことで、ネットワーク設定などが不明でも、仮想マシンの利用者は容易に仮想マシンを利用することができる。 The user of the virtual machine can omit the setting of the environment variable at the time of starting the virtual machine when the virtual machine only needs to have the same environment variable as the host machine, which can reduce the trouble. In addition, by diverting the settings of the host machine and setting the network, the user of the virtual machine can easily use the virtual machine even if the network settings and the like are unknown.
本発明に係る仮想マシン設定投入システムは、
前記ホストマシンに起動している仮想マシンの前記構成情報及び前記設定コマンドを管理し、前記仮想マシンの状態が変更されたときに変更内容を前記設定投入部へ通知する仮想マシン設定管理部と、
前記ホストマシンの状態が変更されたときに前記ホストマシンに関する環境変数の変更内容を前記設定投入部へ通知するホストマシン設定更新通知部と、
をさらに備え、
前記設定投入部は、前記仮想マシン設定管理部及び前記ホストマシン設定更新通知部のいずれか一方から通知された前記更新内容に基づいて前記設定方法管理部から新たな設定コマンドを取得して前記仮想マシンに投入する
ことを特徴とする。
The virtual machine setting input system according to the present invention is
A virtual machine setting management unit that manages the configuration information and the setting command of the virtual machine running on the host machine and notifies the setting input unit of the change contents when the state of the virtual machine is changed.
A host machine setting update notification unit that notifies the setting input unit of changes in environment variables related to the host machine when the state of the host machine is changed.
With more
The setting input unit acquires a new setting command from the setting method management unit based on the update content notified from either the virtual machine setting management unit or the host machine setting update notification unit, and obtains the virtual setting command. It is characterized by being put into a machine.
仮想マシン設定管理部により、仮想マシン起動後に新しいソフトウェアをインストールもしくはアンインストールした場合でも設定が自動で反映されサービスを継続できる。また、ホストマシン設定更新通知部により、2つ以上のプロキシ設定の異なるネットワークと切替を行っている場合でも、ホストマシン側のネットワークが切り替わりに追随するため、仮想マシンの利用者はネットワーク設定を意識することなく、サービスを継続することができる。 The virtual machine setting management unit automatically reflects the settings even if new software is installed or uninstalled after the virtual machine is started, and the service can be continued. In addition, even if the host machine setting update notification unit switches between two or more networks with different proxy settings, the network on the host machine side follows the switching, so virtual machine users are aware of the network settings. You can continue the service without doing anything.
本発明に係るプログラムは、コンピュータを、前記仮想マシン設定投入システムとして機能させるためのプログラムである。本発明に係る仮想マシン設定投入システムは、コンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。 The program according to the present invention is a program for making a computer function as the virtual machine setting input system. The virtual machine setting input system according to the present invention can also be realized by a computer and a program, and the program can be recorded on a recording medium or provided through a network.
なお、上記各発明は、可能な限り組み合わせることができる。 The above inventions can be combined as much as possible.
本発明は、仮想マシンのOSやソフトウェア毎の設定ファイルなどに自動的に設定を投入することができる仮想マシン設定投入システム、仮想マシン設定投入方法及びプログラムを提供することができる。 The present invention can provide a virtual machine setting input system, a virtual machine setting input method, and a program that can automatically input settings to a setting file for each OS or software of a virtual machine.
添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。 Embodiments of the present invention will be described with reference to the accompanying drawings. The embodiments described below are examples of the present invention, and the present invention is not limited to the following embodiments. In this specification and drawings, the components having the same reference numerals shall indicate the same components.
(実施形態1)
図1は、本実施形態の仮想マシン設定投入システムを説明する構成図である。本仮想マシン設定投入システムは、仮想マシンイメージを管理し、要求に応じて指定されたホストコンピュータ上に仮想マシンを起動する。
(Embodiment 1)
FIG. 1 is a configuration diagram illustrating a virtual machine setting input system of the present embodiment. This virtual machine setting input system manages the virtual machine image and starts the virtual machine on the specified host computer in response to the request.
本仮想マシン設定投入システムは、
ホストマシン100に起動する仮想マシン50の構成情報を保持する仮想マシンイメージ構成情報管理部11と、
ホストマシン100に起動する仮想マシン50の構成情報及び環境変数に対する設定コマンドを保持する設定方法管理部12と、
ホストマシン100に仮想マシン50が起動するときに、仮想マシン50に設定されている環境変数を取得し、仮想マシンイメージ構成情報管理部11から仮想マシン50の構成情報を取得し、設定方法管理部12から前記環境変数及び前記構成情報に対応する設定コマンドを取得して仮想マシン50に投入する設定投入部13と、
を備える。
This virtual machine setting input system is
The virtual machine image configuration
Setting
When the
To be equipped.
以下、各機能部について詳しく説明する。 Hereinafter, each functional unit will be described in detail.
設定方法管理部12は、OSやソフトウェア毎の設定ファイルのパスや設定用の変数および変数の設定方法を管理する。
ここでの管理とは、外部から仮想マシン設定投入システムに入力された情報あるいは外部から取得した情報をDB(データベース)等に保存し、要求に応じてDB等から読み出し提供することである。情報には実行可能なユーザ権限情報や設定適用範囲の情報を含めても良い。
また、プロキシサーバの情報は優先度、ユーザ、又はソフトウェアで選択が可能であり、定期的にプロキシサーバに対して疎通確認を行い、プロキシサーバへの通信状態を保存してもよい。また、外部の管理サーバに問合せを行い、利用可能なプロキシサーバの情報を取得してもよい。
The setting
The management here is to save the information input to the virtual machine setting input system from the outside or the information acquired from the outside in a DB (database) or the like, and read and provide the information from the DB or the like in response to a request. The information may include executable user authority information and setting application range information.
Further, the proxy server information can be selected by priority, user, or software, and communication may be confirmed with the proxy server on a regular basis and the communication status to the proxy server may be saved. In addition, you may make an inquiry to an external management server and acquire information on available proxy servers.
仮想マシンイメージ構成情報管理部11は、仮想マシンイメージの構成情報を管理する。ここで仮想マシンイメージの構成情報とは、仮想マシンのOS種別やバージョン、または、仮想マシンにインストールされた、あるいは仮想マシン上で動作するプログラムの種別やプログラムのバージョンである。
The virtual machine image configuration
設定投入部13は、設定方法管理部12と仮想マシンイメージ構成管理部11の情報を照らし合わせ、起動した仮想マシンに対して設定コマンドの投入を行う。この時、仮想マシンは物理マシン上で起動する場合もあるし、仮想マシン上で起動する場合もある。
The setting
なお、仮想マシン起動部14は、仮想マシン50を起動する機能部であり、仮想マシン起動時に仮想マシンの利用者に指示された環境変数の設定などを行う。また、仮想マシンイメージ15は、仮想マシンのイメージファイル(VMイメージ、コンテナイメージなど)である。
The virtual
図1にしたがって、各機能部の挙動を詳細に説明する。
[ステップS11]
仮想マシンイメージの作成者は仮想マシンイメージ15を作成する。
[ステップS12]
仮想マシンイメージの作成者は仮想マシンイメージの構成情報を仮想マシンイメージ構成管理部11に登録する。
例えば、仮想マシンイメージの作成者は、“VMImage01”という名前で仮想マシンイメージを構築した時、“VMImage01”という仮想マシンイメージを用いて起動する仮想マシンのOS種別は“ubuntu”であり、バージョンは“16.04”であり、“curl“というソフトウェア種別のバージョン“7.54.0”がインストールされている、という情報を登録する。ここで名前とは仮想マシンイメージファイル名あるいはタグや仮想マシンイメージが保存されているファイルパスなど、仮想マシンイメージを特定できる情報のことを指す。ステップS12は仮想マシンイメージの作成前に行っても良いし作成後に行っても良い。
[ステップS13]
仮想マシンの利用者は、仮想マシン起動部14により仮想マシンイメージ15を取得する。
[ステップS14]
仮想マシンの利用者は、仮想マシン30を起動する。この時、仮想マシンの利用者は、仮想マシン50に設定する環境変数などを指定する。
例えば、仮想マシンとしてコンテナを起動する際にdockerを用いた場合、仮想マシンの利用者は、
“docker run −e http_proxy=http://proxy.co.jp:12345”
のようにして−eオプションにより環境変数http_proxyを設定することができる。
[ステップS15]
仮想マシン起動部14は、設定投入部13に対して起動した仮想マシンイメージの通知、設定された環境変数、及び仮想マシン50上でアプリケーションを実行するユーザ名などの情報を通知する。ステップS15は仮想マシン起動部14が直接行うのではなく、仮想マシン起動部14が動作した事をイベントとして起動するスクリプトプログラム等が実行しても良いし、設定投入部13があらかじめ仮想マシン起動部14の動作を監視しておき、当該情報を取得しても良い。
[ステップS16]
設定投入部13は、ステップS15で取得した情報を元に仮想マシンイメージ構成管理部11に問い合わせを行い、起動した仮想マシン50の構成情報を取得する。
例えば、“VMImage01”が起動された場合、設定投入部13は、OSが“ubuntu16.04”であり、“curl”というソフトウェアのバージョン“7.54.0”がインストールされている、という構成情報を取得する。
[ステップS17]
設定投入部13は、ステップS16で取得した構成情報およびステップS14で設定された環境変数の情報を元に設定方法管理部12に問い合わせを行い、仮想マシン50に投入する設定コマンドを取得する。
例えば、curlではhttpプロキシの設定ファイルのパスは“〜/.curlrc”であり、設定ファイル内に“proxy=http://proxy.co.jp:12345”のように記述される。この場合、設定方法管理部12は、環境変数http_proxyの設定に対応するhttpプロキシの設定コマンドとして、
“echo proxy=“${PROXY }:${PROXY_PORT}” > 〜/.curlrc”(PROXY、PROXY_PORTは変数)
を保持しており、設定投入部13からの問い合わせに対して上記設定コマンドを回答する。この時、設定コマンドが複数通りある可能性もあり、その場合、設定方法管理部12は任意のアルゴリズムで選択をしていずれかを回答すれば良い。例えば、ユーザ権限情報とユーザ情報を比較し、ユーザ情報の権限が同一、もしくは、ユーザ情報よりも低い権限レベルの設定コマンドを選択するアルゴリズムや、設定コマンドの適用範囲を比較し、より広い範囲に反映される設定コマンドを優先的に選択するアルゴリズムが例示できる。
また、例えば複数のプロキシサーバが利用可能な場合、ソフトウェア毎に異なるプロキシサーバを設定することで負荷分散を行ってもよい。
仮想マシンの各ソフトウェアに対する設定コマンドは、仮想マシンの利用者が作成して設定方法管理部12に保持させても良いし、既に作成されているものや一般的なものを仮想マシンの利用者が設定方法管理部12に保持させても良い。例えば、前述のように仮想マシンの起動にdockerを用いる場合、仮想マシン起動時のhttpプロキシの設定は−eオプションで指定されることが一般的であり、またcurlのhttpプロキシの設定ファイルのパスは“〜/.curlrc”内に“proxy=”の形で記述されることは一般的に知られている。このため、設定コマンドは仮想マシン利用者でなくとも作成可能である。例えば、設定方法管理部12は、仮想マシンの利用者の間で設定コマンドを共通化し、ある仮想マシン利用者が過去に登録した設定コマンドを他の仮想マシン利用者が利用可能としても良い。また、curlなどのコマンドの開発者が設定コマンドを設定方法管理部12に登録しておき、仮想マシン利用者がそれらを利用しても良い。
[ステップS18]
設定投入部13は、取得した設定コマンドを用いて起動した仮想マシン50のソフトウェアに設定を投入する。
The behavior of each functional unit will be described in detail with reference to FIG.
[Step S11]
The creator of the virtual machine image creates the
[Step S12]
The creator of the virtual machine image registers the configuration information of the virtual machine image in the virtual machine image
For example, when a virtual machine image creator builds a virtual machine image with the name "VMMage01", the OS type of the virtual machine started using the virtual machine image "VMMage01" is "ubuntu", and the version is Register the information that it is "16.04" and that the software type version "7.54.0" of the software type "curl" is installed. Here, the name refers to information that can identify the virtual machine image, such as a virtual machine image file name or a tag or a file path in which the virtual machine image is stored. Step S12 may be performed before the creation of the virtual machine image or after the creation.
[Step S13]
The user of the virtual machine acquires the
[Step S14]
The user of the virtual machine starts the virtual machine 30. At this time, the user of the virtual machine specifies environment variables and the like to be set in the
For example, when docker is used when starting a container as a virtual machine, the user of the virtual machine
"Docker run-e proxy = proxy = http: // proxy.co.jp: 12345"
The environment variable http_proxy can be set by the -e option as in.
[Step S15]
The virtual machine start-up
[Step S16]
The setting
For example, when "VMMage01" is started, the setting
[Step S17]
The setting
For example, in curl, the path of the http proxy configuration file is "~ / .currrc", and it is described as "proxy = http: //proxy.co.jp:12345" in the configuration file. In this case, the setting
"Echo proxy =" $ {PROXY}: $ {PROXY_PORT} "> ~ / .currc" (PROXY and PROXY_PORT are variables)
Is held, and the above setting command is answered in response to an inquiry from the setting
Further, for example, when a plurality of proxy servers are available, load distribution may be performed by setting different proxy servers for each software.
The setting command for each software of the virtual machine may be created by the virtual machine user and stored in the setting
[Step S18]
The setting
以上のように本実施形態の仮想マシン設定投入システムは、仮想マシン起動時に仮想マシンの利用者が個別に設定を行うことなく仮想マシン内のソフトウェア毎の設定を行うことができる。 As described above, in the virtual machine setting input system of the present embodiment, the virtual machine user can make settings for each software in the virtual machine without making individual settings when the virtual machine is started.
(実施形態2)
図2は、本実施形態の仮想マシン設定投入システムを説明する構成図である。本実施形態の仮想マシン設定投入システムは実施形態1の機能部の他に、仮想マシンイメージ構成情報作成部16を備える。
(Embodiment 2)
FIG. 2 is a configuration diagram illustrating a virtual machine setting input system of the present embodiment. The virtual machine setting input system of this embodiment includes a virtual machine image configuration
仮想マシンイメージ構成情報作成部16は、仮想マシンイメージ構築ファイルや仮想マシンイメージから仮想マシンの構成情報を作成する。具体的には、仮想マシンイメージ構成情報作成部16は、仮想マシンのイメージ15及び仮想マシンイメージを構築する命令である仮想マシンイメージ構築ファイル17から前記構成情報を作成して仮想マシンイメージ構成情報管理部11に保持させる。
The virtual machine image configuration
[ステップS21]
仮想マシンイメージ構築ファイル17は、仮想マシンイメージ15を構築するための命令を記述するファイルである。Oz tdl: template description languageや Dockerfileなどが例示できる。例えばDockerfileであれば、
“FROM ubuntu:trusty
RUN apt−get update && apt−get −y upgrade
RUN apt−get −y install curl”
という記述がされている。
仮想マシンイメージの作成者は、仮想マシンイメージ構築ファイル17を利用して仮想マシンイメージ15を作成する。
[ステップS22]
仮想マシンイメージ構成情報作成部16は、仮想マシンイメージ構築ファイル17と作成された仮想マシンイメージ15を読み取ることで、仮想マシンのOSやインストールされているソフトウェア等の情報である仮想マシンイメージの構成情報を作成する。例えば上のDockerfileであればOSが“ubuntu:trusty”であり、curlがインストールされることが分かる。ただし、“ubuntu:trusty”は仮想マシンイメージ作成の元となる仮想マシンイメージのタグであり正確にはOSの種別やバージョン情報は取得できない。そのため、あらかじめ“ubuntu:trusty”に対応するイメージのOS種別が“ubuntu”でありバージョンが“14.04”であることを別のDBに保持しておきそれを読み取っても良い。また、仮想マシンイメージ構成情報作成部16が仮想マシン50を実際に起動してOS情報を取得するコマンドなどを利用してOS種別やバージョンを取得しても良い。curlも同様にバージョンなどを取得するために仮想マシンイメージ構成情報作成部16が“apt−get install curl”を実行してインストールされるバージョンを調べても良いし、仮想マシンを起動してインストールされているcurlのバージョンを調べても良い。例えばcurlのバージョンは“−−version”オプションを指定してcurlを実行することで調べることができる。
[ステップS23]
仮想マシンイメージ構成情報作成部16は得られた仮想マシンイメージの構成情報を仮想マシンイメージ構成管理部11に登録する。
[他のステップ]
ステップS13からS18は、実施形態1で説明した通りである。
[Step S21]
The virtual machine
"FROM ubuntu: truthy
RUN apt-get update && apt-get-y upgrade
RUN apt-get-y installation curl "
Is described.
The creator of the virtual machine image creates the
[Step S22]
The virtual machine image configuration
[Step S23]
The virtual machine image configuration
[Other steps]
Steps S13 to S18 are as described in the first embodiment.
以上のように本実施形態の仮想マシン設定投入システムは、仮想マシンイメージ構成情報作成部16が仮想マシンイメージの構成情報を仮想マシンイメージ構築ファイル17や仮想マシンイメージ15から作成し、仮想マシンイメージ構成管理部11に登録することができる。仮想マシンイメージ構成情報作成部16の存在で、仮想マシンイメージの作成者は、仮想マシンイメージ構成管理部11に仮想マシンの構成情報を手動で登録する必要がなくなり、手間が削減される。
As described above, in the virtual machine setting input system of the present embodiment, the virtual machine image configuration
(実施形態3)
図3は、本実施形態の仮想マシン設定投入システムを説明する構成図である。本実施形態の仮想マシン設定投入システムは実施形態1の機能部の他に、ホストマシン設定管理部18を備える。具体的には、本実施形態の仮想マシン設定投入システムは、ホストマシン100から環境変数の内、ホストマシン100に関する環境変数を取得し、設定投入部13へ通知するホストマシン設定管理部18をさらに備える。
(Embodiment 3)
FIG. 3 is a configuration diagram illustrating a virtual machine setting input system of the present embodiment. The virtual machine setting input system of this embodiment includes a host machine
[ステップS31]
ホストマシン設定管理部18は、仮想マシン50が起動されるホストマシン100の環境変数などを取得し、管理する。ホストマシン設定管理部18は、環境変数を定期的に取得しても良いし、環境変数などが変更されたことをイベントとして更新情報を取得するなどしても良い。
[ステップS32]
設定投入部13は、仮想マシン50の起動後にホストマシン設定管理部18に問い合わせを行い、ホストマシン100の環境変数などの設定状況を取得する。ステップS32で設定投入部13は、例えばホストマシン100の環境変数http_proxyが“http://proxy.co.jp:12345”に設定されていることを知る。したがって、設定投入部13は仮想マシンイメージ構成管理部11への問い合わせ結果からcurlコマンドの設定が必要である場合、設定方法管理部12にcurlコマンドに対するhttpプロキシの設定コマンドの問い合わせを行うことができる。つまり、本実施形態の仮想マシン設定投入システムは、仮想マシン起動時に環境変数が設定されるのではなく、ホストマシンの環境変数の設定情報を元に仮想マシンに環境変数を設定することができる。
[他のステップ]
ステップS13からS18は、実施形態1で説明した通りである。
[Step S31]
The host machine
[Step S32]
After starting the
[Other steps]
Steps S13 to S18 are as described in the first embodiment.
以上のように本実施形態の仮想マシン設定投入システムは、例えば、仮想マシンがホストマシンと同じ環境変数を持てば良い場合などに、仮想マシン起動時に環境変数の設定をするという仮想マシンの利用者の手間を省略することができる。また、本実施形態の仮想マシン設定投入システムがホストマシンの設定を流用してネットワーク設定を行うため、ネットワーク設定などが不明であっても仮想マシン利用者は容易に仮想マシンを利用することができる。 As described above, the virtual machine setting input system of the present embodiment is a virtual machine user who sets environment variables when the virtual machine is started, for example, when the virtual machine only needs to have the same environment variables as the host machine. It is possible to save the trouble of. Further, since the virtual machine setting input system of the present embodiment uses the host machine settings to perform network settings, the virtual machine user can easily use the virtual machine even if the network settings and the like are unknown. ..
(実施形態4)
図4は、本実施形態の仮想マシン設定投入システムを説明する構成図である。本実施形態の仮想マシン設定投入システムは実施形態1の機能部の他に、仮想マシン設定管理部19とホストマシン設定更新通知部20を備える。
(Embodiment 4)
FIG. 4 is a configuration diagram illustrating the virtual machine setting input system of the present embodiment. The virtual machine setting input system of this embodiment includes a virtual machine setting management unit 19 and a host machine setting
具体的には、本実施形態の仮想マシン設定投入システムは、ホストマシン100に起動している仮想マシン50の前記構成情報及び前記設定コマンドを管理し、仮想マシン50の状態が変更されたときに変更内容を設定投入部13へ通知する仮想マシン設定管理部19と、
ホストマシン100の状態が変更されたときにホストマシン100に関する環境変数の変更内容を設定投入部13へ通知するホストマシン設定更新通知部20と、
をさらに備える。
そして、設定投入部13は、仮想マシン設定管理部19及びホストマシン設定更新通知部20のいずれか一方から通知された前記更新内容に基づいて設定方法管理部12から新たな設定コマンドを取得して仮想マシン50に投入する。
Specifically, the virtual machine setting input system of the present embodiment manages the configuration information and the setting command of the
When the state of the
Further prepare.
Then, the setting
[ステップS41]
仮想マシン設定管理部19は、仮想マシン50にインストールされたOSやソフトウェアなどの構成情報や、仮想マシン起動時に設定投入部13によって投入された設定コマンドを管理する。これらの情報は、仮想マシン50の状態が変更(ソフトウェアのインストール、アンインストール等)されたことをイベントとして更新する。
[ステップS42]
ホストマシン設定更新通知部20は、ホストマシン100の環境変数などの設定の更新を検知し、通知する。更新の検知は定期的に更新情報の有無を確認することによって検知しても良いし、環境変数などが変更されたことをホストマシン側がイベントとして管理してホストマシン設定更新通知部20に更新情報を送信するなどしても良い。
[ステップS43]
仮想マシン50の状態の変化を検知した際に、仮想マシン設定管理部19は設定投入部13に対して更新情報の通知を行う。設定投入部13は更新情報を用いて設定方法管理部12に問い合わせを行い、設定コマンドが不足している場合は不足している設定コマンドを仮想マシン50に対して投入する。設定コマンドが不要であれば設定コマンドを削除する。
[Step S41]
The virtual machine setting management unit 19 manages configuration information such as the OS and software installed in the
[Step S42]
The host machine setting
[Step S43]
When the change in the state of the
仮想マシン設定管理部19の動作によって、仮想マシン起動後に新しいソフトウェアをインストールもしくはアンインストールした場合でも設定コマンドが自動で更新されサービスを継続できる。 By the operation of the virtual machine setting management unit 19, even if new software is installed or uninstalled after the virtual machine is started, the setting command is automatically updated and the service can be continued.
[ステップS44]
また、同様にホストマシン設定更新通知部20は、ホストマシンの設定の変化を検知した際に、設定投入部13に対して更新情報の通知を行い、設定投入部13は更新情報を用いて設定方法管理部12に問い合わせを行い、設定コマンドが不足している場合は不足している設定コマンドを仮想マシン50に対して投入する。設定コマンドが不要であれば設定を削除する。
[Step S44]
Similarly, when the host machine setting
ホストマシン設定更新通知部20の動作によって、例えば2つ以上のプロキシ設定の異なるネットワークと切替を行っており、ホストマシン側のネットワークが切り替わりに追随して設定コマンドが自動で更新される。このため、仮想マシンの利用者はネットワーク設定を意識することなく、サービスを継続することができる。
By the operation of the host machine setting
ここで、「設定コマンドが不足している場合は不足している設定コマンドを仮想マシンに対して投入する」とは、例えばホストマシンにプロキシ設定が設定されていなかったが更新によってホストマシンにプロキシ設定が投入された場合、仮想マシンに対してプロキシ設定を追加で投入することである。また、「設定コマンドが不要であれば設定コマンドを削除する」とは、例えばホストマシンに設定されていたプロキシ設定が更新によって削除された場合、仮想マシンからプロキシ設定を削除することである。 Here, "If the setting command is insufficient, submit the missing setting command to the virtual machine" means, for example, that the proxy setting was not set on the host machine, but the proxy is sent to the host machine by updating. When the settings are submitted, additional proxy settings are submitted to the virtual machine. Further, "delete the setting command if the setting command is unnecessary" means, for example, to delete the proxy setting from the virtual machine when the proxy setting set in the host machine is deleted by the update.
(発明の要旨)
(1)仮想マシンイメージ構成管理部11が、仮想マシンイメージと仮想マシンの構成情報を保持しておくこと。
(2)設定方法管理部12が、仮想マシンを構成するソフトウェアの設定コマンドを保持しておくこと。
(3)設定投入部13が仮想マシンイメージ構成管理部11の情報と設定方法管理部12の情報を照らし合わせ、仮想マシン内のソフトウェア毎に必要となる設定コマンドを自動的に投入すること。
(4)仮想マシンイメージ構成情報作成部16が、仮想マシンイメージ構築ファイル17や仮想マシンイメージ15から仮想マシンの構成情報を取得すること。
一般的に仮想マシンイメージ構成ファイル17は仮想マシンイメージ15の構築にのみ用いられ、イメージファイルの構築後は利用されない。構築後のイメージファイルだけではどのようなソフトウェアがインストールされているのかは分からないが、本機能部により仮想マシンイメージ15の構成情報を取得し、仮想マシンイメージ構成管理部11に登録しておくことで仮想マシンの構成情報を自動的に作成、保持することができる。
(5)ホストマシン設定管理部18が、ホストマシン100の設定を取得し、設定投入部13はホストマシン設定管理部18に問い合わせを行うこと。仮想マシンへの設定コマンド投入時にホストマシンの環境変数などの設定コマンドを取得でき、仮想マシンに投入可能となる。
(6)ホストマシン設定更新通知部20が、ホストマシンの設定更新を他の機能部に通知すること。ホストマシンの設定更新に応じて仮想マシンへの設定コマンドを変更することが可能となる。
(Gist of the invention)
(1) The virtual machine image
(2) Setting method The
(3) The setting
(4) The virtual machine image configuration
Generally, the virtual machine
(5) The host machine
(6) The host machine setting
(発明の効果)
(1)仮想マシンにインストールされているソフトウェア毎に個別の設定が必要な場合も自動で設定を入れることができ、仮想マシンの使用者の手間が削減される。
(2)ソフトウェア毎の設定コマンドが不明な場合でも仮想マシンの使用者は仮想マシンを容易に利用できる。
(3)仮想マシンの使用者は仮想マシンの構成情報を容易に作成することができる。
(4)ホストマシンの設定を引き継ぐことでネットワークの設定方法など自動で引き継ぐことができ、仮想マシンの使用者の手間が削減される。またネットワーク設定が不明な場合であっても仮想マシンの使用者は容易に仮想マシンを利用できる。
(5)仮想マシン起動後に新しいソフトウェアをインストールもしくはアンインストールした場合でも設定が自動で反映される。またホストマシンの状態変更が自動で反映される。
(The invention's effect)
(1) Even if individual settings are required for each software installed in the virtual machine, the settings can be automatically entered, reducing the time and effort of the virtual machine user.
(2) Even if the setting command for each software is unknown, the user of the virtual machine can easily use the virtual machine.
(3) The user of the virtual machine can easily create the configuration information of the virtual machine.
(4) By taking over the settings of the host machine, the network setting method can be taken over automatically, and the time and effort of the virtual machine user can be reduced. Even if the network settings are unknown, the virtual machine user can easily use the virtual machine.
(5) Even if new software is installed or uninstalled after the virtual machine is started, the settings are automatically reflected. In addition, the status change of the host machine is automatically reflected.
11:仮想マシンイメージ構成情報管理部
12:設定方法管理部
13:設定投入部
14:仮想マシン起動部
15:仮想マシンイメージ
16:仮想マシンイメージ構成情報作成部
17:仮想マシンイメージ構築ファイル
18:ホストマシン設定管理部
19:仮想マシン設定管理部
20:ホストマシン設定更新通知部
50:仮想マシン
60:ホストマシン環境変数
100:ホストマシン
11: Virtual machine image configuration information management unit 12: Setting method management unit 13: Setting input unit 14: Virtual machine startup unit 15: Virtual machine image 16: Virtual machine image configuration information creation unit 17: Virtual machine image construction file 18: Host Machine setting management unit 19: Virtual machine setting management unit 20: Host machine setting update notification unit 50: Virtual machine 60: Host machine environment variable 100: Host machine
Claims (6)
前記ホストマシンに起動する仮想マシンの構成情報及び環境変数に対する設定コマンドを保持する設定方法管理部と、
前記ホストマシンに仮想マシンが起動するときに、前記仮想マシンに設定されている環境変数を取得し、前記仮想マシンイメージ構成情報管理部から前記仮想マシンの構成情報を取得し、前記設定方法管理部から前記環境変数及び前記構成情報に対応する設定コマンドを取得して前記仮想マシンに投入する設定投入部と、
を備える仮想マシン設定投入システム。 The virtual machine image configuration information management unit that holds the configuration information of the virtual machine to be started on the host machine,
The setting method management unit that holds the configuration information of the virtual machine to be started on the host machine and the setting commands for the environment variables,
When the virtual machine starts up on the host machine, the environment variables set in the virtual machine are acquired, the configuration information of the virtual machine is acquired from the virtual machine image configuration information management unit, and the setting method management unit is used. The setting input unit that acquires the setting command corresponding to the environment variable and the configuration information from the virtual machine and inputs it to the virtual machine.
Virtual machine setting input system equipped with.
前記ホストマシンの状態が変更されたときに前記ホストマシンに関する環境変数の変更内容を前記設定投入部へ通知するホストマシン設定更新通知部と、
をさらに備え、
前記設定投入部は、前記仮想マシン設定管理部及び前記ホストマシン設定更新通知部のいずれか一方から通知された前記変更内容に基づいて前記設定方法管理部から新たな設定コマンドを取得して前記仮想マシンに投入する
ことを特徴とする請求項1に記載の仮想マシン設定投入システム。 A virtual machine setting management unit that manages the configuration information and the setting command of the virtual machine running on the host machine and notifies the setting input unit of the change contents when the state of the virtual machine is changed.
A host machine setting update notification unit that notifies the setting input unit of changes in environment variables related to the host machine when the state of the host machine is changed.
With more
The setting input unit acquires a new setting command from the setting method management unit based on the change content notified from either the virtual machine setting management unit or the host machine setting update notification unit, and obtains the virtual setting command. The virtual machine setting input system according to claim 1, wherein the virtual machine is input to a machine.
前記仮想マシンイメージ構成情報管理部が、ホストマシンに起動する仮想マシンの構成情報を保持し、
前記設定方法管理部が、前記ホストマシンに起動する仮想マシンの構成情報及び環境変数に対する設定コマンドを保持し、
前記設定投入部が、前記ホストマシンに仮想マシンが起動するときに、前記仮想マシンに設定されている環境変数を取得し、前記仮想マシンイメージ構成情報管理部から前記仮想マシンの構成情報を取得し、前記設定方法管理部から前記環境変数及び前記構成情報に対応する設定コマンドを取得して前記仮想マシンに投入する、
仮想マシン設定投入方法。 Virtual machine image configuration information management unit and setting method This is a virtual machine setting input method executed by a virtual machine setting input system that has a management unit and a setting input unit.
The virtual machine image configuration information management unit holds the configuration information of the virtual machine to be started on the host machine.
The setting method management unit holds the configuration information of the virtual machine to be started on the host machine and the setting command for the environment variable.
When the virtual machine starts up on the host machine , the setting input unit acquires the environment variables set in the virtual machine, and acquires the configuration information of the virtual machine from the virtual machine image configuration information management unit. , Acquire the setting command corresponding to the environment variable and the configuration information from the setting method management unit and input it to the virtual machine.
How to submit virtual machine settings.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017182277A JP6781126B2 (en) | 2017-09-22 | 2017-09-22 | Virtual machine setting input system, virtual machine setting input method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017182277A JP6781126B2 (en) | 2017-09-22 | 2017-09-22 | Virtual machine setting input system, virtual machine setting input method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019057206A JP2019057206A (en) | 2019-04-11 |
JP6781126B2 true JP6781126B2 (en) | 2020-11-04 |
Family
ID=66107588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017182277A Active JP6781126B2 (en) | 2017-09-22 | 2017-09-22 | Virtual machine setting input system, virtual machine setting input method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6781126B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114756261B (en) * | 2022-03-23 | 2023-04-18 | 广域铭岛数字科技有限公司 | Container cluster upgrading method and system, electronic equipment and medium |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8181174B2 (en) * | 2007-12-28 | 2012-05-15 | Accenture Global Services Limited | Virtual machine configuration system |
US9116715B2 (en) * | 2008-02-04 | 2015-08-25 | Rightscale, Inc. | Systems and methods for efficiently booting and configuring virtual servers |
JP2011060035A (en) * | 2009-09-10 | 2011-03-24 | Hitachi Solutions Ltd | System, method and program for deploying application |
JP2011248419A (en) * | 2010-05-24 | 2011-12-08 | Hitachi Ltd | Business computer allotting method and device |
JP5450549B2 (en) * | 2011-09-26 | 2014-03-26 | 日本電信電話株式会社 | Information processing system, information processing system control method, and program |
-
2017
- 2017-09-22 JP JP2017182277A patent/JP6781126B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019057206A (en) | 2019-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11405274B2 (en) | Managing virtual network functions | |
CN108845812B (en) | Plug-in updating method, device, computer equipment and storage medium | |
US9208328B2 (en) | Security system and method for operating systems | |
US10445121B2 (en) | Building virtual machine disk images for different cloud configurations from a single generic virtual machine disk image | |
JP5223596B2 (en) | Virtual computer system and management method thereof, management program, recording medium, and control method | |
JP6081925B2 (en) | Satisfy application dependencies | |
US20170083358A1 (en) | Methods and apparatus to automatically configure monitoring of a virtual machine | |
JP5106625B2 (en) | Method, system, and computer program for configuring a firewall | |
JP4286798B2 (en) | Method for installing driver file on hard drive, computer and computer-readable storage medium | |
US20170329588A1 (en) | Method and Deployment Module for Managing a Container to be Deployed on a Software Platform | |
US11757937B2 (en) | Enabling webapp security through containerization | |
US20170154017A1 (en) | Web Application Management | |
KR20110038053A (en) | Computer application packages with customizations | |
JP2008507775A (en) | System and method for extracting and creating application meta information in a software application repository | |
US12032985B2 (en) | Managed virtual machines | |
US20050091259A1 (en) | Framework to build, deploy, service, and manage customizable and configurable re-usable applications | |
US11243793B2 (en) | Virtual machine management | |
US9350596B2 (en) | On-demand tethered greedy virtual application appliance | |
JP4724660B2 (en) | How to manage software components that are integrated into an embedded system | |
JP6781126B2 (en) | Virtual machine setting input system, virtual machine setting input method, and program | |
US20220350629A1 (en) | Update management for managed virtual machines | |
US10158531B2 (en) | Leveraging and extending mobile operating system MDM protocol | |
US20150215166A1 (en) | System For Dynamic Configuration And Adaptation For Networks And Services | |
US20210117513A1 (en) | Flexible license sourcing at customer sites | |
US12118377B2 (en) | Transition to modern management using managed virtual machines |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190828 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200629 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200811 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200930 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20201013 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201015 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6781126 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |