로컬 서버(Laptop)에서 테스트를 위해 VM을 특정한 환경(예를 들어 kubernetes, ceph와 같은)으로 구성해야할 경우가 종종있다. 이때 마다 불필요하게 반복된 작업을 해야할 경우가 있었다. 이를 Terraform을 통해 코드화 하여 한번 구성해 놓으면 이후에도 손쉽게 환경을 구성할수 있도록 해보고자 했다. 검색해보니 아쉽게도 official하게 제공되지는 않지만 libvirt-provider가 있어 이를 활용해 KVM환경에서 VM을 생성 및 관리하는 방법에 대해 알아보고 테스트 했던 내용을 기반으로 기술해보고자 한다. 그럼, Terraform을 이용하여 KVM환경에서 VM을 어떻게 생성하는지 알아보도록 하자. 우선, 실행해보았던 환경은 다음과 같다. jacob@jacob-laptop:~/w..
cronjob을 이용한 mariadb 백업 수행 cronjob을 이용하여 mariadb backup을 수행해보자. 아래 작업은 다음과 같은 사항이 기반되어 있다고 가정하고 시작하였다. mariadb 는 k8s내에 deployment로 배포되어 있다라고 가정 mariadb 라는 service로 해당 cluster내에서 접근이 가능한 상황(별도의 nodeport, loadbalancer로 동작되지 않음) manifest 작성 아래 내용을 사전에 확인하자. mariadb password 및 host 정보등을 정확히 확인해놓아야 한다. hostpath로 지정한 directory(/data) 가 사전에 생성되어 있어야 한다. 아래와 같은 cronjob manifest를 생성하여 배포를 진행한다. apiVersio..
laptop에서 docker build 환경이 필요하여 wsl2로 convert 하는 작업을 한 후에 minikube를 virtualbox 기반으로 다시 동작 시키려 하자 다음과 같은 에러가 발생되며 minikube를 구동하지 못하였다. PS C:\Users\jacob> minikube start * minikube v1.5.2 on Microsoft Windows 10 Pro 10.0.19037 Build 19037 * Creating virtualbox VM (CPUs=2, Memory=4096MB, Disk=20000MB) ... * Retriable failure: create: precreate: This computer doesn't have VT-X/AMD-v enabled. Enabling..
K3s 란 가벼운 Kubernetes로 쉽게 설치하고 적은 메모리/binary 파일을 사용하여 Edge/IoT 환경 혹은 CI/Dev 환경에서 k8s를 쉽게 사용할 수 있도록 도와주는 도구이다. https://github.com/k3s-io/k3s installation K3s 설치 설치는 간단하다. 아래와 같이 shell script를 제공하며 바로 다운받아 설치를 진행한다. [root@deploy ~]# curl -sfL https://get.k3s.io | sh - [INFO] Finding release for channel stable [INFO] Using v1.20.2+k3s1 as release [INFO] Downloading hash https://github.com/rancher/k3..
log 확인 아래 명령을 통해 log를 확인해볼수 있으며 kubectl logs [pod_name] tail -f 와 같은 지속적인 log확인이 필요한 경우 아래와 같이 수행하여 log를 확인한다. kubectl logs --follow [pod_name] bash로 연결 실제 동작중인 pod에 연결해서 확인이 필요한 부분이 있을 경우 bash로 연결하는 방법이다. kubectl exec -it nexus-866ddcf974-ngkfg /bin/bash yaml형태로 출력 아래와 같이 단순히 pod의 이름만이 출력된다. jacob@JACOB-DESKTOP:~$ kubectl get pod nexus-866ddcf974-ngkfg NAME READY STATUS RESTARTS AGE nexus-866dd..
개발을 하다보면 개발용으로 minikube를 사용하고 실제 test 혹은 QA 용, production용으로 kubernetes를 다르게 두는 경우가 있다. 이와 같은 경우 어떤 방식으로 kubectl의 config를 설정하면 좋을지에 대하여 기술해본다. 우선 kubectl을 설치한다. https://kubernetes.io/docs/tasks/tools/install-kubectl/ 이후 minikube를 설치하고 production 환경의 kubernetes 정보를 확인한다. kubectl 및 minikube를 처음 설치한 후에는 아래와 같이 config 정보를 확인해볼 수 있다. PS C:\Users\Jacob> kubectl.exe config view apiVersion: v1 clusters:..
Docker image 생성 및 deployment 생성 아래와 같이 Dockerfile을 생성하고 Build하여 image로 생성한다. jacob@jacob-laptop:~/workspaces/hellopy$ cat Dockerfile FROM python:3.7.4 EXPOSE 8000 CMD python -m SimpleHTTPServer jacob@jacob-laptop:~/workspaces/hellopy$ docker build -t hello-py:v1 . Sending build context to Docker daemon 2.048kB Step 1/3 : FROM python:3.7.4 ---> 02d2bb146b3b Step 2/3 : EXPOSE 8000 ---> Using cache..
CentOS7에서 Docker 설치 및 실행법 CentOS7에서 Docker 설치 및 실행을 하는 방법을 간단히 기술한다. [root@jenkins centos]# cat /etc/centos-release CentOS Linux release 7.6.1810 (Core)위와 같은 환경에서 설치를 진행하였다. [root@jenkins centos]# yum install docker Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: centos.mirror.moack.net * extras: centos.mirror.moack.net * updates: centos.mirror.moack.net Resolvin..
- Total
- Today
- Yesterday
- jenkins
- kubernetes
- openstack backup
- DevSecOps
- vmware openstack
- GateKeeper
- hashicorp boundary
- mattermost
- ansible
- boundary ssh
- Terraform
- kubernetes install
- kata container
- macvlan
- azure policy
- socket
- nginx-ingress
- openstacksdk
- aquasecurity
- minikube
- K3S
- OpenStack
- open policy agent
- wsl2
- minio
- metallb
- Jenkinsfile
- ceph
- Helm Chart
- crashloopbackoff
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |