카테고리 보관물:  IT

ceph storage class 사용 wordpress, mysql pod 생성

영구 분산 볼륨을 사용하는 LAMP pod 생성 테스트

# Ceph Storage Class 생성

kubectl apply -f csi/rbd/storageclass.yaml

# service, pv가 포함된 mysql deployment 배포

kubectl create -f mysql.yaml
service/wordpress-mysql created
persistentvolumeclaim/mysql-pv-claim created
deployment.apps/wordpress-mysql created
 
kubectl get pvc
NAME             STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS      AGE
mysql-pv-claim   Bound    pvc-6d458ff1-54bf-4f34-b010-a0f4b2a0966e   20Gi       RWO            rook-ceph-block   94s
 

# service, pv가 포함된 wordpress deployment 배포
kubectl create -f wordpress.yaml
service/wordpress created
persistentvolumeclaim/wp-pv-claim created
deployment.apps/wordpress created
 

kubectl get pod
NAME                               READY   STATUS    RESTARTS   AGE
wordpress-7cf5c5c8b-5cgqk          1/1     Running   0          42s
wordpress-mysql-6f99c59595-9vs7z   1/1     Running   0          4m8s
 

# metallb 설치 후

kubectl get svc  wordpress
NAME              TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
wordpress         LoadBalancer   10.96.232.248   10.1.4.160    80:31494/TCP   27s

ceph 구축

K8S pod용 영구 저장소 구성을 위한 ceph(Object Storage) 구성

기구성 상태 K8S 클러스터의 worker 노드에 ceph storage 용 raw device 할당

 -> 파티션 또는 포멧이 되어 있지 않은 초기화된 디스크

※ 최소 조건 : worker 노드 3개 이상

git clone –single-branch –branch v1.10.10 https://github.com/rook/rook.git

cd rook/deploy/examples

kubectl create -f crds.yaml -f common.yaml -f operator.yaml

kubectl create -f cluster.yaml

kubectl -n rook-ceph logs -l app=rook-ceph-operator -f

ceph용 pod 생성 상태 확인

tool pod에서 ceph 상태 조회

VMware ESXi7 인증서 변경

최초 vSphere 설치시에는 웹콘솔 접근을 위한 vmware installer인증서가 적용된 private 인증서가 기본 설치 되어 있습니다.

사용상에는 대단히 큰 불편은 아니지만 주기적으로 안전하지 않은 페이지를 눌러줘야 되는 번거로움이 있고 할당된 도메인과 public 인증서를 활용할 수 있도록 해보겠습니다.

구성 환경
– 인증서 보관 경로 : /etc/vmware/ssl
– root 인증서 : castore.pem
– public key : rui.crt
– private key : rui.key
– 인증서 발급 기관 : Let’s Encrypt(RSA 키 발급)

기존 인증서 백업

    $ cd /etc/vmware/ssl
    
    # 원복을 위한 root 인증서, public key, private key 백업
    $ cp castore.pem castore.pem.bak
    $ cp rui.crt rui.crt.bak
    $ cp rui.key rui.key.bak

    Let’s Encrypt 인증서 적용 및 웹서비스 재기동

    $ cd /etc/vmware/ssl
    
    # root 인증서 다운로드 및 적용
    $ curl https://letsencrypt.org/certs/isrgrootx1.pem.txt -o castore.pem
    
    # Let's Encrypt 인증서 파일(fullchain.pem, privkey.pem) /etc/vmware/ssl 사전 복사 처리 후 진행
    $ openssl x509 -inform PEM -in fullchain.pem -out rui.crt
    $ cp privkey.pem rui.key
    
    # 웹서비스 재기동
    $ /etc/init.d/hostd restart

    서비스 재기동 완료 후 브라우저에서 할당된 도메인으로 정상 접속되면 완료 입니다.