CentOS 8, Ubuntu 18.04, Debian 10 및 Fedora 31에 Golang 1.13을 설치하는 방법 31
Go (Golang이라고도 함)는 Google에서 개발 한 정적으로 형식이 지정된 컴파일 된 C 유사 프로그래밍 언어입니다. 단순성과 다목적 성으로 인해 b가되었습니다.
이 안내서는 Vultr Go 클라이언트를 사용하여 Go 애플리케이션에서 Vultr 오브젝트 스토리지 를 작성하는 방법을 설명합니다 . Vultr Object Storage는 S3 API와 호환됩니다.
Vultr 이동 클라이언트 와 상호 작용하는 데 사용되는 Vultr의 API . Vultr API를 사용하면 Vultr Object Storage를 포함하여 계정과 관련된 리소스를 제어 할 수 있습니다. Vultr Go 클라이언트에 대한 자세한 내용은 이 기사 에서 확인할 수 있습니다 .
현재 디렉토리에 폴더를 작성하십시오.
$ mkdir vultr_demo
새 폴더를 입력하십시오.
$ cd vultr_demo
$ go mod init vultr_demo
$ go get github.com/vultr/govultr
VULTR_API_KEY 환경 변수를 API 키로 설정하십시오. API 키는 https://my.vultr.com/settings/#settingsapi에 있습니다.
경고 : 비밀번호를 보호하는 것처럼 API 키를 보호하십시오. API 키는 결제, 서버 및 스토리지를 포함한 전체 계정에 액세스 할 수 있습니다.
예를 들어, Ubuntu Linux에서이 행을에 추가하십시오 ~/.profile
.
export VULTR_API_KEY=YOUR_API_KEY_HERE
다음 코드 조각을 각각이라는 새 파일에 붙여 넣습니다 main.go
. 전체 파일도 다운로드 할 수 있습니다 .
패키지를 설정하고 필요한 라이브러리를 가져 오십시오.
package main
import (
"context"
"log"
"os"
"time"
"github.com/vultr/govultr"
)
main()
기능을 시작하십시오 .
func main() {
API 키 환경 변수를 읽으십시오.
var (
// Get our Vultr API Key from an environment variable.
VultrAPIKey = os.Getenv("VULTR_API_KEY")
)
Vultr 클라이언트를 작성하십시오.
// Create a Vultr client with our API Key.
vultr := govultr.NewClient(nil, VultrAPIKey)
오브젝트 스토리지를 작성할 위치를 지정하십시오. 클러스터 위치를 검색하고 사용 가능한 위치를 확인한 후 클러스터를 선택하여 표시하십시오.
// Find the clusters we can create our Object Storage in.
clusters, err := vultr.ObjectStorage.ListCluster(ctx)
if err != nil {
log.Fatalf("Error listing clusters: %s", err)
}
// Verify there's at least one cluster.
if len(clusters) < 1 {
log.Fatal("Could not find any clusters to create our Object Storage")
}
// Choose the first cluster, and print it.
cluster := clusters[0]
log.Printf("Chosen cluster: %+v", cluster)
선택된 클러스터에서 오브젝트 스토리지를 작성하십시오.
// Create our Object Storage in the first cluster listed with our custom label.
label := "my-object-storage"
storageID, err := vultr.ObjectStorage.Create(ctx, cluster.ObjectStoreClusterID, label)
if err != nil {
log.Fatalf("Error creating storage: %s", err)
}
log.Printf("Created our Object Storage with the ID: %d", storageID.ID)
오브젝트 스토리지가 활성화 될 때까지 기다리십시오.
var storage govultr.ObjectStorage
// Query the API every five seconds to until our server is ready.
for {
// List all of the Object Storage containers with our label and include the S3 credentials.
list, err := vultr.ObjectStorage.List(ctx, &govultr.ObjectListOptions{
Label: label,
IncludeS3: true,
})
if err != nil {
log.Fatalf("Error listing storage with label \"%s\": %s", label, err)
}
// Make sure we found one (and only one) Object Storage container.
if len(list) != 1 {
log.Fatalf("%d object storage containers exist with the label \"%s\"; we need 1", len(list), label)
}
storage = list[0]
// If the server is active, break out of this loop.
if storage.Status == "active" {
break
}
// Wait for five seconds before querying the API again.
log.Printf("The Object Storage's status is currently \"%s\", waiting for another five seconds to check if it's \"active\".", storage.Status)
time.Sleep(time.Second * 5)
}
엔드 포인트 이름 및 연결 신임 정보를 표시하십시오.
// Print the information of our new Object Storage.
log.Print("Successfully created and listed our Object Storage!")
log.Printf("Object Storage: %+v", storage)
// We also have S3 credentials here now, so we could open an S3 compatible client.
log.Printf("S3 credentials: %s - %s - %s", storage.S3Hostname, storage.S3AccessKey, storage.S3SecretKey)
메인 기능을 종료하십시오.
// end main()
}
완료된 main.go
파일을 저장하고 실행 하십시오.
go run main.go
2020/03/03 13:05:48 Chosen cluster: {ObjectStoreClusterID:2 RegionID:1 Location:New Jersey Hostname:ewr1.vultrobjects.com Deploy:yes}
2020/03/03 13:05:48 Created our Object Storage with the ID: xxxxxxxx
2020/03/03 13:05:49 The Object Storage's status is currently pending, waiting for another five seconds to check if it's active.
2020/03/03 13:06:06 Object Storage: {ID:34214512 DateCreated:2020-03-03 13:05:47 ObjectStoreClusterID:2 RegionID:1 Location:New Jersey Label:my-object-storage Status:active S3Keys:{S3Hostname:ewr1.vultrobjects.com S3AccessKey:[REDACTED ACCESS KEY] S3SecretKey:[REDACTED SECRET KEY]}}
2020/03/03 13:06:06 S3 credentials: ewr1.vultrobjects.com - [REDACTED ACCESS KEY] - [REDACTED SECRET KEY]
이 예에서 엔드 포인트 이름은 ewr1.vultrobjects.com이며 키는 수정되었습니다. Go 프로그램에 표시된 엔드 포인트 이름, 액세스 키 및 비밀 키를 사용하여 S3 호환 클라이언트로 새 오브젝트 스토리지에 액세스하십시오.
Go (Golang이라고도 함)는 Google에서 개발 한 정적으로 형식이 지정된 컴파일 된 C 유사 프로그래밍 언어입니다. 단순성과 다목적 성으로 인해 b가되었습니다.
Golang은 Google에서 개발 한 프로그래밍 언어입니다. 다목적 성, 단순성 및 신뢰성으로 인해 Golang은 가장 대중적인 사람 중 하나가되었습니다.
Golang은 Google에서 개발 한 프로그래밍 언어로 C의 전통은 유지하지만 단순성과 안전에 중점을 둡니다. 그것은 인기있는 언어가되었습니다
Go (Golang)는 Google에서 개발 한 현대적인 프로그래밍 언어이며 단순성과 안전에 중점을 둡니다. server-sid에 널리 사용되는 언어가되었습니다.
요구 사항 UNIX에 대한 기본 지식. Nginx가 설치된 FreeBSD x64. 설치 도구 FreeBSD와 함께 제공되지 않는 여러 프로그램이 필요합니다. 루
랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.
오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.
Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능
인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.
최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.
빅데이터의 13가지 상용 데이터 추출 도구
우리 컴퓨터는 모든 데이터를 저널링 파일 시스템이라고 하는 체계적인 방식으로 저장합니다. 검색을 누르는 즉시 컴퓨터에서 파일을 검색하고 표시할 수 있는 효율적인 방법입니다.https://wethegeek.com/?p=94116&preview=true
과학이 빠른 속도로 발전하고 우리의 많은 노력을 인수함에 따라 설명할 수 없는 특이점에 처할 위험도 높아집니다. 특이점이 우리에게 무엇을 의미할 수 있는지 읽어보십시오.
26가지 빅 데이터 분석 기법에 대한 통찰: 1부
의료 분야의 AI는 지난 수십 년 동안 큰 도약을 했습니다. 따라서 의료 분야에서 AI의 미래는 여전히 나날이 성장하고 있습니다.