技術的な会話|クラウドサーバーK8S方法のリモートアクセスと制御

クラウドに展開K8Sコンテナファイリングシステムのために、あなたは、SSH経由でリモートにあるホストK8Sにログインし、K8Sサービスシステムを制御するためのコマンドkubectlツールを実行することができます。しかし、最初の2つのステージのSSHは、Linuxデスクトップや、Kubectlは、ローカルのデスクトップ環境から環境を操作するMacOSの学生を使用してデスクトップへのリモートアクセスにログインするときに、使用に不便を感じ、不快に感じます。

ここではローカルデスクトップのリモートアクセスとコントロールクラウドK8Sサーバから直接方法だ、良い気分を復元することができます。この方法は、Windowsデスクトップ用も適用可能であるが、異なるローカルファイルパスには、適切な変更を加える必要があります。

 

kubectlリモートアクセス制御原理  

K8S大きな重点ベースのクラウドコンピューティング・プラットフォームのセキュリティで、ノードまたはコンポーネント間の通信は、送信、通信メッセージを暗号化する送信者を暗号化されている、受信者は、平文を復号化します。公開鍵、秘密鍵およびデジタル証明書のセキュリティメカニズムによって、ノード間通信、ノードまたはユーザを識別するために、通信及びアクセスのセキュリティを確保します。

図kubectlリモートアクセスとコントロールが作品をK8S

K8Sの初期化は、kubeadmコマンドが自動的に管理者ユーザkubernetes管理者、ユーザーを作成し、公開鍵、秘密鍵とデジタル証明書、マスターノード/etc/kubernetes/admin.confの設定ファイルに格納された証明書情報を生成するとき。

ユーザーは、証明書ファイル、限りネットワーク相互接続など、リモートでK8Sサーバーにアクセスすることができます、どんなにを保持しています。ローカルユーザのアクセスかのように、サーバによってリモートユーザの身元を識別するために、クライアントから送信されたデジタル証明書のK8Sサーバ、リモートアクセス認証ので。

Kubectl defaultコマンドは、$ HOME / .kube /設定ファイルのマシンから設定ファイルを読み込み、また、環境変数$ KUBECONFIGが異なるコンフィギュレーションファイルを指定してサポートしています。

Admin.confプロトコルコンフィギュレーションファイルの設定ファイルサーバーの属性は、リモートサーバーのアドレスとポートを指定します。サーバーは通常、クラウドIPネットワークとパブリックIPアドレスを持つ2つのシステム:クラウド、IPアドレスを介して互いの間でのクラウドサーバーへのアクセスの内側、パブリックネットワークにアクセスしてから、外部のクラウドプラットフォーム、クラウドサーバーで、サーバーは、クラウドを使用する必要があります。パブリックIPアドレス。

ローカルファイルシステムにコピーされたコンフィギュレーションファイルadmin.confしたら、クラウドサーバに適切に接続するには、パブリックIPアドレスに置き換え、サーバーのプロパティを変更する必要があります。

たとえば、次のように:

サーバー構成ファイル属性の元の構成:

サーバー:https://192.168.1.191:6443

パブリックアドレスに置き換えます。

サーバーます。https://118.31.xo.xo:6443

また、ドメイン名またはホスト名の代わりにIPアドレスを使用することができます属性サーバーは、ドメイン名またはホスト名がデジタルコンフィギュレーション・ファイル内のデジタル証明書で署名されていることを条件とします。それ以外の場合は、デジタル署名検証レポートエラーkubectlコマンドが実行されます。

たとえば、次のようにアクセスの構成にホスト名は次のようになります。

サーバーます。https:// MYSERVER:6443

 

第二に、 仮定

起草の利便性のために、それはあまりにも多くの詳細、次の仮定を必要としません。

これは、ローカルのデスクトップクライアント制御プログラムkubectlのK8SがインストールされているとクラウドK8Sシステムのバージョンと互換性があります。

ローカルにインストールされたSSHクライアントプログラムは、証明書プロファイルをダウンロードするには、後にsftpコマンドを使用します。

 

三、 kubectlリモートアクセス制御原理  

アリは、例えば、コンフィギュレーション・プロセスとしてクラウドK8Sのdevの環境に展開されます。DEV-7は、クラウドサーバーがマスターノードK8Sで知られています。

ローカルデスクトップ、オープンターミナル端末にログオンします。

ローカルの/ etc / hostsファイルを変更し、最後に行を追加します。

私たちは、 / etc / hostsの... 118.31 .xo.xo MYSERVER

ローカルディレクトリを作成します。

ます。mkdir -p〜/ .kube

 

〜$ HOME環境変数と同義シンボル。

現在の作業ディレクトリを変更します。

ます。mkdir -p〜/ .kube

 

rootのパスワードを入力するようにプロンプ​​トに従って、クラウドサーバ上のSFTPダウンロードコンフィギュレーションファイルを使用します。

DEV- @#のSFTPルート7 
SFTP >取得の/ etc / kubernetes / admin.conf設定
SFTP >さようなら

 

サーバーの構成ファイル属性を変更します。

viの設定
...
サーバーます。https:// myserverの:6443
...

構成プロセスは完了です。

ホスト名myserverが、デジタル証明書に署名されていますので、コマンドが正しく識別kubectl。

  

第四に、テストおよび認定

コンフィグ設定ファイルを表示します。

より〜/ .kube /設定

 

 クラウド内のクラスタノードを表示するには、kubectlコマンドを使用します。

#は、ノードを取得しますkubectl

 

結果はローカルデスクトップが正しくクラウドK8Sサーバーに接続することができることを示しています。読者は豊富なK8Sサーバーを管理し、制御するためのコマンドのサブセットコマンドツールkubectlを使用することができます。

ローカルデスクトップ、入力、出力、およびサブコマンドファイルのkubectlコマンドを実行するにはYAMLを使用することができますのでしっかりとローカルデスクトップとクラウドサーバーが、作成することも簡単にパーソナライズされた個人的な仕事の間でファイルを転送する手間をなくし、ローカルファイルシステムに統合環境。

あなたに小さなオンデマンドパートナー、インスピレーション、または技術的なガイダンスを提供するためにありがとうございました。

 

ご質問があれば、使用時には、読者、ユーザーおよびマイクロ友人は、私に連絡すること自由に感じなさい。

[email protected]:として、クリア

マイクロ手紙:solomonxu9999

 

この記事はもともと公共の数に掲載された著作者のオリジナル作品であり、   リモートアクセスとクラウドサーバーK8S方法の制御|技術トーク

 

おすすめ

転載: www.cnblogs.com/solomonxu/p/11484844.html