목록전체 글 (142)
JINIers
Terraform 모듈과 상호 작용 [개요] terrform으로 인프라를 관리하면 복잡한 구성이 생성됨 그럴 때 발생하는 문제 1. 구성파일을 이해하고 탐색하기 어려움 2. 한 블록을 업데이트 하면 구성의 다른 블록에 의도하지 않은 결과가 발생할 수 있으므로 구성 업데이트는 더 위험해짐 3. 프로젝트와 팀 간에 구성의 일부를 공유하려는 경우 프로젝트 간 구성블록을 복붙하는 것은 오류가 발생하기 쉽고 유지 관리하기 어려울 수 있음 ▶ 모듈을 사용하면 위의 문제들을 해결할 수 있음 - Organize configuration 구성의 관련부분을 함께 유지하여 구성을 보다 쉽개 탐색, 이해 및 업데이트 할 수 있다. 모듈을 사용하여 구성을 논리적 수엉요소로 구성할 수 있음 - Encapsulate configu..
Terraform을 사용한 코드형 인프라 + 수정 : 220901: 부가설명 추가 [개요] terraform - 코드로서의 인프라 - 안전하고 반복 가능한 방식 - 인프라 구축, 변경, 관리하기 위한 도구 - HCL(HashiCorp Configuration Language) 이라는 구성언어로 환경을 관리할 수 있음 사용자 인터페이스에서 리소스를 수동으로 구성하는 대신 파일에서 인프라를 관리하는 프로세스 운영자가 HCL를 사용하여 원하는 리소스의 정의가 포함된 파일을 작성할 수 있음 [워크플로] - 범위 : 주어진 프로젝트에 대해 생성해야하는 리소스 확인 - 작성자 : 범위 매게변수를 기반으로 HCL에서 구성파일 생성 - 초기화 : terraform init ㄴ 구성파일이 있는 프로젝트 디렉토리에서 실행..
220830_Terraform Fundamentals [개요] terraform 시작 설치 바이너리에서 terraform을 설치 terraform을 사용하여 vm 인스턴스 인프라를 구축 [테라폼이란?] 인프라를 안전하고 효율적으로 구축,변경 및 버전을 관리하기 위한 도구 기존의 인기있는 서비스 제공업체와 맞춤형 사내 솔루션을 관리할 수 있음 구성파일 : 단일 애플리에키션 or 전체 데이터 센터를 실행하는데 필요한 구성요소 원하는 상태에 도달하기 위해 수행할 작업을 설명하는 실행 계획을 생성한 다음 이를 실행ㅎ여 설명된 인프라 구축 terraform이 관리할 수 있는 인프라 - 컴퓨팅 인스턴스, 스토리지 및 네트워킹과 같은 하위 수준 구성 요소 - DNS 항목 및 SaaS 기능과 같은 상위 수준 구성요소 ..
* 수정 22-08-23 : cloud armor update 22-08-30 : ingress 내용 update 1. vpc 생성 vpc name : testnw 2. GKE cluster 생성 Kubernetes Engine > Clusters > create cluster > standard mode 선택 > 설정 * 설정 [default-pool] - number of nodes: 1 [Cluster] - network: 설정한 VPC로 변경(나는 ‘testnw’로 해줌) 3. workload 생성(deploy 생성) test-1부터 test-3까지 생성해준다. - service name : test1 - namespace name : test1-ns * Deploy를 생성하면 service가 자..
Cloud Armor 개요 DDoS 공격, XXS(크로스 사이트 스크립팅), SQL injection(SQL 삽입공격)과 같은 어플리케이션 공격을 포함한 여러가지 위협으로부터 cloud 배포를 보호 cloud armor에는 일부 자동보호기능 포함 / 수동으로 구성해야 하는 경우도 있음 armor 중 일부는 global external http(s) LB, global external http(s) LB(classic)에서만 사용가능 보안정책 armor 사용 시 배포 여부와 관계없이 LB 뒤에서 실행되는 애플리케이션 보호 가능 수동으로 구성가능 규칙언어 우선순위가 지정된 규칙 정의 및 적용 수신요청 속성 = 해당 속성, 일치 시 가장 우선순위가 높은 규칙 순으로 작업 적용 사전 구성된 WAF(Web App..
부제: 비선점형 인스턴스에 사용하던 파일&내용을 그대로 옮기고 싶다면(vm 복제) 인스턴스들을 구성하다가 vm 으로 인해 비용이 너무 많이 청구되는 사태가 발생하였다. 상시로 돌아가는 인스턴스를 제외한 나머지, 즉 사용하지 않는, test용인, 쓰다 만 vm 인스턴스들 vm 내의 파일들은 필요하나 vm을 구동할 필요는 없는 그런..것들을 비용이 많이 나오니까 전부 선점형으로 바꾸라고 하셨다. 그래서 생각한게 1. vm을 그냥 복제하자 : vm create similar 하면 되겠지 ▶ 개같이 멸망, error남 2. vm을 image를 뜬 뒤 create 하자. 순서 복제할 머신 이미지 생성 create similar snap shoot image → vm create 선점형으로 설정 ▶ 역시나 개같이 ..
???? 방금 메일 받았는데 나 이거 언제 참석했냐.. 는 참석을 했네 내가..
220704_Kubernetes Engine: Qwik Start GKE : Google Kubernetes Engine google 인프라를 사용하여 컨테이너화된 애플리케이션을 배포, 관리 및 확장하기 위한 관리형 환경을 제공 GKE를 사용하여 컨테이너 생성 및 애플리케이션을 배포할 수 있음 GKE cluster kubernetes 오픈소스 클러스터 관리 시스템을 기반으로 함 컨테이너 클러스터와 상호 작용하는 메커니즘 제공 명령 및 리소스를 사용하여 애플리케이션을 배포,관리 관리작업 수행, 정책설정, 배포된 워크로드의 상태를 모니터링함 작업1. 기본 컴퓨팅 영역 설정 gcloud config set compute/zone us-central1-a 작업2. GKE 클러스터 만들기 # 클러스터 생성 gcl..
220630_Introduction to Docker 도커 소개 [개요] Docker 애플리케이션 개발, 배송 및 실행하기 위한 개방형 플랫폼 도커를 사용하면 인프라에서 애플리케이션을 분리하고 인프라를 관리되는 애플리케이션처럼 취급할 수 있음 커널 컨테이너화 기능을 애플리케이션 관리 및 배포에 도움이 되는 워크플로 및 도구와 결합하여 수행함 Docker container는 Kubernetes에서 직접 사용할 수 있으므로 Kubernetes Engine에서 쉽게 실행 할 수 있음 [중점사항] Docker 컨테이너를 빌드, 실행 및 디버그 하는 방법 Docker hub 및 google container registry에서 docker 이미지를 가져오는 법 Docker 이미지를 google container ..
220630_gitlab branch 생성 및 gcp source repository에 미러링(최종) 221111 : 미러링 방향 내용 수정 & 브런치 개념 추가 git branch를 알기 위해선 일단 기본개념을 잡는 것이 무조건 필수로 필요하다. 다행히 잘 정리되어 있는 사이트를 찾았음 읽어보고 설정할 것, 안그러면 하다가 헤맬 수 있음 주의! ※ git 기초 : https://wikidocs.net/153114 05. branch 브랜치(branch)는 저장소(repository) 내의 존재하는 독립적인 작업관리 영역이다. 저장소 안에서 브랜치는 여러 개가 생성될 수 있다. 각 브랜치는 다른 브랜치의 ... wikidocs.net 내가 다시 정리한 브런치 개념 git branch 개념 gitlab ↔..
[GKE_pod deploy] cloud build.yaml 및 kubeconfig.yaml 생성 을 하기전에 1. data 전송 source repository를 생성한 뒤에 cloud source repositories master → gitlab에 미러링을 해야한다. 2. 미러링 test 3. cloudbuild.yaml & kubeconfig.yaml 생성 순이다. ※ 미러링 최종본 https://jiniers.tistory.com/79 gitlab branch 생성 및 gcp source repository 에 미러링 2(최종) 220630_gitlab branch 생성 및 gcp source repository에 미러링(최종) git branch를 알기 위해선 일단 기본개념을 잡는 것이 무조건..
퀵랩으로 연습하고 실제 프로젝트에 test 해볼 겸 설치해보았다. ※ 참고 : https://jiniers.tistory.com/16 [PCK] Building a DevOps Pipeline lab Building a DevOps Pipeline lab DevOps 파이프라인 빌드 ※ 수정 220621 [개요] cloud sorce repositories, cloud build, build trigger 및 container registry를 사용하여 지속적 통합 파이.. jiniers.tistory.com 1. git 저장소 만들기 디렉토리 생성, source repository 복제 mkdir gcp-course-song cd gcp-course-song/ gcloud source repos clo..
수정 221111 : pull, push 개념 작성 하 이거 정말 힘들었다. ㅜㅠㅜ 깃랩을 소스리포지터리에 연동해서 미러링이 되는지 보는건데 이게 안되서 리포지토리를 몇개를 설치했다 지웠는지.. 그와중에 다른분 리포지토리와 함께 꼬여서(명령어 입력하다가 모르고 지워버림;;) 너무 죄송했쟈나.. 무튼 이건 많이 쓰일 것 같아서 고생한만큼 기록하기 ※ 참고링크 GitLab 저장소를 Cloud Source Repositories로 미러링 | 클라우드 아키텍처 센터 | Google Cloud 의견 보내기 GitLab 저장소를 Cloud Source Repositories로 미러링 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 이 가이드에서는 GitLab 저장소를 Cloud Sou..
인프라 구축하면서 cloud function 이라는걸 dataflow 대신 사용해보게 됐는데 dataflow 너무 비쌈 무슨 쓰지도 않는데... 무튼 그래서 cloud function이라는 걸 사용하려고 하는데 구글에서 딱히 푸쉬하는 기능은 아닌 듯 퀵랩도 별로 없고 docs도 설명이 몹시 부족하다. 특히 나는 이 entry point(=진입점)가 뭔지 몰랐는데 entry point = 라고 함 그래서 내가 인스턴스에서 파이썬 파일을 실행했을 때와 그걸 그대로 갖고와서 function에 넣어 돌리면 안됐던 것 당연함 E.P 지정을 안해줬는데 될리가.. 없지 아주 어림도 없었다. (그러니까 자꾸 에러만 뜨지..) 그걸 어떻게 해결하느냐? 코드에 진입점을 넣어주면 된다. def : ~ 그럼 def 의 아랫부..
참고 : https://www.youtube.com/watch?v=dsUyFss2Sh4&list=PLApuRlvrZKog2XlvGJQh9KY8ePCvUG7Je&index=2 따배 선생님 감사합니다.. 덕분에 다시 복습합니다..흑흑 * 학원에서 수업한 자료도 같이 정리 + 추가 : 온라인 리눅스터미널 연습사이트 https://inpa.tistory.com/entry/LINUX-%EC%98%A8%EB%9D%BC%EC%9D%B8-%EB%A6%AC%EB%88%85%EC%8A%A4-%ED%84%B0%EB%AF%B8%EB%84%90-BASH%EC%89%98-%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EC%97%B0%EC%8A%B5-%EC%82%AC%EC%9D%B4%ED%8A%B8#%EC%9..
1. 다음 중 연산자는 어떤 것이고 값은 어떤 것인가? * : 연산자 'hello' : 값 -88.8 : 값 - : 연산자 / : 연산자 + : 연산자 5 : 값 2, 변수와 문자열 찾기 spam : 변수 'spam' :문자열 3. 세가지 자료형 정수, 부동소수점 수, 문자열 - 정수 : 1, 2, 3, 4, 5 - 부동 소수점 수 : -0.1 -1.0 -1.23 - 문자열 : 'a' 'aa' 'bas' 4. 표현식은 무엇으로 구성되어 있고 어떤 역할을 하는가? 단순히 값과 연산자의 조합, 항상 단일 값으로 평가된다. 자료형 : 값의 유형을 의미 각 데이터는 단 한가지 자료형에 포함된다. 5. 할당문과 표현식의 차이 할당문 : 변수에 값을 저장할 수 있음 표현식 : 값과 연산자의 조합 6. 다음 코드가 ..
택시 데이터를 Google Cloud SQL 2.5로 로드하기 [개요] CSV 텍스트 파일에서 Cloud SQL로 데이터를 가져온 뒤, 단순 쿼리를 사용하여 기본 데이터 분석을 수행 [목표] Cloud SQL 인스턴스 만들기 Cloud SQL 데이터베이스 만들기 Cloud SQL 텍스트 데이터 가져오기 데이터 무결성 확인하기 0. 환경준비 [환경변수와 데이터를 저장할 저장용량 버킷 생성] export PROJECT_ID=$(gcloud info --format='value(config.project)') export BUCKET=${PROJECT_ID}-ml 1. Cloud SQL 인스턴스 만들기 [Cloud SQL 인스턴스 생성] gcloud sql instances create taxi \ --tie..
BigQuery에 데이터 로드하기 BigQuery : google의 완전관리형, NoOps, 저비용분석 데이터베이스 [학습내용] 1. 다양한 소스에서 BigQuery에 데이터 로드하기 2. CLI 및 콘솔을 사용하여 BigQuery에 데이터 로드하기 3. DDL을 사용하여 테이블 만들기 1. 테이블을 저장하기 위해 새 데이터세트 만들기 bigquery > create dataset > name : nyctaxi > create 2. CSV에서 새 데이터세트 수집 create table > create Create table from: Upload Choose File: select the file you downloaded locally earlier File format: CSV name : 2018t..
개념작성 ㅇ 통신경로 암호화 : AWS 매니지먼트 콘솔로 접속 or API를 사용할 때 https 사용하여 데이터 암호화 ㅇ security group & network ACL : 인스턴스들의 통신 허가 설정을 하는 보안그룹과 서브넷들의 통신허가/거부 설정을 하는 네트워크 ACL을 사용해 예상하지 못하는 통신을 미리 차단 ㅇ direct connnct : 전용선연결, 온프레미스 환경에서 aws로 전용선을 사용해 접근할 수 있으므로 데이터 도청, 변조의 위험을 줄일 수 있음 ㅇ 데이터 암호화 : EBS, S3, RDS, Glacier, redshift 에 저장하고 있는 데이터 또는 객체를 암호화할 수 있음 ㅇ HSM(H/W security module) : 암호화 키를 안전하게 저장하고 관리함 ㅇ trus..
BigQuery를 사용하여 분석하기 [학습내용] bigquery 콘솔에서 대화형 쿼리 수행 다양한 데이터세트를 조합하여 분석을 실행 1. 자전거 대여 데이터 살펴보기 bigquery > add data > explore public datasets > 'NYC bike' 검색 > view datasets * 테이블에 뜨지 않으면 pin a project > enter project name > project name 입력 bigquery-public-data > new_york_citibike > citibike_trips 선택 # 쿼리 입력 SELECT MIN(start_station_name) AS start_station_name, MIN(end_station_name) AS end_station_..
220603_Cloud Functions: Qwik Start - 콘솔 [개요] cloud functions 클라우드 서비스를 구축하고 연결하기 위한 서버리스 실행환경 cloud functions을 사용하면 클라우드 인프라 및 서비스에서 발생하는 이벤트에 연결된 간단한 단일 목적 함수 작성 가능 감시 중인 이벤트가 발생하면 cloud 함수 트리거 코드 : 완전 관리형 환경에서 실행 자바스크립트로 작성되며 Node.js환경에서 실행됨 클라우드 서비스를 연결하고 확장하는 코드를 작성할 수 있는 연결 논리계층 제공 google 서비스 계정 사용자 인증 정보에 액세스 할 수 있으므로 datastore, cloud spanner, cloud translation api 등의 여러 클라우드 서비스에서 원활하게 인증..
jupyterlab 이용 빅쿼리 호출하기(Bigquery → Vertex AI) vertex ai > workbench > user-management notebooks > new notebook 으로 노트북 생성 > open jupyterlab notebook > python3으로 들어가 > ___.ipynb 파일을 만든다. [1] !pip install google-cloud-bigquery !pip install --upgrade google-cloud-bigquery-storage [2] from google.cloud import bigquery client = bigquery.Client() [3] 전체 데이터 추출 sql = """ SELECT sensorID, status, temperat..
개요 vertex ai에서 jupyter 노트북 인스턴스화 jupyter 노트북 내에서 bigquery 쿼리를 실행하고 pandas를 사용하여 출력 처리 작업 1. jupyterLab 노트북 인스턴스 시작 vertex ai > workbench > user-managed notebooks > new notebooks > python3 > create > jupyterlab 열기 작업 2. bigquery 쿼리실행 [1] google cloud 모듈설치 !pip install google-cloud-bigquery==1.25.0 --use-feature=2020-resolver 실행 후 restart kernel > restart [2] 마술기능 사용 쿼리 %%bigquery df # %%bigquery ..
개요 vertex ai 노트북 실행 bigquery 쿼리 호출 jupyter에서 차트 만들기 기계 학습을 위한 데이터 내보내기 작업 1. bigquery 호출 bigquery > 쿼리편집기 # 00 ~ 05년 사이에 미국에서 태어난 세쌍둥이 찾기 SELECT plurality, COUNT(1) AS num_babies, AVG(weight_pounds) AS ave_weight FROM `bigquery-public-data.samples.natality` WHERE year > 2000 AND year workbench > new notebook > python3 > create region :..
220520_Vertex AI Platform: Qwik Start [개요] 1. tensorflow 모델 학습 및 모델 Vertex AI Platform에 배포하여 제공 2. 미국 인구조사 소득 데이터 세트를 이용하여 개인의 소득 범주를 예측하는 모델을 훈련함 [수행내용] 1. tensorflow 교육 애플리케이션을 만들고 로컬에서 검증 2. 클라우드의 단일 작업자 인스턴스에서 교육 작업 실행 3. 예측을 지원하는 모델 배포 4. 온라인 예측 요청 및 응답 확인 작업 1. vertex AI Platform 노트북 출시 vertex ai > workbench > new notebooks > tensorflow 2.8 Without GPU 선택 > create 작업 2. vertex AI Platform ..
참고 : https://www.youtube.com/watch?v=xOtrCmPjal8 감사합니다.선생님.. 덕분에 광명 찾았쯥니다 ㅜㅜ 1. pub/sub > create topic topic id : 작성 2. add a service account iam&admin > service account > create service account > service account name : 작성하면 account id는 자동으로 생성 role : pub/sub admin 생성한 계정 클릭 > keys 탭 > add key > create key > key type : json > 다운로드 > 파일명 변경(pubsub-test-privatekey.json) vm instance > vm create : p..
220510_Streaming IoT Data to Cloud Storage IoT 데이터를 Cloud Storage로 스트리밍 개요 cloud iot core 및 cloud pub/sub 구성하여 디바이스에서 스트리밍 데이터 수집 목표 1. cloud pub/sub 주제 및 구독 만들기 2. iot core를 사용하여 레지스트리 만들기 3. 시뮬레이터에서 MQTT 애플리케이션 시작 4. cloud storage로 데이터 스트리밍 1. cloud pub/sub 설정 및 주제 pub/sub > topic > create topic topic id : iotlab 2. 주제권한 설정 add principal > topic member : cloud-iot@system.gserviceaccount.com ro..
[GCP] flask로 rest api 구현하기 참고자료 https://justkode.kr/python/flask-restapi-1 https://rekt77.tistory.com/104?category=825845 https://flask-docs-kr.readthedocs.io/ko/latest/ko/installation.html#installation 기초 뼈대 만들기 app.py 작성후 인스턴스의 external ip 클릭 * https:// ~ 말고 http:// 로 해야함 app2.py from flask import Flask from flask_restx import Api, Resource app = Flask(__name__) api = Api(app) @api.route('/hel..
220427_vertex AI로 머신러닝 솔루션 구축 및 배포 시작하기 전에 이거 시간 진짜 오래걸리고 정말 어려움 퀵랩 기회는 5번인데 막판에 성공했다. 오타 하나라도 나면 에러나서 안되고 기존에 생성되어 있는 것 중에 알파벳 하나라도 지우면 그냥 그날로 끝임 종료하고 새로 시작해야함 ㅎ 진짜... 킹받아 시작하자.. 목표 1. 호스팅된 vertex 노트북에서 로컬로 tensorflow 모델을 훈련시킴 2. cloud build로 학습 코드를 컨테이너화하고 vertex 커스텀 컨테이너 학습 워크플로의 일부로 google cloud artifact registry에 푸시 3. 예측을 제공하기 위해 학습된 모델을 vertex on line prediction endpoint에 배포 4. 온라인 예측 요청 ..
※ 수정 220930 : 내용 수정 Google Cloud에서 IoT 분석 파이프라인 구축 구성요소 2가지 1. 장치관리자 : 서비스에 장치를 등록, 장리츨 모니터링하고 구성할 수 있다. 2. 프로토콜 브리지 : 기기가 google cloud에 연결하는 데 사용할 수 있는 MQTT를 지원 * MQTT : 메시지 큐잉 텔레메트리 트랜스포트, Message Queuing Telemetry Transport - IoT, M2M을 위한 프로토콜, 최소한의 전력과 패킷으로 통신하는 프로토콜 목표 Cloud IoT Core를 사용하여 MQTT 기반 장치 연결 및 관리(시뮬레이션된 장치 사용) Cloud Pub/Sub를 사용하여 Cloud IoT Core에서 정보 스트림을 수집합니다. Cloud Dataflow를 사..