Kubernetesサービス導入

2989 ワード

あらかじめ準備する

# 현재 Kubernetes Cluster와 독립적인 Jenkins, GitLab을 사용
# Jenkins 파이프라인으로 자동 배포 환경 구축
# Jenkins에서 원격으로 Kubernetes Cluster를 제어하기 위해 kubectl 및 docker 설치 필요

# 도커 소켓에 대한 권한 부여
sudo usermod -a -G docker $USER #경우에 따라 dockerroot로 설정
sudo chmod 777 /var/run/docker.sock
sudo chown root:docker /var/run/docker.sock

プラグインのインストール



kubernetes-cdプラグイン(2021.10ベース)を使用してインストール中にエラーが発生しました.
jackson 2-apiとsnakeyamlプラグインがインターリーブされyamlファイルが読めません
kubernetes-cdプラグインを1.0に降格した場合に解決
kubernetes-cdインストールパス
# 기존 kubernetes-cd 플러그인 제거 명령어
cd /var/lib/jenkins/plugins/
rm -rf kubernetes-cd*

# kubernetes-cd 플러그인 복사 및 Jenkins 재시작
sudo cp kubernetes-cd.hpi /var/lib/jenkins/plugins/
cd /var/lib/jenkins/plugins/
sudo chown jenkins:jenkins kubernetes-cd.hpi
sudo chmod 755 kubernetes-cd.hpi
sudo systemctl restart jenkins.service
次のように降格したことを確認します.

資格証明の設定





プロファイル転送(Master Node Server→Jenkins Server)
# Master Node Server에서 수행
sudo scp ~/.kube/config [email protected]:/home/j/test

# Jenkins Server에서 수행
chmod 755 config

次のように作成された資格証明を確認します.

kubernetes接続の設定が完了しました

パイプラインの構築




配置ファイルの作成とアップロード


Dockerfile

test.yaml

jenkinsfile.groovy

GitLabにアップロード

GitLabへのアップロードを確認します.以下のようにします.

Webhookを設定するときは、次のように自動的に生成されることを確認してください.

サービス導入の検証



Can Do It
brb