# Read more about SSH config files: https://linux.die.net/man/5/ssh_config
Host host1
HostName xxx.xxx.xxx.xxx (IPアドレス,DNSなど接続先)
Port 22
User hoge (ログインするユーザ名)
IdentityFile ~/.ssh/sample_rsa (鍵認証に使う鍵ファイルを記述)
configファイルを設定するとconfig のhostが表示されるので選択して接続する.
「Continue」を選択する.
接続が成功したら,「Open Folder」から接続先のフォルダを選択して操作できるようになる.
Container 接続
接続するために, nginx のimageをpullして起動しておく.
$docker run --name remote-sample -d-p 8080:80 nginx
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c164ead158ca nginx "/docker-entrypoint.…"15 seconds ago Up 13 seconds 0.0.0.0:8080->80/tcp remote-sample
nginx が起動したのを確認して, Remote Development タブを開くと, Containers に nginxが表示される.
リアルタイムで表示されなかったが,VSCodeを再起動したら表示された.
$ export GITHUB_TOKEN=<your-token>
$ export GITHUB_USER=<your-username>
$ export GITHUB_REPO=<repository-name>
$ flux bootstrap github \--owner=${GITHUB_USER}\--repository=${GITHUB_REPO}\--branch=main\--personal\--path=clusters/staging
► connecting to github.com
✔ repository cloned
✚ generating manifests
✔ components are up to date
► installing components in flux-system namespace
namespace/flux-system created
networkpolicy.networking.k8s.io/allow-scraping created
networkpolicy.networking.k8s.io/allow-webhooks created
networkpolicy.networking.k8s.io/deny-ingress created
role.rbac.authorization.k8s.io/crd-controller-flux-system created
rolebinding.rbac.authorization.k8s.io/crd-controller-flux-system created
clusterrolebinding.rbac.authorization.k8s.io/cluster-reconciler-flux-system created
customresourcedefinition.apiextensions.k8s.io/buckets.source.toolkit.fluxcd.io created
customresourcedefinition.apiextensions.k8s.io/gitrepositories.source.toolkit.fluxcd.io created
customresourcedefinition.apiextensions.k8s.io/helmcharts.source.toolkit.fluxcd.io created
customresourcedefinition.apiextensions.k8s.io/helmrepositories.source.toolkit.fluxcd.io created
service/source-controller created
deployment.apps/source-controller created
customresourcedefinition.apiextensions.k8s.io/kustomizations.kustomize.toolkit.fluxcd.io created
deployment.apps/kustomize-controller created
customresourcedefinition.apiextensions.k8s.io/helmreleases.helm.toolkit.fluxcd.io created
deployment.apps/helm-controller created
customresourcedefinition.apiextensions.k8s.io/alerts.notification.toolkit.fluxcd.io created
customresourcedefinition.apiextensions.k8s.io/providers.notification.toolkit.fluxcd.io created
customresourcedefinition.apiextensions.k8s.io/receivers.notification.toolkit.fluxcd.io created
service/notification-controller created
service/webhook-receiver created
deployment.apps/notification-controller created
Waiting for deployment "source-controller" rollout to finish: 0 of 1 updated replicas are available...
deployment "source-controller" successfully rolled out
Waiting for deployment "kustomize-controller" rollout to finish: 0 of 1 updated replicas are available...
deployment "kustomize-controller" successfully rolled out
deployment "helm-controller" successfully rolled out
Waiting for deployment "notification-controller" rollout to finish: 0 of 1 updated replicas are available...
deployment "notification-controller" successfully rolled out
✔ install completed
► configuring deploy key
✔ deploy key configured
► generating sync manifests
✔ sync manifests pushed
► applying sync manifests
◎ waiting for cluster sync
✔ bootstrap finished
$ kubectl get all -n flux-system
NAME READY STATUS RESTARTS AGE
pod/helm-controller-7fc55767cc-bfzck 1/1 Running 0 4m51s
pod/kustomize-controller-6b85bf79f9-t6qs4 1/1 Running 0 4m51s
pod/notification-controller-7bb8667967-6xqdb 1/1 Running 0 4m48s
pod/source-controller-6cdb6c8889-hpsxx 1/1 Running 0 4m53s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/notification-controller ClusterIP 10.108.140.72<none>80/TCP 4m50s
service/source-controller ClusterIP 10.104.224.8<none>80/TCP 4m53s
service/webhook-receiver ClusterIP 10.103.160.216<none>80/TCP 4m48s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/helm-controller 1/111 4m51s
deployment.apps/kustomize-controller 1/111 4m53s
deployment.apps/notification-controller 1/111 4m48s
deployment.apps/source-controller 1/111 4m53s
NAME DESIRED CURRENT READY AGE
replicaset.apps/helm-controller-7fc55767cc 111 4m51s
replicaset.apps/kustomize-controller-6b85bf79f9 111 4m52s
replicaset.apps/notification-controller-7bb8667967 111 4m48s
replicaset.apps/source-controller-6cdb6c8889 111 4m53s
社内で新しいチームにをサポートしていくことになりました。
チームリーダーの方やマネージャーと「1 on 1」を実施して、抱えている問題や
自分が協力できそうなことを話し合い、7月から本格的にサポートしていくことになりましたが、自戒の念を込めてサポート時に心掛けようとすることをいくつかまとめておこうと思います。
去年の9月に新チームが発足し、チームメンバーに何かできることがないかを考えたときに「1 on 1」という選択肢を選択しました。
そこから「1 on 1」を始めて半年以上たちましたので、やってきたことをふりかえり、気づきをまとめようと思います。
これから「1 on 1」を始めてみようという方や迷っている方の参考になればと思います。
1 on 1をはじめたもっとも大きな理由は「評価」です。
半期に1度メンバーの評価を行うシステムでしたが、感じた課題は「フィードバックが遅い」ことです。
個人的には半年の評価時に「評価低いよ」といわれるのが、誰も幸せにならないと感じていたからです。
評価を受ける人も、「今自分はこう思われているんだな」、「こういうことをやった方が良いな」など
短期でフィードバックされれば、途中からカイゼンできる可能性だってあります。
そういった評価に対するもどかしさを解決したい思いで「1 on 1」を導入しました。
実態
背景で述べたように、モチベーションは「評価」でした。
しかし、実際に「1 on 1」を進めていくと、テーマが徐々に変化したので時系列ごとに書きます。
1~2ヵ月
目標/評価ベース
初めのうちは予定通り、評価するために「1ヵ月」「2ヵ月」「3ヵ月」の目標を立ててもらい定期的にフィードバックしました。
この方法によって定めた目標に対して停滞しているようであればカイゼンのアクションを話し合ったり成果の見える化に注力していた時期です。
いまふりかえると、この時の「1 on 1」は割と自分が発言しており参加メンバーは同意が多かったと思います。
効果として、目標や課題駆動で物事に取り組む習慣がついたように感じます。
2~4ヵ月
ふりかえり/アクションベース
目標が明確になったため、「ふりかえり」を中心に進めました。
@viva_tweet_xさんのふりかえり読本にもある
ふりかえりの「型」を意識してふりかえりました。
メンバーの抱えている内容によって「学びを最大にする」、「多角的に捉える」、「問題を解消する」などなど
使い分けました。
効果として、立ち止まって考えることで仕事の問題をカイゼンできたことや、メンバーとの信頼関係が気づけました。
このころになると、「1 on 1」では、傾聴が中心になりメンバーの発言がほとんどでした。
4ヵ月~
フリーテーマ
メンバーの発言がほとんどなため、とくに「テーマ」を決めず、話したいことを話してもらいました。
変化が表われたと感じたのは、整理できてなくてもどんどん発言してくれることです。
1 on 1の場を自分の考えを整理する場や課題を解決するための場として認識し、トレーニングできるので
会議などでも、考えをまとめて発言したりまとまらないときに困っていることを伝えるなど言語化してつたえる力がついたと思います。
人と接する時に効果的にできる「やり方」はもちろん大切です。
とくに1 on 1を始めたころは私自身「やり方」に固執していました。しかし、 1 on 1を実施し体験することで
過去に1 on 1体験したときにも感じたのですが、「自分がどうあるか?」「興味をもっているのか?」など
自分の姿勢は言葉にしなくても相手に伝わることが分かりました。そんな相手がアドバイスしようが、話を聞こうが
相手のアクションに繋がらないし、本音を打ち明けてくれることはありません。
なので、成長や変化を促したい場合は、自分が成長し変化する姿勢を見せることがとても重要だと思います。
さいごに
半年とちょっと続けてきた1 on 1についてふりかえり、まとめました。
はじめはメンバーのために始めたことでしたが、気が付くと1 on 1自体が自分の成長にも大きく影響していました。
コツコツカイゼンを続けていく中でメンバーとの信頼関係も築けるので、迷っている方ははじめてみることをオススメします。