Rancher で Kubernetes 用の標準化された VMware イメージを構築する方法

Rancher で Kubernetes 用の標準化された VMware イメージを構築する方法

Kubernetes を学習するときは、Kubernetes 環境で練習する必要があります。ただし、Kubernetes 環境のインストールはコンテナ化されていません。現在、Rancher を通じてインストール プロセスを簡素化できます。Rancher で Kubernetes を練習してみましょう。

全体の演習は、「標準化された VMware イメージの構築」と「Rancher と Kubernetes のインストールと展開」の 2 つの章に分かれています。

前提条件

Google のサービスを利用する必要があるため、ネットワーク環境は科学的にインターネットにアクセスできる必要があります。具体的な解決策についてはここでは説明しません。

実際の戦闘環境

この演習で使用するコンピュータは Win10 Home Edition です。VMware を介して 3 台の Ubuntu16.04 仮想マシンが実行されます。1 台は Rancher Server として使用して Kubernetes 環境を作成します。他の 2 台は、この Kubernetes 環境にノードとして追加されます。

標準化された VMware イメージとは何ですか?

この実践的な演習では、3 台の Ubuntu 仮想マシンを使用します。Ubuntu のインストールから始めるのは明らかに非常に時間がかかるため、Ubuntu システムを 1 回だけインストールし、このシステムでいくつかの共通設定を行い、共通アプリケーションをインストールしてから、この仮想マシンのファイルを標準化されたイメージとして使用し、3 つのコピーをコピーすると、3 台の仮想マシンを起動できます。

オペレーティングシステムのインストール

Ubuntu 公式 Web サイトから Ubuntu Server 16.04.3 LTS のインストール ファイルubuntu-16.04.3-server-amd64.isoをダウンロードします。

ダウンロードした ubuntu-16.04.3-server-amd64.iso ファイルを使用して、VMware に仮想マシンをインストールします。VMware® VMware® Workstation 12 Player 、バージョン 12.5.6 ビルド 5528349 を使用し、仮想マシンのハード ディスクは 60G に設定され、メモリは 2G でした。

仮想マシンにリモート接続する

システムをインストールした後、次に示すように、SecureCRT ツールを使用して仮想マシンにリモートで接続します。

ログイン後、su - コマンドを使用して root アカウントに切り替えます。

リモートルートアカウントログインを許可するように設定する

/etc/ssh/sshd_config ファイルを開き、次の行を見つけます。

PermitRootLogin 禁止パスワード

次のように変更します。

PermitRootLogin はい

次に、コマンドservice ssh restartを実行して、ssh サービスを再起動します。その後、SecureCRT のルート アカウントを介して仮想マシンに直接ログインできます。

ソースを更新

仮想マシンに root アカウントでログインし、/etc/apt/sources.list ファイルを開いてすべての内容を削除し、次の内容を追加します (現時点では Alibaba Cloud のソースの方が高速です)。

# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - リリース amd64 (20160420.1)]/ xenial main 制限付き
deb-src http://archive.ubuntu.com/ubuntu xenial main 制限付き #software-properties によって追加されました
deb http://mirrors.aliyun.com/ubuntu/ xenial メイン 制限あり
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main 制限付きマルチバース ユニバース #software-properties によって追加
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates メイン 制限あり
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main 制限付きマルチバース ユニバース #software-properties によって追加されました
deb http://mirrors.aliyun.com/ubuntu/ xenial ユニバース
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates ユニバース
deb http://mirrors.aliyun.com/ubuntu/ xenial マルチバース
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates マルチバース
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports メイン 制限付き宇宙 マルチバース
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main 制限付きユニバース マルチバース #software-properties によって追加
deb http://archive.canonical.com/ubuntu xenial パートナー
deb-src http://archive.canonical.com/ubuntu xenial パートナー
deb http://mirrors.aliyun.com/ubuntu/ xenial-security メイン 制限あり
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main 制限付きマルチバース ユニバース #software-properties によって追加されました
deb http://mirrors.aliyun.com/ubuntu/ xenial-security ユニバース
deb http://mirrors.aliyun.com/ubuntu/ xenial-security マルチバース

更新が完了したら、 apt-get updateコマンドを実行して最新のソースに更新します。

Dockerをインストールする

依存アプリケーションをインストールします:

apt-getインストール-y \
  apt-transport-https \
  ca証明書\
  カール\
  ソフトウェアプロパティ共通

パッケージ キーをダウンロードし、ローカルの信頼できるデータベースに追加します。

curl -fsSL https://download.daocloud.io/docker/linux/ubuntu/gpg | sudo apt-key add -

PPAソースを追加:

aptリポジトリの追加\
  "deb [arch=$(dpkg --print-architecture)] https://download.daocloud.io/docker/linux/ubuntu \
  $(lsb_release -cs) \
  安定した"

更新する

apt-getアップデート

Dockerをインストールする

apt-get install -y -q docker-ce=17.03.2*

Dockerを起動する

サービスdocker開始

Docker ステータスの表示

サービス docker ステータス

起動が成功すると、ステータス情報は次のようになります。

バックアップイメージファイル

仮想マシンをシャットダウンし、対応するフォルダーを見つけて、フォルダー全体を標準化されたイメージとしてバックアップします。後で Rancher サーバーとノードをインストールするときに、これらのフォルダーをコピーして開くだけです。

次の章では、Rancher サーバーをインストールし、サーバー環境にノードを追加して、Kubernetes を体験します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Kubernetes オブジェクトボリュームの詳細な使用方法
  • CentOS で Rancher2 をインストールし、Kubernetes クラスターを構成するためのグラフィック チュートリアル
  • OpenSSL を使用した Kubernetes 証明書の生成の概要
  • kubernetes1.5.2 から kubernetes1.10 にアップグレードする際の主要な設定変更記録
  • Kubernetes (k8s) 入門
  • Kubernetes の応用分野の概要

<<:  MYSQL接続ポートが占有され、ファイルパスエラーが発生する問題を解決します

>>:  Vue はシームレスなカルーセル効果を実現

推薦する

HTML 内の CSS および JS リンクのバージョン番号 (キャッシュを更新)

背景検索エンジンで「.htaccess キャッシュ」というキーワードを検索すると、ウェブサイトのファ...

imgタグ間のスペースの問題の詳細な説明

IMG タグの基本分析 HTML5 では、img タグには 4 つの要素があります。 (1) src...

jQuery はテーブルのページング効果を実装します

この記事では、テーブルのページング効果を実現するためのjQueryの具体的なコードを参考までに紹介し...

Web データ ストレージ: Cookie、UserData、SessionStorage、WebSqlDatabase

クッキーこれはクライアント ブラウザの状態を保存するための標準的な方法です。Cookie はブラウザ...

docker によってプルされたイメージがどこに保存されるかの詳細な説明

20200804追記:記事の内容に誤りがある可能性があります。他の回答を検索することもできます。 d...

Vue双方向バインディングの詳細な説明

目次1. 双方向バインディング2. 他のタグを選択した場合にも同じ結果になりますか? 答えはもちろん...

テキストエリアの残りの単語数を動的に取得する方法

仕事で、これまで一度も書いたことのないケースに遭遇しました。午後の半分をその作業に費やし、ついに書き...

Linux におけるシステム入出力管理の詳細な説明

システムの入力と出力の管理1. システムの入力と出力を理解するLinuxシステムでは、1は正しい出力...

ElementUIはカスケードセレクタを実装します

この記事の例では、カスケードセレクターを実装するためのelementUIの具体的なコードを参考までに...

Ubuntu 18.04 サーバーのパスワードを忘れたり改ざんされた場合にパスワードをリセットする方法

最近、サーバー上のアカウントが2つハッキングされ、パスワードが改ざんされました。幸い、まだ使えるアカ...

ボタンの 4 つのクリック応答方法の概要

ボタンは頻繁に使用されます。ここでは、イベント処理メソッドを整理し、実装方法が多数あることを発見しま...

HTMLはマーキーを使用してテキストを左右にスクロールします

コードをコピーコードは次のとおりです。 <本文> //マーキーの助けを借りて<MA...

JavaScript キャンバス テトリス ゲーム

テトリスは非常に古典的な小さなゲームで、私もそれを書いてみました。しかし、できるだけ簡潔で論理的なコ...

OpenSSL を使用した Kubernetes 証明書の生成の概要

Kubernetes は、基本認証、トークン認証、CA 認証の 3 種類の認証をサポートしています。...

HTML で Web ページに動的な時計を書く

HTML を使用して動的な Web クロックを作成します。コードは次のとおりです。 <!DOC...