GNU/Linux >> Linux の 問題 >  >> Cent OS

VirtualBoxを使用してVagrantCentOS7を作成する方法

Vagrantは、HashiCorpによって開発された、業界標準のテクノロジーに基づいて構築され、生産性と柔軟性を最大化するための単一の一貫したワークフローによって制御される、軽量で再現性のあるポータブルな開発環境を作成および構成するための優れたツールです。

これは、VirtualBox、VMware、KVM、Linux Containers(LXC)などの仮想化ソフトウェア、およびAnsible、Chef、Salt、P​​uppetなどの構成管理ソフトウェアの上位レベルのラッパーです。 Vagrantを使用すると、VirtualBoxを使用してローカル仮想マシンを簡単にスピンできます。仮想化環境を利用し、選択した仮想マシンを展開し、ユーザーが直接アクセスできるように管理し、その上に複数の仮想マシンを管理します。

このチュートリアルでは、VirtualBoxを使用してVagrantCentOS7ベースボックスを最初から作成する方法を学習します。

1。 VirtualBoxのインストール

まず、最新バージョン、つまり放浪者の仮想化用の4.3.28仮想ボックスをダウンロードします。 Webブラウザを使用してVirtualBoxの公式ダウンロードページからダウンロードするか、ターミナルを使用してwgetを使用できます。ここでは、ホストマシンでUbuntu 14.04を実行しているので、Ubuntu用のdebianパッケージをダウンロードします。

# wget http://download.virtualbox.org/virtualbox/4.3.28/virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb

--2015-06-16 17:49:13-- http://download.virtualbox.org/virtualbox/4.3.28/virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb
Resolving download.virtualbox.org (download.virtualbox.org)... 137.254.120.26
Connecting to download.virtualbox.org (download.virtualbox.org)|137.254.120.26|:80... connected.
...
HTTP request sent, awaiting response... 200 OK
Length: 65115674 (62M) [application/x-debian-package]
Saving to: ‘virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb’
100%[===============================>] 65,115,674 36.8MB/s in 1.7s
2015-06-16 17:49:15 (36.8 MB/s) - ‘virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb’ saved

debianファイルをダウンロードしたら、dpkgパッケージマネージャーを使用してインストールします。

# dpkg -i virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb

次に、必要な依存関係を修正するために、以下のコマンドを実行します。

# apt-get -f install

2。 Vagrantのインストール

ホストマシンでUbuntu14.04を実行しているので、wgetまたはお気に入りのWebブラウザーを使用して、公式のVagrantダウンロードページから最新バージョンのvagrant、つまり1.7.2をダウンロードします。

# wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.7.2_x86_64.deb

ダウンロード後、dpkgパッケージマネージャーを使用してインストールします。

# dpkg -i vagrant_1.7.2_x86_64.deb

Selecting previously unselected package vagrant.
(Reading database ... 117170 files and directories currently installed.)
Preparing to unpack vagrant_1.7.2_x86_64.deb ...
Unpacking vagrant (1:1.7.2) ...
Setting up vagrant (1:1.7.2) ...

3。仮想マシンの準備

CentOSイメージファイルのダウンロード

このチュートリアルではすべてを最初から行っているので、VirtualBoxで独自のセットアップと構成を行って仮想マシンを作成します。したがって、VMの構成を開始する前に、独自のcentos7isoファイルをダウンロードする必要があります。私たちの場所の近くのミラーと必要な画像ファイルを選択することにより、http://mirror.centos.org/centos/7/isos/x86_64/からダウンロードできます。ここでは、CentOS 7の最小限のisoをダウンロードします。isoイメージファイルの準備ができたら、仮想ボックスでの仮想マシンの作成をさらに進めます。

仮想マシンの作成

次に、ホストオペレーティングシステムにインストールしたばかりの仮想ボックスを起動します。次に、新規をクリックします ボタン。次に、仮想マシンに centos-7という名前を付けます。 次に、 Linuxを選択します タイプの下。

そして、 Red Hat(64ビット)を選択します バージョンとして。 メモリサイズの下 、 RAMを残します 512 MB 放浪者はそれを変更する能力を持っているので。

次に、仮想ハードドライブを今すぐ作成を選択します。 、[作成]をクリックします 。 ファイルの場所の下にデフォルト名を残します 。次に、ハードディスクのファイルサイズを 40.00 GBに設定します。 ハードドライブファイルタイプとしてVDI(VirtualBox Disk Image)を選択します 。

次に、動的に割り当てられたを選択します 作成をクリックします 。やあ。 VirtualBoxで仮想マシンを正常に作成しました。

仮想マシンのさらなる構成

次に、さらに構成するには、仮想マシン名をクリックして、[設定]をクリックします。 。次に、ストレージに移動します タブをクリックして[]をクリックします コントローラーIDEのすぐ下 、次にウィンドウの右側にあるCDアイコンをクリックします。 、仮想CD/DVDディスクファイルを選択を選択します 。 CentOS7isoイメージの場所に移動します ダウンロードして選択し、開くをクリックします。 。次に、[ OK]をクリックします 設定を閉じるには メニュー。

4。仮想マシンへのCentOS7のインストール

最後に、作成した仮想マシンにCentOS7をインストールします。インストールプロセスは非常にシンプルで、通常どおりインストールが簡単で、ほとんどのデフォルトオプションを使用できます。 OSのインストール部分については、http://linoxide.com/how-tos/centos-7-step-by-step-screenshots/をフォローすることもできます。

ここで、オペレーティングシステムをインストールした後、Vagrantで動作するようにオペレーティングシステムを構成します。

次に、仮想マシン内でコンソールを開き、rootとしてログインします。

eth0はデフォルトで無効になっているため、補う必要があります。

# ifup eth0

次に、yumパッケージマネージャーを使用して、リポジトリからopenssh、nano、ntp、curlなどの追加パッケージをインストールします。

# yum install -y openssh-clients nano wget ntp curl

次に、起動するたびにntpdサービスを開始できるようにします。

# chkconfig ntpd on

その後、time.nist.govサーバーから時刻を設定します。

# service ntpd stop

# ntpdate time.nist.gov

# service ntpd start

次に、起動時にsshサービスを開始できるようにして、起動後すぐにマシンにsshで接続できるようにします。

chkconfig sshd on

iptablesおよびip45.55.88.66tablesサービスが起動時に開始されないようにします。

# chkconfig iptables off

# chkconfig ip6tables off

次に、SELinuxをpermissiveに設定します。

# sed -i -e 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config

その後、vagrantを使用して使用できるように、vagrantという名前の新しいユーザーを追加します。

# useradd vagrant

次に、vagrantユーザーの.sshフォルダーを作成して、sshキーと情報がそこに保存されるようにします。

# mkdir -m 0700 -p /home/vagrant/.ssh

独自のSSH公開/秘密鍵を使用する場合は、ワークステーションでSSH公開/秘密鍵を作成し、仮想マシンの/home/vagrant/.ssh/authorized_keysに公開鍵をコピーします。

それ以外の場合、Vagrantが提供するSSH公開/秘密鍵を使用する場合は、次のコマンドを実行するだけです。

# curl https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub >> /home/vagrant/.ssh/authorized_keys

次に、authorized_keysファイルのアクセス許可をchmodでより制限するように変更します

# chmod 600 /home/vagrant/.ssh/authorized_keys

次に、.sshフォルダーの所有権を、chownを使用してvagrantユーザーとグループに固定します。

# chown -R vagrant:vagrant /home/vagrant/.ssh

ここで、実行する必要のある主な重要な変更を示します。/etc/sudoersのrequirettyをコメントアウトする必要があります。この変更は、sshがsudoを使用してリモートコマンドを送信できるようにするために重要です。これを行わないと、vagrantは起動時に変更を適用できません。これは、次のコマンドを実行することで実行できます。

# sed -i 's/^\(Defaults.*requiretty\)/#\1/' /etc/sudoers

次のコマンドを実行することで、ユーザーvagrantがパスワードを入力せずにsudoを使用できるようにします。

# echo "vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

次に、 / etc / sysconfig / network-scripts / ifcfg-eth0を開きます。 次のように表示します

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp

ここで、udev永続ネットルールを削除します rmコマンドを使用してファイルを作成します。

# rm -f /etc/udev/rules.d/70-persistent-net.rules

次に、次のコマンドを使用してyumをクリーンアップします。

# yum clean all

次に、 tmpを削除します ディレクトリを作成してクリーンにします。

# rm -rf /tmp/*

次に、最後にログインしたユーザーログをクリーンアップします。

# rm -f /var/log/wtmp /var/log/btmp

履歴をクリーンアップします。

# history -c

その後、仮想マシンをシャットダウンします。

# shutdown -h now

仮想マシンがシャットダウンされたら、仮想マシンの[設定]をクリックします。次に、ストレージに移動します タブをクリックし、コントローラーIDEを選択します [ストレージ]タブの[ストレージツリー]セクションの右下隅にある赤いマイナスのアイコンが付いた緑色の四角をクリックします。次に、[ OK]をクリックします [設定]メニューを閉じます。その後、VagrantBoxの作成に進みます。

5。 VagrantBoxの作成

ベースの値を確認してください コマンドラインスイッチは、VirtualBox内の仮想マシンの名前と一致します:

# vagrant package --output centos-7.box --base centos-7

6。 VagrantBoxの追加

新しく作成したVagrantBoxをvagrantに追加します(これにより、Vagrant Boxが別の場所にコピーされます):

# vagrant box add centos-7 centos-7.box

さらに、VirtualBox仮想マシンを削除できます。

7。 Vagrantプロジェクトの作成とVagrantfileの構成

Vagrant Projectsは、必要な数だけ作成できます。それぞれに、VagrantProjectとさまざまな仮想マシンの定義を含むさまざまなVagrantfileが含まれます。そのために、 vagrantという名前のディレクトリを作成します ディレクトリlinoxide Vagrantfileと関連する仮想マシンを保存します。

# mkdir -p ~/linoxide/vagrant

# cd ~/linoxide/vagrant

次に、次のようにVagrantfileを作成します。

# vagrant init centos-7

これで、上記で作成したcentos-7ベースボックスを指すVagrantfileができました。 Vagrantが提供するSSH秘密/公開鍵ではなく、独自のSSH秘密/公開鍵を使用している場合は、SSH秘密鍵の場所をVagrantfileに通知する必要があります。そのためには、作成したVagrantfile内に以下を追加する必要があります。

# nano Vagrantfile

config.ssh.private_key_path = "~/.ssh/id_rsa"

仮想マシンとホストオペレーティングシステム間でフォルダを共有したくない場合は、Vagrantfileに以下を追加して無効にします。

config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true

8。 Vagrantの開始

上記のすべての手順を完全に実行したので、最終的に最初のvagrant仮想マシンを箱から出して実行します。 centos 7オペレーティングシステムを搭載したvagrant仮想マシンを実行するには、次のコマンドを実行する必要があります。

# vagrant up

期待どおりにすべてが順調に進んだ場合、vagrantstatusコマンドの実行中に実行中のvagrantボックスが表示されるはずです。

# vagrant status

vagrantボックスにsshで接続し、仮想マシンを制御したい場合は、vagrantsshを実行するだけです

# vagrant ssh

作業が終了し、実行中のvagrant仮想ボックスを削除または破棄したい場合は、vagrant destroyを実行すると、それが破棄されます。

# vagrant destroy

結論

最後に、VirtualBoxを使用してScratchからCentOS7を実行するVagrantボックスを作成しました。この記事では、centos 7イメージファイルまたはDVDまたは仮想マシンが既にあり、Vagrant用のcentos 7ボックスイメージをダウンロードしたくない場合に、Vagrantボックスを簡単に作成できます。この方法は、その時点でインターネット接続が利用できないが、CentOS7のイメージまたはDVDがある場合にVagrantボックスを作成するのにも役立ちます。

上記のチュートリアルは、centos 7 vagrantベースボックスを最初から作成するための非常にシンプルで簡単なガイドです。上記と同様の手順で、任意のLinuxディストリビューションのvagrantボックスを作成することもできます。したがって、質問、コメント、フィードバックがある場合は、下のコメントボックスに書き込んで、追加または改善する必要があるものをお知らせください。


Cent OS
  1. DVDを使用してCentOS7/RHEL7でローカルYUMリポジトリを作成する方法

  2. YUMを使用してOracleLinux/ Fedora / RHEL/CentOSにOracleVirtualBoxをインストールする方法

  3. CentOS7でsudoユーザーを作成する方法

  1. CentOS 7でNginx仮想ホスト(サーバーブロック)を設定する方法

  2. CentOS7にVirtualBoxをインストールする方法

  3. CentOS7にVagrantをインストールする方法

  1. CentOS8LinuxにVirtualBoxをインストールする方法

  2. CentOSでSudoユーザーを作成する方法

  3. CentOS7にVirtualBoxをインストールする方法