1. AWS아키텍처

https://aws.amazon.com/ko/training/awsacademy/cloud-computing-architecture/

 

Cloud Computing Architecture

Cloud Computing Architecture 과정에서 학생이 배우게 될 내용은 다음과 같습니다. 클라우드 컴퓨팅과 AWS의 가치 및 혜택 파악 보안을 유지하고 데이터를 보호하는 방법과 도구 이해 AWS 클라우드의 재

aws.amazon.com

 

2. Azure 아키텍처

https://docs.microsoft.com/ko-kr/azure/architecture/

 

Azure 아키텍처 센터 - Azure Architecture Center

Azure 아키텍처 센터는 Azure에서 워크로드를 실행하기 위한 모범 사례를 제공합니다.

docs.microsoft.com

 

3. GCP 아키텍처

https://cloud.google.com/migrate/compute-engine/docs/4.8/concepts/architecture/gcp-reference-architecture?hl=ko

 

Google Cloud 참조 아키텍처  |  Migrate for Compute Engine(이전의 Velostrata)

Migrate for Compute Engine은 VMware vSphere에서 실행되는 가상 머신(VM)을 Compute Engine으로 마이그레이션하는 경로를 제공합니다. 또한 Migrate for Compute Engine은 물리적 서버와 Amazon EC2 또는 Azure VM을 Compute Eng

cloud.google.com

 

4. AWS 클라우드구축 모범사례

https://d36cz9buwru1tt.cloudfront.net/ko/WP/AWS_Cloud_Best_Practices_05252010.pdf

 

5. Redhat 아키텍처 가이드

https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/12/html/architecture_guide/index

 

Architecture Guide Red Hat OpenStack Platform 12 | Red Hat Customer Portal

This guide introduces the OpenStack cloud components and provides design guidelines and architecture examples to help you design your own OpenStack cloud.

access.redhat.com

 

6. 클라우드 운영관리 가이드
1) 클라우드지원센터

https://www.cloud.or.kr/resources/upload/clouddata/report/Architecture_based_cloud_operations_management_guide.pdf

 

2)행안부

https://www.mois.go.kr/frt/bbs/type001/commonSelectBoardArticle.do?bbsId=BBSMSTR_000000000015&nttId=55397 

 

공공기관 민간 클라우드 이용 가이드라인 | 행정안전부> 정책자료> 참고자료> 참고자료

참고자료 HOME > 정책자료> 참고자료> 참고자료

www.mois.go.kr

 

각각의 VPC를 소유한 여러 Account 혹은 Project를 Organization으로 통합하여 관리 할 수 있는 기반을 제공한다

https://aws.amazon.com/ko/solutions/implementations/aws-landing-zone/

 

Landing Zone | 구현 | AWS 솔루션

다중 계정 구조 AWS Organization 계정 AWS Landing Zone이 AWS Organizations 계정에 배포됩니다. 이 계정은 구성을 관리하고 AWS Landing Zone 관리형 계정에 액세스하는 데 사용됩니다. AWS Organizations 계정은 멤버

aws.amazon.com

AWS는 Landing zone 구성을 위한 백서 및 Cloud Formation을 Github에 공개하고 버전관리도 수행한다
또한 AWS의 서비스 중 Landing zone 관리를 위한 서비스인 Control tower도 제공한다

 

2020년 7월 기준 GCP는 Landing zone 형태의 서비스 구성에 어려운점이 많아 구성하지 않는것이 좋다
(Transit GW 같은 서비스가 없어 VPC Peering 구성해야 하는게 가장 큰듯)

 

AWS Landing zone은 Organization을 기반으로 각자의 용도가 분명한 Account들이 협업하는 구조이다

Organization의 Service Control Policy 정책에 따라 Account들이 관리 된다
각자의 용도가 분명한 Account 1개 에는 1개의 VPC 만 구성한다

 

크게 분류하면(Organization Unit 으로는...) Root, Core, Service 로 나눌 수 있다
Core에는 Shared, Network, Security 등의 Landing zone 주요 서비스들이 구성된다
Service에는 실제 고객의 인프라 자원들이 생성되는 곳이다

 

AWS Landing Zone 솔루션은 AWS Account Vending Machine(AVM) 제품을 배포하여 새로운 계정을 프로비저닝하고 자동으로 구성합니다. AVM은 AWS Single Sign-On(SSO)을 활용하여 사용자 계정 액세스를 관리합니다. 고객은 이 환경을 사용자 지정하여 Landing Zone 구성 및 업데이트 파이프라인을 통해 자체 계정 기준을 구현할 수 있습니다.

 

1. AWS Landing Zone 솔루션에는 4개의 계정과 AWS Service Catalog를 사용하여 배포할 수 있는 애드온 제품(예: Centralized Logging 솔루션, AWS Managed AD and Directory Connector for AWS SSO)이 포함됩니다.

*AWS Organization 계정

AWS Landing Zone이 AWS Organizations 계정에 배포됩니다. 이 계정은 구성을 관리하고 AWS Landing Zone 관리형 계정에 액세스하는 데 사용됩니다. AWS Organizations 계정은 멤버 계정을 생성하고 재정적으로 관리하는 기능을 제공합니다. AWS Landing Zone 구성 Amazon Simple Storage Service(Amazon S3) 버킷과 파이프라인, 계정 구성 StackSets, AWS Organizations 서비스 제어 정책(SCP), AWS Single Sign-On(SSO) 구성이 포함됩니다.

*로그 서비스 계정

공유 서비스 계정은 디렉터리 서비스와 같은 인프라 공유 서비스에 대한 참조입니다. 기본적으로 이 계정은 Account Vending Machine (AVM)으로 생성된 새로운 AWS 계정과 자동으로 피어링될 수 있는 공유된 Amazon Virtual Private Cloud(VPC)에서 AWS SSO 통합을 위한 AWS 관리형 Active Directory를 호스팅합니다.

*로그 아카이브 계정

로그 아카이브 계정에는 로그 아카이브 계정에 있는 모든 AWS CloudTrail 및 AWS Config 로그 파일의 사본을 저장하기 위한 중앙 Amazon S3 버킷이 있습니다.

*보안 계정

보안 계정은 모든 AWS Landing Zone 관리형 계정에 대한 감사자(읽기 전용) 및 관리자(전체 액세스) 교차 계정 역할을 생성합니다. 이 역할은 회사 보안 및 규정 준수 팀이 인시던트 발생 시 긴급 보안 작업을 감사하거나 수행하는 데 사용하는 것을 목적으로 합니다.

또한, 이 계정은 마스터 Amazon GuardDuty 계정으로 지정됩니다. 마스터 계정 사용자는 GuardDuty를 구성하고 자신의 계정 및 모든 멤버 계정에 대한 GuardDuty 결과를 확인할 수 있습니다.

 

2. Account Vending Machine(AVM)은 AWS Landing Zone 주요 구성 요소입니다. AVM은 AWS Service Catalog 제품으로 제공되는데, 고객이 계정 보안 기준으로 사전 구성된 OU(조직 단위)의 새 AWS 계정과 사전 정의된 네트워크를 생성합니다.

 

3. AWS 계정에 권한이 최소화된 개별 사용자 액세스를 제공하는 것은 AWS 계정 관리의 필수적이면서도 기본적인 구성 요소입니다. AWS Landing Zone 솔루션은 고객에게 사용자 및 그룹을 저장하는 2가지 옵션을 제공합니다.

 

4. AWS Landing Zone 솔루션은 루트 계정 로그인, 콘솔 로그인 실패, API 인증 실패, 계정 내 변경 사항(보안 그룹, 네트워크 ACL, Amazon VPC 게이트웨이, 피어링 연결, ClassicLink, Amazon EC2(Amazon Elastic Compute Cloud) 인스턴스 상태, 라지 Amazon EC2 인스턴스 상태, AWS CloudTrail, AWS Identity and Access Management(IAM) 정책, AWS Config 규칙 준수 상태)이 발생할 경우 알림을 전송하도록 Amazon CloudWatch 경보 및 이벤트를 구성합니다.

 

랜딩 영역은 보안 및 규정 준수 모범 사례를 기반으로하는 잘 설계된 다중 계정 AWS 환경입니다. AWS Control Tower는 자격 증명, 연동 액세스 및 계정 구조에 대한 모범 사례 청사진을 사용하여 새로운 랜딩 영역의 설정을 자동화합니다. 랜딩 존에서 자동으로 구현되는 블루 프린트의 몇 가지 예는 다음과 같습니다.

  • AWS Organizations를 사용하여 다중 계정 환경 생성
  • AWS Single Sign-On (SSO) 기본 디렉터리를 사용하여 자격 증명 관리 제공
  • AWS SSO를 사용하여 계정에 대한 연동 액세스 제공
  • AWS CloudTrail 및 Amazon S3에 저장된 AWS Config의 로깅을 중앙 집중화합니다.
  • AWS IAM 및 AWS SSO를 사용하여 교차 계정 보안 감사 활성화

AWS Control Tower에서 설정 한 랜딩 존은 고객이 셀프 서비스 콘솔 경험을 통해 선택하는 필수 및 강력하게 권장되는 가드 레일 세트를 사용하여 관리되어 계정 및 구성이 정책을 준수하는지 확인합니다.

1. Windows10에서 Skype삭제 Powershell

   1) Powershell창에서 명령실행
       Get-AppxPackage *skypeapp* | Remove-AppxPackage

  

    2) Enter쳐서 "배포 작업 진행 상태: Microsoft.SkypeApp_ ... 초기화됨" 이라고 메시지가 뜨면 Skype가 삭제된 것임.
       완료후 창을 닫고 Skype가 정상적으로 삭제되었는지 확인

 

 

2. wmic를 활용한 유용한 정보보기

    1) OS정보 간단히 보기

       #wmic os list brief /format:list

       #wmic /output:OS_List.html os get /format:hform

OS정보를 html로 만든 html결과파일

 

# 영문 대/소문자를 소/대문자로 변환
# input: 입력된 문자열data, result: 대/소문자 변환결과

def change(input):
   result = ""
   for st in input:
        if(st.isupper()):
               result = result + str.lower()
        else :
               result = result + str.upper()

 

    return result

 

 

 

# 주어진 사다리 정보를 이용하여 시작 번호에 대한 결과 번호를 구하기 

# ladder: 사다리정보, start: 시작번호, result: 결과번호

def ResultNo(ladder, start):
    result = 0

 

    cur = start 
    for line in ladder:
        if line[0] == cur:
            cur = line[1]
        elif line[1] == cur:
            cur = line[0]
    result = cur

    return result

 

 

 

# 입력된 7~9자리 숫자열 뒤부터 3자리씩 끊어서 3자리 숫자로만들고 큰숫자순으로 정렬하기

input: 입력된 숫자열, 숫자로된 문자열data, result: 정열된 숫자열, 숫자로된 문자열 목록

def sortNum(input):
    sortedNum = []

    inp = input
    n1, n2, n3 = int(inp[-3:]), int(inp[-6:-3]), int(inp[-9:-6])

    if n3 < 10 :
        n3 = int(str(n3) + "12")
    elif n3 >=10 and n3 < 100 :
        n3 = int(str(n3) + "1")
    n = [n1, n2, n3]
    n = sorted(n, reverse=True)
    sortedNum = n

    return sortedNum

 

 

 

# 정열된 3자리 숫자를 자릿수끼리 덧셈 연산결과를 이용 새로운 숫자 만들기

sortedNum: 정열된 숫자열, 숫자로된 문자열 목록, result: 생성된 숫자

def NewNum(sortedNum):
    NewNum = 0
     
    res = []
    qor = [int(str(item)[0]) for item in sortedNum]
    tlq = [int(str(item)[1]) for item in sortedNum]
    dlf = [int(str(item)[2]) for item in sortedNum]
    res.append(sum(qor) % 10)
    res.append(sum(tlq) % 10)
    res.append(sum(dlf) % 10)

    for i in range(len(res)):
        NewNumber += 10**(len(res) - i - 1) * res[i]

    return int(NewNumber)

 

[예제 사이트]

1. 100 개 이상의 실습이 포함 된 대화식 Python 3 튜토리얼 - Snakify

https://snakify.org/ko/

 

Snakify - Python 3 Interactive Course

The online course for beginners with more than 100 problems that turn you into a developer.

snakify.org

2. Active State

http://code.activestate.com/recipes/langs/python/

# 문자열 대소문자 변환 
s="King Dom" 

import string 
print(s.title())                    ## 문장의 첫글자만 대문자로 
print(s.capitalize())             ## 단어별 첫글자를 대문자로 
print(string.capwords(s))      ## split 한 후 단어별 첫글자를 대문자로 변경후 join 

 



# 알파벳/숫자 구별 

string.upper()       → 대문자로 변환

string.lower()       → 소문자로 변환

string.swapcase()  → 대문자 ▷ 소문자, 대문자 ▷ 소문자로 변환

string.capitalize()  → 첫문자를 대문자로 변환

string.title()         → 단어의 첫문자를 대문자로 변환

 

string.isalpha()    --> true/false

 

 

## 문자열 분리 
>>> b = a.split() 
>>> b 
['True', 'love', 'is', 'hard', 'to', 'find', 'now'] 



# 문자열 합치기  
>>> ''.join(b) 
'Trueloveishardtofindnow' 
>>> ' '.join(b) 
'True love is hard to find now' 

 

 


## 문자열 치환
import re
text = u'010-1566#7152'
parse = re.sub('[-=.#/?:$}]', '', text)
print parse


 

# List 생성  
>>> a = "True love is hard to find now" 
>>> a.split() 
['True', 'love', 'is', 'hard', 'to', 'find', 'now'] 

#List 길이 구하기  
>>> len(b) 
7
 
# List 마지막 항목 출력  
>>> b[-1] 
'now' 

 

 


# 숫자, 문자 혼합된 리스트에서 문자열 제거 
    for txt in inList :
        try :
            newList.append(int(txt))
        except :
            continue

 



## 집합 ↔ 리스트 
>>> a=[1,1,2,2,3,3,4,4,5,5]
>>> b=set(a)
>>> b
{1, 2, 3, 4, 5}

>>> c=list(b)
>>> c
[1, 2, 3, 4, 5]



## 딕셔너리 
student={"이름":"로바이"}
student["나이"]=30
list(student.keys())
["이름","나이"]

list(student.values())
["로바이",30]
 


## List 정렬 
>>> a=[1,3,4,5,2]
>>> a.sort()
>>> a
[1,2,3,4,5]

>>> a.reverse()
[5,4,3,2,1]

>>> a[::-1]
[5, 4, 3, 2, 1]



## List 정렬2 (2개 리스트를 한개의 순서에 맞추어 동시에 정렬)
for i in range (0, len(totalID)-1) :
     for k in range(i+1, len(totalID)) :
         if int(totalPay[i]) < int(totalPay[k]) :
             totalPay[i], totalPay[k] = totalPay[k], totalPay[i]
             totalID[i], totalID[k] = totalID[k], totalID[i]

 


## List append 
retList.append([totalID[0], totalPay[0], grade])

## List index 
    for i in range(0,len(userID)) :
        uid = userID[i]
        upay = userPay[i]
        if uid in totalID :
            idx = totalID.index(uid)
            totalPay[idx] += upay
        else :
            totalID.append(uid)
            totalPay.append(upay)



## dictionary 정렬 
import operator
trainlist = sorted(dic.items(), key=operator.itemgetter(1), reverse=True) 
  
  
 
## 변환
숫자를 문자로(ASCii code → 문자) :  chr()
문자를 숫자로(문자 → ASCii code) : ord()

chr(ord(tmp1) +1)

 

 

[Python 문자열 함수 정리]

https://simplesolace.tistory.com/entry/%ED%8C%8C%EC%9D%B4%EC%8D%AC-python-%EB%AC%B8%EC%9E%90%EC%97%B4

 

 

[파이썬] python 문자열 함수정리

이 문서는 파이썬 2점대를 기준으로 작성되었습니다. 4장 문자열 [문자열 대치 기능] >>>import string t = string.Template('$page: $title') t.substitute({'page':2, 'title' : 'The Best of Times'}) t.safe_s..

simplesolace.tistory.com

 

+ Recent posts