전체 글
-
gcp 무료 서버 생성하기GCP/gcp 서버 생성 2023. 6. 14. 14:36
필자는 블로그를 시작하면서, 개인 compute Engine 의 필요성을 느꼈다. 따라서 개인 계정으로 생성하기로 했다. 검색 활용이 가장 좋았으며, 필자는 좀 더 친한 GCP를 만들어보았다. 1. google cloud에 접속 https://cloud.google.com/free?hl=ko 무료 체험판 및 무료 등급 | Google Cloud $300의 무료 크레딧과 월별 한도까지 무료로 사용할 수 있는 Compute Engine, Cloud Storage 등 20여 개의 제품으로 Google Cloud에서 빌드하세요. cloud.google.com 2. 로그 인 한후 -> 콘솔로 들어가서 프로젝트를 먼저 생성한다. 3. 프로젝트 생성 -> 프로젝트로 진입 후(상단의 노란 동그라미 표시가 프로젝트 이름..
-
hmac 을 이용하여 FastAPI의 middle에 암호화 적용하기Backend/암호화관련 2023. 6. 13. 21:32
필자는 앞 글에서 hmac을 이용하여, 암호화 생성 방법을 제시하였다. 그리고 기존의 FastAPI를 이용한 백엔드 통신에서 미들 웨어 부분에 적용하였다. def init_middleware(_app: FastAPI) -> None: """ 미들웨어 초기값 설정 """ @_app.middleware("http") async def request_middleware(request: Request, call_next): try: request_id = str(uuid.uuid4()) request_id_contextvar.set(request_id) start_time = time.time() # ===== 암호화 관련 ===== # # print("Start") if "/docs" in str(reques..
-
파이썬 데이터 전처리 후 oracle insert 하기Backend/Oracle 2023. 6. 10. 10:51
필자는 데이터 전처리가 된 데이터를 iterrows()와 커스텀 함수를 통해 한줄씩 insert를 해보겠음! 만약 오류가 난다면, 어떤 오류가 나는지 exception 처리를 하였다! 코드에 대한 설명은 주석을 통해 확인! import pandas as pd import numpy as np import json as js import datetime import csv from tqdm.auto import tqdm import cx_Oracle as cx import logging import datetime #oracle 설정 host_name = 'localhost2' oracle_port = 1521 service_name = 'xe' dsn = cx.makedsn(host_name, oracl..
-
python hmac 라이브러리를 이용한 암호화Backend/암호화관련 2023. 6. 9. 15:53
필자는 백엔드 프로젝트를 하며, 프론트와의 통신 전에 미들웨어에 적용한 암호화 한 것이 있다. FastAPI를 사용했으며, python의 hmac, hashlib 라이브러리를 사용했다. 공식 url : https://docs.python.org/ko/3/library/hmac.html hmac — Keyed-Hashing for Message Authentication Source code: Lib/hmac.py This module implements the HMAC algorithm as described by RFC 2104. An HMAC object has the following methods: A hash object has the following attributes: This module..
-
쿠버네티스 파드 관리 및 수정하기Kubernetes/kubectl 시작 2023. 6. 9. 11:19
연습하면서, 파드를 너무 많이 만들거나, 관리가 되지 않는 경우가 있다. 파드에 대한 정보를 보고, 수정 혹은 관리 법을 간단히 정리했다. - 동작 중인 파드 정보 보기 1. kubectl get pods 2. kubectl get pods -o wide 3. kubectl describe pod [pod네임] 4. kubectl get pods --all-namespace - 동작 중인 파드 수정 kubectl edit pod webserver [파드 수정에 대한 예시] 1. yaml 파일을 만들 때, 잘 만들어 질 수 있는 지 확인하는 명령어 : --dry-run 사용 kubectl run redis --image=redis123 --dry-run -o yaml -> 이렇게 하면 미리보기 + redi..
-
쿠버네티스 파드 삭제Kubernetes/kubectl 시작 2023. 6. 9. 11:02
필자는 멀티 파드를 생성 후, delete --all 명령어를 사용했는데, 멈추는 현상을 발견했다. 이를 해결하기 위해, 공식 홈페이지를 찾았음! (구글링 통해서도 가능하지만, 초보이기 때문에... 설명필요!) 1. 강제 종료 하고 싶을 때 kubectl delete pods [pod] --grace-period=0 --force 위의 명령어를 사용하면, 통으로 날아간다...급한일 아니면,,, 조심해서 사용하기! 2. 동작 중인 파드 삭제 kubectl delete pods [pod] ex) kubectl delete pod webserver kubectl delete pod --all : 전체 삭제 ex ) 전체 삭제 유의! 파드가 많을 수록, 시간이 오래 소요되거나, 제대로 실행 되지 않을 수 있음!..
-
쿠버네티스 로그 알아보기Kubernetes/kubectl 시작 2023. 6. 9. 10:57
그 전에는 멀티 컨테이너 파드를 생성하는 법을 알아보았는데, trouble shooting 하기 위해서 로그를 알아보자! 대신, 멀티 vs 싱글 컨테이너에 따라 아주 쪼~~금 만 옵션을 붙여주면 됨! - 멀티 컨테이너 일때 : kubectl logs multipod -c niginx-webserver kubectl logs [pod네임] -c [컨테이너 네임] - 싱글 컨테이너 일 때 : kubectl logs web1 kubectl logs [pod네임] 그냥 pod 네임만 명령하면 괜찮음 !
-
쿠버네티스 multi-container pod 생성하기Kubernetes/kubectl 시작 2023. 6. 9. 10:47
이제 눈감고, 파드를 생성 할 수 있게 되었다?! 라고 생각하고, 파드를 자세히 볼 수있는 명령어? kubectl describe pod web1 (-> web1 = pod이름 이라는 것은 모두가 알 고 있다는 가정 하에) 이 명령어를 통해서 어떤 것이 running 중인지, 그 외 과정을 자세하게 볼 수 있음 -> trouble shooting 할 때 많이 사용됨! ★기억하기★ 본격적으로, multi-container 를 생성해보자 1. 먼저 yaml 파일을 생성 yaml 파일을 만드는 법은 아래 url을 참조! https://amelia-suyeon.tistory.com/26 쿠버네티스 - yaml 템플릿 만들고 편리하게 써보기! 입문자에게 있어서, yaml 템플릿은 가장 많이 사용되는것 같음! - ..