반응형

1. wget을 이용한 디렉토리 다운로드 명령어 모음

o wget --help 시 많은 명령어가 나온다. 하지만 자주 쓰는 필요한것들만 정리.


-m : 웹사이트를 미러링하는 옵션. 웹페이지, 하위 링크, 이미지, 스타일시트 등을 재귀적으로 다운로드합니다.
-p : 모든 필요한 파일을 다운로드하는 옵션입니다. 웹페이지를 구성하는 모든 리소스(이미지, 스타일시트 등)를 다운로드합니다.
-E : 다운로드된 파일의 확장자를 조정하는 옵션입니다. 서버가 확장자를 제공하지 않거나 잘못된 확장자를 가지는 경우, 이 옵션을 사용하여 파일의 확장자를 조정합니다.
-k : 다운로드한 HTML 파일의 링크를 조정하는 옵션입니다. HTML 파일 내의 링크를 로컬 파일로 변환하여 링크가 원격 서버에 의존하지 않도록 합니다.
-K : 변환된 파일을 백업하는 옵션입니다. 변환된 파일의 원본을 백업 파일로 저장합니다.
-np : 상위 디렉토리로 이동하지 않는 옵션입니다. 다운로드한 파일을 현재 디렉토리에 저장하고, 상위 디렉토리로 이동하지 않습니다.


### url 주소 다운로드
$ wget {URL}


### 파일 이름 저장하여 다운로드
$ wget -O {파일이름} {URL}

### 백그라운드로 실행
$ wget -b {URL}


### 파일, 폴더 전체 다운로드 
$ wget -r {URL}


### 하위 디렉토리 다운로드
$ wget -m -p -E -k -K -np {URL}

 

 

 

 

반응형

'Linux' 카테고리의 다른 글

Linux local repository 설정 방법  (0) 2023.08.10
Linux SSH 접속시 암호 늦게뜨는것 해결하기  (0) 2023.08.10
Virtual Machine vs Container  (0) 2023.08.10
Ceph Storage 노드 추가  (0) 2023.08.10
Phython 기본 버전 변경  (0) 2023.08.10
반응형

1. Databse 업데이트 명령어 

  • 데이터베이스 테이블 업데이트
# tabletest 테이블에 test 항목의 real을 모두 test로 변경

MariaDB [tables]> update tabletest set test='test' where test='real';​

 

2. Database 백업 & 복원 명령어

  • 데이터베이스 백업 & 복원 
* [전체 데이터베이스 백업& 복원]
MySQL/MariaDB 전체 데이터베이스를 백업받는다.

mysqldump -uroot -p -A > backup_full.sql

* 생성된 덤프를 이용한 복원
mysql -uroot -p < backup_full.sql

* [특정 데이터베이스 백업]
sw_test 라는 데이터베이스만 백업
mysqldump -uroot -p sw_test > backup_sw_test.sql

 

반응형
반응형

$ vim nginx-deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
  labels:
    app: nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        ports:
        - containerPort: 80

 

 

$ vim nginx-service.yaml

apiVersion: v1
kind: Service
metadata:
name: ngnix-service
spec:
selector:
app: nginx
type: NodePort
ports:
- protocol: TCP
port: 80
targetPort: 80
반응형

'Linux > Kubernetes' 카테고리의 다른 글

Kubernetes install in CentOS 7.8  (0) 2023.08.10
반응형

* Kubernetes Install in CentOS 7.8

- 서버 구성

Name IP Role
master 10.0.0.5 master
worker 10.0.0.4 worker

 

OS 설정
### hosts 등록
$ vim /etc/hosts
10.0.0.8 master
10.0.0.4 worker

### Selinux 비활성화
$ vim /etc/selinux/config
SELINUX=disabled

### 방화벽 중지
$ systemctl stop firewalld
$ systemctl disable firewalld

### Swap 메모리 OFF
$ swapoff -a

### 커널 설정 변경
$ yum install bash-completion rsync git vim net-tools tree bridge-utils

$ echo "vm.swappiness=1" >> /etc/sysctl.d/docker.conf

$ echo "net.ipv4.ip_forward=1" >> /etc/sysctl.d/docker.conf

$ sysctl -w vm.swappiness=1
$ sysctl -w net.ipv4.ip_forward=1

$ vim  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1

$ sysctl --system

 

Docker 설치
$  yum install -y yum-utils device-mapper-persistent-data lvm2
$ yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
$ yum -y install docker-ce docker-ce-cli containerd.io
$ mkdir -p /etc/docker/
$ cat <<EOF | sudo tee /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF

$ systemctl daemon-reload
$ systemctl enable docker
$ systemctl start docker
$ systemctl start docker && systemctl enable docker

 

Kubernetes 설치 준비
$ vim /etc/yum.repos.d/kubernetes.repo

[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=0
gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kubelet kubeadm kubectl

또는 

[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kubelet kubeadm kubectl

### 2022.05.19 업데이트
sudo bash -c 'cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg exclude=kube*
EOF'
###

$ yum repolist

### 최신 버전 설치시 하단 명령어
$ yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes

$ systemctl enable kubelet && systemctl start kubelet

 

Master, Worker 노드 설치

 

### Master 노드 ###
### ip는 해당 내부 IP
$ kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=10.0.0.5
....
kubeadm join 10.0.0.5:6443 --token 4cbvqr.btjrgtfqyj649jtl \ --discovery-token-ca-cert-hash sha256:4fb93a143d8a5cc5c755a62f04d1d40332abfe7684b057e789007b9b5adebdf0

### 위 명령시 아래와 같은 에러 발생시 조치사항 ###
[init] Using Kubernetes version: v1.24.0 [preflight] Running pre-flight checks error execution phase preflight: [preflight] Some fatal errors occurred: [ERROR CRI]: container runtime is not running: output: time="2022-05-19T15:53:31+09:00" level=fatal msg="getting status of runtime: rpc error: code = Unimplemented desc = unknown service runtime.v1alpha2.RuntimeService" , error: exit status 1 [preflight] If you know what you are doing, you can make a check non-fatal with
--ignore-preflight-errors=...
To see the stack trace of this error execute with --v=5 or higher

$ rm -rf /etc/containerd/  
$ reboot
### 위 폴더 삭제 이후 서버 모두 재부팅


### 위 내용을 Worker 노드에 설치해야하니 복사
### Worker 노드
$ kubeadm join 10.0.0.5:6443 --token 4cbvqr.btjrgtfqyj649jtl \ --discovery-token-ca-cert-hash sha256:4fb93a143d8a5cc5c755a62f04d1d40332abfe7684b057e789007b9b5adebdf0

### Master 노드
$ export KUBECONFIG=/etc/kubernetes/admin.conf

### Master 노드
### CNI Flannel 설치 
$ kubectl apply -f 
https://raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml

 

마스터 실행 확인
$ kubectl get pods --all-namespaces

 

 

 

 

 

Node NotReady 이슈

 

o 위 그림처럼 Pending 및 Not Ready 이슈시 하단 내용 확인

o Kubernets Not Ready & Coredns Pending 이슈 확인

o kube-flannel.yaml 적용
$ kubectl edit cm corends -n kube-system 
-> 하단 24번줄 loop 주석처리 및 저장

$ kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

24줄 주서처리

o 이후 coredns 서비스 정상 작동 확인 완료 및 NotReady -> Ready 변경 확인

Running 상태 확인
Ready 상태 확인

 

반응형

'Linux > Kubernetes' 카테고리의 다른 글

Kubernetes Apache Web Test  (0) 2023.08.10
반응형

공통 : 리소스를 가상화하고 고립화시키는 공통점이지만 실행 방식에 차이점 존재

 

* Docker

- 운영체제를 제외한 나머지  App 실행에 필요한 파일 패키징하여 제공

- 여러 개의 컨테이너가 동일한 호스트 커널 공유

- 커널이 없어 더 가볍고 적은 리소스 사용

 

* VM

- 하드웨어 가상화 기술

- 가상머신은 기존 서버에 하이퍼바이저 설치와 그 위에 가상 OS와 App을 설치하여 서비스를 수행하는 방식

- 오버헤드 증가로 인한 무겁고 느림

 

 

* 온프레미스 

 - 기업이 IDC 보유 및 시스템 구축부터 운영까지 모두 수행하는 방식.

 - 하드웨어, 네트워크, OS, 미들웨어 등 시스템 구성 요소 자체적인 인프라 구축.

 

* 하이퍼바이저

 - 하드웨어를 가상화하는 기술로 각각 가상머신들을 관리 및 환경 제공.

반응형

'Linux' 카테고리의 다른 글

Linux local repository 설정 방법  (0) 2023.08.10
Linux SSH 접속시 암호 늦게뜨는것 해결하기  (0) 2023.08.10
wget 하위 디렉토리 다운로드  (0) 2023.08.10
Ceph Storage 노드 추가  (0) 2023.08.10
Phython 기본 버전 변경  (0) 2023.08.10
반응형

1. 설치 환경

 o 가상 서버 환경 4대 구성

 o Deploy 서버와 Ceph Node 3대로 구성 + 신규 Ceph Node 1대 추가

 

2. Ceph Package 설치

o Ceph 신규 노드 설치

$ apt install ntp python -y

$ sudo useradd -d /home/cephnode -m cephnode

$ sudo passwd cephnode
암호 임력 : test123


$ echo "cephnode ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/cephnode

$ sudo chmod 0440 /etc/sudoers.d/cephnode

 

o /etc/hosts 파일 등록

10.0.0.5 node01
10.0.0.4 node02
10.0.0.6 node03
10.0.0.3 node04

 

3. Deploy Ceph

 - Deploy 서버에서 해당 명령 수행

$ ceph-deploy install node04

$ ceph-deploy admin node04

$ ceph-deploy osd create --data /dev/vdb node04

 

50GB 스토리지 용량 증가 확인

 

반응형

'Linux' 카테고리의 다른 글

Linux local repository 설정 방법  (0) 2023.08.10
Linux SSH 접속시 암호 늦게뜨는것 해결하기  (0) 2023.08.10
wget 하위 디렉토리 다운로드  (0) 2023.08.10
Virtual Machine vs Container  (0) 2023.08.10
Phython 기본 버전 변경  (0) 2023.08.10

+ Recent posts