Reacher의 IT 블로그

본 페이지는 Go 언어 개발과 관련하여 Goland IDE 내에서 Bitbucket(Git)과 연동하기 위한 방법을 설명 및 공유하기 위한 페이지입니다.

 

사전 작업

 

Goland IDE와 Bitbucket Git 연동을 하기 위해 다음의 사전 작업이 필요합니다.

🍀 Jetbrain 사의 Goland IDE 설치

 

JetBrains의 GoLand: Go IDE 그 이상

 

www.jetbrains.com

 

🍀 Git 설치

  • Goland IDE를 활용한 설치
참고 이미지



실행 결과 설명
  1. 경고 표시 발생 시 Download and Install 영역 선택 후 다운로드 및 설치를 진행합니다.
 

Git - Downloads

Downloads macOS Windows Linux/Unix Older releases are available and the Git source repository is on GitHub. GUI Clients Git comes with built-in GUI tools (git-gui, gitk), but there are several third-party tools for users looking for a platform-specific exp

git-scm.com

 


 

연동 가이드

🍀 수행 순서

Bitbucket 에서 비밀번호를 발급 받은 뒤 Goland IDE에서 적용해야 정상적으로 연동되며, 연동 방법은 다음 내용을 통해 확인 가능합니다.

0️⃣ Bitbucket 사이트 접속

1️⃣ Bitbucket App 비밀번호 토큰 생성.

2️⃣ Goland IDE와 Bitbucket 연동.

 

🍀 세부 절차 설명

0️⃣ Bitbucket 사이트 접속

  • 설명 : 계정 발급을 위해 Bitbucket 포탈로 접속합니다.

1️⃣ Bitbucket App 비밀번호 토큰 생성.

  • Step 1. 개인 Bitbucket 설정 페이지로 이동
참고 이미지



실행 결과 설명
  1. 화면 우측 상단에 톱니바퀴 버틀 클릭.
  2. “개인 Bitbucket 설정(Persnal Bitbucket setting” 선택 후 페이지 이동

 

  • Step 2. app 비밀번호 생성 페이지로 이동
참고 이미지



실행 결과 설명
  1. App Passwords 메뉴 선택.
  2. “Create app password” 버튼 선택 후 비밀번호 설정 페이지 이동

 

  • Step 3. app 비밀번호 권한 설정
참고 이미지



실행 결과 설명
  1. Label 필드에 값을 입력합니다. ( 입력 내용 자유 )
  2. 권한은 화면과 같이 부여합니다.
  3. “생성” 버튼을 클릭하여 비밀번호 토큰을 발행합니다.

 

  • Step 4. 발급된 비밀번호 확인 및 저장.

📌 ** 발급된 비밀번호는 반드시 특정 파일 및 개인적으로 저장해야 합니다. 저장된 내용을 잊어버렸을 경우 1️⃣ Bitbucket App 비밀번호 토큰 생성.” 절차 재 수행이 필요합니다.

 

참고 이미지



실행 결과 설명
  1. 발급 받은 비밀번호 를 복사 및 파일을 통해 저장합니다.
    1. Goland IDE 에서 Bitbucket 과 연동할 때 필요.

 

2️⃣ Goland IDE와 Bitbucket 연동.

  • Step 1. Goland IDE 실행 및 프로젝트 Clone
참고 이미지



실행 결과 설명
  1. Get from VCS를 선택하여 Bitbucket에서 프로젝트를 Clone 받을 준비를 합니다.

 

  • Step 2. Clone 받을 프로젝트 정보 입력
참고 이미지



실행 결과 설명
  1. Clone 받을 프로젝트 정보를 입력합니다.

 

  • Step 3. Clone 받을 프로젝트 정보 입력
참고 이미지



실행 결과 설명
  1. Username 과 Password 를 입력합니다.
  2. 로그인 버튼을 눌러 로그인을 수행합니다.
    ** 비밀번호는 Bitbucket App 비밀번호 토큰 생성. - Step 4. “ 과정에서 발급한 비밀번호를 입력해야 인증됩니다.
    - 발급 비번 예. ATBBr7nLhaP2QzTgqw37pK7ymNpv748C6BC2

 

  • Step 4. Clone 받은 프로젝트에서 개발을 진행합니다.
  • 참고 이미지 없음.

 

END


본 페이지는 VMware의 vRealize Operation 솔루션에서 메트릭 수집 정책을 활성화 하는 방법을 가이드 합니다.
  • vRealize Operation 솔루션은 기본적으로 수집하는 메트릭과 수집 정책 설정을 해야 수집할 수 있는 데이터가 존재 합니다. 본 문서는 수집 정책을 설정하는 방법을 소개 하며, 작성된 가이드는 메모리 스왑 인(KB) 에 대한 메트릭으로 설명합니다.
대상 메트릭
설명 메트릭 키
메모리 스왑 인(KB) 스왑 인 메모리(KB)입니다. mem|swapin_average

** vRealize Operations의 Swagger를 통해 가상 시스템(Virtual Machine) 자원 ID와 수집할 메트릭 키를 입력하여 메트릭 값이 수집 되고 있는지 확인 합니다.

  • 그림 이미지

  • 그림 이미지 설명.
  1. 자원 정보 및 수집할 메트릭 키 정보 입력.
    • 가상 시스템 자원 ID에 “94a339a0-a105-4f65-b503-8f6c72346ce0” 를 입력.
    • 수집할 메트릭 키 정보 입력.
  2. 응답 결과를 통해 메트릭에 대한 값이 수집 되고 있지 않는 것을 확인.

결과가 수집 되고 있지 않는 원인은 vRealize Operations 솔루션을 통해 확인 가능하며, 아래 설명을 통해 세부 내용을 확인할 수 있습니다.

 

1️⃣ vRealize Operation 솔루션에 로그인을 수행합니다.

 

2️⃣ 정책 설정으로 이동합니다.

 
  • 진행 과정 : 구성 탭 선택 → 정책 탭 선택 → vSphere 솔루션 기본 정책 선택.

 

3️⃣ 가상 시스템에 대한 메트릭 속성을 선택합니다.

  • 진행 과정 : 메트릭 및 속성 선택 → 개체 유형 선택 부분에서 vCenter 어댑터 선택 → 가상 시스템 선택.

 

4️⃣ 메트릭 수집 여부 확인.

** 위에 명시되었듯 본 설명에서는 “메모리 스왑 인” 에 대한 내용을 확인한다.

  • 스왑 인(KB)에 대한 내용을 살펴보면 상태 값이 “사용 안 함”으로 지정되어 있는 것을 확인 할 수 있다.
  • 상태 값이 “사용 안 함”이라는 것은 메트릭에 대한 값을 수집하지 않는 다는 의미로 확인할 수 있기 때문에 해당 메트릭(스왑 인(KB)) 의 상태 값을 “사용” 으로 변경해야 한다.

 

5️⃣ 메트릭 수집 사용 설정.

 

  • 스왑 인(KB)에 대한 상태 값을 “사용”으로 변경 후 저장 버튼을 수행하여 수집 시작한다.

 

6️⃣ vRealize Operation 솔루션의 Swagger API를 통해 수집 활성화 확인.

** 기본적으로 vRealize Operation 솔루션의 수집 주기는 5분 간격이므로 일정 시간 이후에 확인해야 합니다.

  • 수집 데이터 값 0 이지만 메트릭에 대한 수집 기능이 활성화 된 것을 확인할 수 있다.

2. ESXI VM Snapshot 복원 가이드.

**터미널에서 사용한 명령어는 "cmd :" 라고 표기합니다.

** 본 내용은 ESXI 버전 6.7에서 사용한 결과입니다.

** vm snapshot 제어 기본 명령어. ( vim-cmd vmsvc/ )

명령어 설명
getallvms
호스트에서 실행 중인 모든 VM을 나열합니다.
아래 명령에 필요한 vmid도 제공 합니다.
power.getstate [vimid] 지정된 vmid의 전원 상태를 확인합니다.
snapshot.get [vimid] 지정된 vmid의 전원을 끕니다 .
snapshot.create [vimid] [snapshotname] [snapshot desc]
지정된 vmid의 snapshotname을 지정하여 스냅샷을 
생성합니다.
snapshot.revert [vimid] [snapshotId] [suppressPowerOff] 지정된 vmidsnapshotid suppressPowerOff 상태로
복원합니다. 
snapshot.removeall [vimid]
지정된 vmid의 스냅샷 모두를 제거 합니다.

 

 

** ESXI VM Snapshot 복원 가이드.

[ 기본 설명 ]

 - 본 가이드는 vmid 13의 VM의 스냅샷을 복원하하는 예제를 설명합니다.

 - 각각의 환경에 따라 VM ID, Snapshot ID는 다를 수 있습니다.

 

 

1. ESXI VM에 구성되어 있는 VM 목록 조회

cmd :  vim-cmd vmsvc/getallvms

그림1. 모든 vm 정보 조회.

 

 

2. VM 호스트 전원 상태 확인.

Ex.) vim-cmd vmsvc/power.getstate [Vmid]

cmd :  vim-cmd vmsvc/power.getstate 15

그림2. 현재 전원 상태가 off인것을 확인 할 수 있다.

** VM 호스트의 전원 상태가 powered off일 경우 다음 실행.

** powered on 일 경우에는 스냅샷 복원이 정상 동작하지 않을 수 있음.

 

 

 

3. VM 호스트의 스냅샷 정보 확인

Ex.) vim-cmd vmsvc/snapshot.get [Vmid]

- server3의 스냅샷을 복원할 것이기 때문에 15를 입력한다.

cmd :  vim-cmd vmsvc/snapshot.get 15

 

그림3. 15번 vm에 해당하는 모든 snapshot 정보.

 

 

4. VM 스냅샷 복원.

Ex.) snapshot.revert [vmid] [snapshotId] [suppressPowerOff]

- suppressPowerOff -> 전원 ON 상태는 0, 전원 OFF 상태는 1

cmd :  vim-cmd vmsvc/snapshot.revert 15 7 0

그림4. vim 15의 스냅샷 ID 7로 전원을 켠상태로 복원한다.

 

 

 

 

** 스냅샷 관련 추가 명령어 **

 

** VM 스냅샷 생성.

Ex.) vim-cmd vmsvc/snapshot.create [vmid] [snapshotname] [snapshot desc]

옵션 : - vmid -> VM ID.

        - snapshotname -> 생성할 스냅샷 이름.

        - snapshot desc -> 생성할 스냅샷 설명.

cmd :  vim-cmd vmsvc/snapshot.create 15 server3-snapshot3 server3-snapshot3

- 설명 : 15번 VM의 스냅샷 이름은 server3-snapshot3이고, 이 스냅샷은 server3-snapshot3이다.

           ( 그림 3. 처럼 CHILD로 server3-snapshot3이 생성된것을 확인할 수 있다. )

 

 

** VM의 모든 스냅샷 제거.

Ex.) vim-cmd vmsvc/snapshot.removeall [vmid]

cmd :  vim-cmd vmsvc/snapshot.removeall 15

- 설명 : 15 vm의 모든 Snapshot을 제거한다.

'VMWARE > ESXI VM' 카테고리의 다른 글

1. ESXI VM OS 제어 가이드.  (0) 2021.09.04
0. ESXI VM CLI 명령어 소개.  (0) 2021.09.04
VM ESXi란 무엇인가?  (0) 2021.09.04

1. ESXI VM OS 제어 가이드.

**터미널에서 사용한 명령어는 "cmd :" 라고 표기합니다.

** 본 내용은 ESXI 버전 6.7에서 사용한 결과입니다.

 

** vm 호스트 제어 기본 명령어. ( vim-cmd vmsvc/ )

명령어 설명
getallvms
호스트에서 실행 중인 모든 VM을 나열합니다. 아래 명령에 필요한 vmid도 제공 합니다.
power.getstate [vimid] 지정된 vmid의 전원 상태를 확인합니다.
power.off [vimid] 지정된 vmid의 전원을 끕니다 .
power.on [vimid] 지정된 vmid의 전원을 켭니다.
power.reboot [vimid] 지정된 vmid 재부팅합니다 .

 

 

**ESXI VM에 구성되어 있는 VM 목록 조회.

cmd :  vim-cmd vmsvc/getallvms

 

 

 

** VM 호스트 전원 기동.

Ex.) vim-cmd vmsvc/power.on [Vmid]

- server3의 전원을 켠다면 Vmid에는 15를 입력한다.

cmd :  vim-cmd vmsvc/power.on 15

 

 

** VM 호스트 전원 종료.

Ex.) vim-cmd vmsvc/power.off [Vmid]

- server3의 전원을 종료 시킨다면 Vmid에는 15를 입력한다.

cmd :  vim-cmd vmsvc/power.off 15

 

 

** VM 호스트 전원 재부팅.

Ex.) vim-cmd vmsvc/power.reboot [Vmid]

- server3을 기동시킨다면 Vmid에는 15를 입력한다.

cmd :  vim-cmd vmsvc/power.off 15

 

 

'VMWARE > ESXI VM' 카테고리의 다른 글

2. ESXI VM Snapshot 복원 가이드.  (0) 2021.09.04
0. ESXI VM CLI 명령어 소개.  (0) 2021.09.04
VM ESXi란 무엇인가?  (0) 2021.09.04

**터미널에서 사용한 명령어는 "cmd :" 라고 표기합니다.

** 본 내용은 ESXI 버전 6.7에서 사용한 결과입니다.

 

** vm 호스트 제어 CLI 명령어 리스트 .

cmd : vim-cmd vmsvc/

 

 

'VMWARE > ESXI VM' 카테고리의 다른 글

2. ESXI VM Snapshot 복원 가이드.  (0) 2021.09.04
1. ESXI VM OS 제어 가이드.  (0) 2021.09.04
VM ESXi란 무엇인가?  (0) 2021.09.04

VM ESXi란 무엇인가?

VM웨어 ESXi(VMware ESXi, 이전 이름: ESX)는 가상 컴퓨터를 배치하고 서비스를 제공할 목적으로 VM웨어가 개발한 엔터프라이즈 계열 타입 1 하이퍼바이저이다.

- ESX/ESXi는 VM웨어 인프라스트럭처 소프트웨어 제품군의 주 구성 요소이다.

 

 

** 본 게시판은 VM ESXI와 관련하여 아래의 내용을 다루고 있습니다.

 

[  목차.  ]

0. ESXI VM CLI 명령어 소개.

1. ESXI VM OS 제어 가이드.

2. ESXI VM Snapshot 복원 가이드.

'VMWARE > ESXI VM' 카테고리의 다른 글

2. ESXI VM Snapshot 복원 가이드.  (0) 2021.09.04
1. ESXI VM OS 제어 가이드.  (0) 2021.09.04
0. ESXI VM CLI 명령어 소개.  (0) 2021.09.04

Mybatis 환경에 개발되어 있는 소스를 보니 아래와 같은 문장을 보게 되었다.

 

 

<select id="spSelData" parameterType="map"  statementType="CALLABLE" resultType="map">

        { call SP_DATA_SELECT(
                #{dataSn,mode=IN,jdbcType=INTEGER},
                #{result_msg, mode=OUT, jdbcType=VARCHAR}
            )
        }

</select>

 

 

검색하다 보니 'default값은 "PREPARED" 이고, STATEMENT,CALLABLE 로 설정가능하다.'

라고 명시가 되어 있고 설명을 통해 이해할 수 있었다.

 

설명은 다음과 같다.

 

PREPARED 와  STATEMENT, CALLABLE과의 차이는

' 프로시저로 쓰느냐 일반 쿼리로 쓰느냐 차이 '

 

원래 Mybatis를 안쓰고 java.sql를 사용하여 데이터베이스를 조회 할때

Connection으로 데이터베이스와 연결하고 PreparedStatement(또는 Statement)로 쿼리를 요청하고

 

ResultSet 쿼리한 결과를 받아오도록 쓰는데

주로 Select, Insert, Update, Delete로 시작하는 SQL 문을 쿼리할때 사용한다. 

 

그러나 sql server나 oracle에서는 가끔 function이나 procedure를 사용할때가 있는데

PreparedStatement(또는 Statement) 대신에 Callable를 사용하여 쿼리를 하였습니다. 

PREPARED 와  STATEMENT, CALLABLE는 

PreparedStatement, Statement, Callable 클래스의 약어 인 듯 하다.

 

 

Select, Insert, Update, Delete를 사용하는 일반 쿼리는 PREPARED 와  STATEMENT를 사용하고,

 

Function이나 Procedure는 CALLABLE을 사용하면 된다. 

 

 

 

 

출처 : okky.kr/article/374401

우리는 흔하게 웹페이지에 접속할때 특정 사이트의 주소를 브라우저를 통해 입력하여 서비스를 이용한다

예를 들어 네이버 홈페이지에 접속한다고 해보자

 

그렇다면 필자의 경우에는 크롬 브라우저를 실행시키고 주소창에 www.naver.com 이라는 도메인 주소를 입력하고 해당 사이트에 접속한다. 

이때 우리는 www.naver.com 을 보고 URL 혹은 URI라고 부른다.

정확하게 www.naver.com자체는 도메인이라고 부르지만 URL과 URI의 개념은 아래에서 설명하겠다.

 

 

URL 이란?

URL은 Uniform Resource Locator의 약자로 흔히들 아는 웹 사이트 주소(web address)라고 부른고 네트워크 상에서

자원이 어디 있는지를 알려주기 위한 규약이라고 할 수 있다.

 

쉽게 말해서, 웹 페이지를 찾기위한 주소를 말한다. URL은 웹 사이트 주소뿐만 아니라 컴퓨터 네트워크상의 자원을 모두 나타낼 수 있다. 그 주소에 접속하려면 해당 URL에 맞는 프로토콜을 알아야 하고, 그와 동일한 프로토콜로 접속해야 한다.

 

문법

- http://www.naver.com

1. URL은 제일 앞에 자원에 접근할 방법을 정의해 둔 프로토콜 이름을 적는다

  - telnet, ftp, http, https 등...

2. 프로토콜 이름 다음에는 프로토콜 이름을 구분하는 구분자인 ":"을 적는다.

3. 만약 IP 혹은 Domain name 정보가 필요한 프로토콜이라면 ":" 다음에 "//"를 적는다.

   - 네이버의 경우 naver.com이 도메인 네임이 된다.

   - 도메인 네임이 없는 경우에는 192.168.0.1과 같은 서버의 IP 주소를 입력한다.

4. 프로토콜명 구분자인 ":" 혹은 "//" 다음에는 프로토콜 마다 특화된 정보를 넣는다.

   - 예1) http://192.168.0.1/study.txt - 192.168.0.1(서버의 IP 주소)에 있는 a.gif를 가리킨다

   - 예2) http://www.naver.com/study.txt - www.naver.com에 있는 a.gif를 가리킨다

 

 

URI 이란?

URI는 Uniform Resource Identifier의 약자로 통합 자원 식별자 라고도 불리며 인터넷에 있는 자원을 나타내는 유일한 주소이다. URI의 하위개념으로 URL, URN 이 있다.

 

 

즉, URI는 URL의 상위 개념으로 URI 모든 URL을 포함시킨다.

 

 

위 설명에서 강조한 부분을 살펴보면

URL은 자원이 어디 있는지에 대해 강조 하였고, URI는 자원을 나타내는 이라고 강조 하였다.

자세한 설명은 아래의 예제로 살펴보자.

 

 

- 첫번째 URL

   http://www.mins.com/programing/java 라는 주소가 있다고 가정했을때 이는 mins.com 서버에서 programing 경로에 있는 java 정보를 요청하는 URL 이다.

 

- 두번째 URL

   http://www.mins.com/programing/python 라는 주소가 있다고 가정했을때 이는 mins.com 서버에서 programing 경로에 있는 python 정보를 요청하는 URL 이다.

 

 

첫번째, 두번째 URL을 보면 http://www.mins.com/programing mins.com 서버에서 programing 경로까지는 동일하다.

 

하지만 그 뒤에 명시되어 있는 java, python은 서로 다른 식별자( Identifier )를 통해 java의 정보를 요청할 것인지 python의 정보를 요청할 것인지가 구분된다.

 

 

 

 

더 쉽게 이해 하도록 그림으로 보여주겠다.

URI, URL, URN 포함 관계 예시.

 

* URI에 포함되어 있는 하위 개념. 

- URL (Uniformed Resource Locator)

  • 프로토콜 포함
  • 해당 자원의 위치, Path를 의미
  • 일반적으로 사이트 도메인을 자주 의미함.
  • 웹 상 뿐만 아니라 컴퓨터 네트워크상의 자원은 모두 나타낼 수 있다.

- URN (Uniformed Resource Name)

  • 프로토콜 포함 X
  • 해당 자원의 이름을 의미
  • 독립적인 자원 지시자
  • Page 이후 부분까지 포함

 

 

 

 

이처럼

URL어떠한 정보를 요청하기 위한 주소 라고 이해하면 되고

URI는 우리가 알고 있는 인터넷 주소

즉, 아래 그림과 같이 주소창에 적혀있는 모든 주소라고 이해하면 된다.

URI를 위한 예.

 

 

 

 

 

 

 

+ Recent posts