とりあえずVM立ててsshログインできるまで

Qiitaなどなど様々参考にしてやっとリモートログインできるとこまでで終了

日曜夜にやることじゃない。

centos7にjenkins入れたときの最適化やなんやを調べるだけなのでVagrantだけでもよいのだが一応触ってみた。

 

minikube起動

公式の手順みるのが一番はやい。

説明省略。

minikube dashboardでGUIで状況確認できるのがよい

このあたりVagrant単体でできるとよいのにな。

 

pod起動

バニラcentos立てるだけならば以下実施。

シェルにはいるがexitしてしまってよい。

kubectl run centostest --tty -i --image=centos sh
 

service追加

sshのサービスポートを外出ししたいので以下実施

 

PS> kubectl get deployments
NAME         READY   UP-TO-DATE   AVAILABLE   AGE
centostest   1/1     1            1           8m3s
 

PS> kubectl expose deployment centostest --type=NodePort --port=10022
service/centostest exposed
 

 

VM内でsshd起動

systemctlがroot権限で実行できない。

dockerではprivelegeの設定追加する方法が様々見つかるが

minicubeの場合はgolangのソースにパッチを書くしかないのかな。

とりあえずshellからsshd起動

 

shellに入るのは以下のような感じ

dashboardから入ってもいいとおもう。

> kubectl exec -it  centostest-785bf67965-6tcfj -- sh

 

sshすべてパッケージ導入

yum install openssh*

sshの設定ディレクトリに移動して鍵情報ファイル作成

ssh-keygen -A

sshを手動で起動

/usr/sbin/sshd -d -p 10022

 

注意するのは実際のサービスポートは10022/tcpではなく別のポートが割当となること。

dashboardのserviceの項目で確認できる

sshのログイン、やたらおそいので注意

 

PS > ssh -p 32700 root@192.168.99.101
root@192.168.99.101's password:
Last login: Sun Mar  3 14:42:27 2019 from gateway
debug1: PAM: reinitializing credentials
debug1: permanently_set_uid: 0/0
Environment:
  USER=root
  LOGNAME=root
  HOME=/root
  PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
  MAIL=/var/mail/root
  SHELL=/bin/bash
  SSH_CLIENT=172.17.0.1 63783 10022
  SSH_CONNECTION=172.17.0.1 63783 172.17.0.7 10022
  SSH_TTY=/dev/pts/6
  TERM=xterm-256color
[root@centostest-785bf67965-6tcfj ~]#

 

 

こんな感じで初期状態のCentOS起動まで成功

powershellでの操作なれなくでだるい。

とりあえず立てた、という感じなので注意。