다운로드: https://atom.io/ 


15년 가까이 사용하던 UltraEdit를 뒤로하고 다른 텍스트 에디터를 사용하려하니, 여간 불편한것이 아니다. 다른 동료의 Atom에디터를 사용하는 것을보고 큰 작심을하고 바꾸기로 하였다. Atom 나름대로의 편리한 기능이 있는것 같지만 아직 익숙치는 않다. Atom에서 단축키를 다음과 같이 정리해보았다.


** command-palette "Ctrl + Shift + P"

Atom 에서는 어떤 기능을 찾기 위해서는 "Ctrl + Shift + P"를 한다음 키워드를 입력하면 가지고있는 기능들을 쉽게 실행할 수 있도록 지원한다. 예를 들어 화면 분할을 하기위해서 우선 "Ctrl + Shift + P"를 누르고 Split이란 단어만 입력하면 가로로 할것인지 세로로 할것인지 등등의 옵션이 나오면 이중에서 선택하면 해당 기능을 이용 할 수 있도록 지원한다.


General

Command

Mac OS X

Windows

Preferences/Settings

cmd-,

ctrl-,

Command Palette

shift-cmd-p

shift-ctrl-p

Open File (Fuzzy)

cmd-p

ctrl-p

Browse Open Files

cmd-b

ctrl-b

Grammar Selector

ctrl-shift-l

ctrl-shift-l

Markdown Preview

ctrl-shift-m

ctrl-shift-m

Key Binding Resolver

cmd-.

ctrl-.

Toggle Tree View

cmd-k cmd-b

ctrl-k ctrl-b

Reload Atom

ctrl-alt-cmd-l

alt-ctrl-r

Open Link

ctrl-shift-o

 

Toggle Developer Tools

alt-cmd-i

ctrl-alt-i

Show Available Snippets

alt-shift-s

alt-shift-s

 

Editing

Command

Mac OS X

Windows

Duplicate Lines

shift-cmd-d

ctrl-shift-d

Delete Line

ctrl-shift-k

ctrl-shift-k

Move Line Up

ctrl-cmd-up

ctrl-up

Move Line Down

ctrl-cmd-down

ctrl-down

Find/Replace

cmd-f

ctrl-f

Find Next

cmd-g

F3

Find Previous

shift-cmd-g

shift-F3

Find in Project

shift-cmd-f

ctrl-shift-f

Go To Line

ctrl-g

ctrl-g

Go To Matching Bracket

ctrl-m

ctrl-m

Select Line

cmd-l

ctrl-L

Toggle Comment

cmd-/

ctrl-/

Column Selection

ctrl-shift-up/down

ctrl-Alt+Up/Down

 

Window Management

Command

Mac OS X

Windows

New File

cmd-n

ctrl-n

New Window

shift-cmd-n

ctrl-shift-n

Open

cmd-o

ctrl-o

Open Folder

cmd-shift-o

ctrl-shift-o

Add Project Folder

 

ctrl-alt-o

Save

cmd-s

ctrl-s

Save As

shift-cmd-s

ctrl-shift-s

Save All

alt-cmd-s

 

Close Tab

cmd-w

ctrl-w

Close Window

shift-cmd-w

ctrl-shift-w

 


ATOM Hotkeys.xlsx


'DevOps' 카테고리의 다른 글

도커(Docker)개념 잡기  (0) 2016.02.18
리눅스의 종류와 특징  (0) 2016.01.05
javax.mail.MessagingException: 501 Syntax: HELO <hostname> 오류  (0) 2015.11.05
아마존 클라우딩(VPC) 도입 후기  (0) 2015.10.21
Usage of TCPDUMP  (0) 2015.09.21
Posted by Steven J.S Min
,

전철안에서 시간가는줄 모르고 읽었던 소설....그 속에는 수 많은 등장인물들이 존재하는데 언젠가 그 인물들간에 관계를 쭉~ 정리하고 싶다는 생각을 했었는데...그런차에 재미난 인물구성도를 정리한 이미지를 구했다... 


비록 비극적이긴 하지만 나는 이 소설의 가장 매력적인 부분은 실종된 현대역사의 소용돌이 속에서 가장 인간적일 수 밖에 없었던 그들의 모습을 볼수있다는 것이 가장큰 매력이 아닐까 싶다.


그들이 갖고있는 이름도 나는 어쩐지 마음에 든다.


염상진...소화..정하섭...외서댁...김범우...들몰댁.....정말 짠~~하다. 왜 그들은 그렇게 살아야만 했을까?!! 누가 그들을 그렇게 만든것인가?!!!




 





' Life of Aussie > 잡 생각' 카테고리의 다른 글

  (0) 2015.09.04
귀천  (0) 2015.09.04
  (0) 2015.09.04
이번주 지나면 프로베이션어리 기간 끝남...  (0) 2015.06.29
사고싶은 음악  (0) 2014.04.08
Posted by Steven J.S Min
,

메일에서 501과 관련된 오류는, 메일 smtp 와 함께 메일의 환경설정 ( email.yml )파일에 domain을  추가하여 발송하도록 되어있는데 이때  domain을 설정하는 과정에서 문제가 생기면 발생하는 오류이다.


따라서 간단히 

  • /etc/hosts 파일에 도메인정보(또는 IP)를 설정해주거나
  • $ hostname [도메인명 | 서버IP]

를 해주면 되겠다.


root@prod.app1a:~# hostname  10.213.12.100 rpc.prod.uss.technology

root@prod.app1a:~#

 

또는 아래와 같이 /etc/hosts 파일에 직접 기술해주면 된다.

root@prod.app1a:~# vi /etc/hosts


127.0.0.1   localhost localhost.localdomain

10.213.12.100 rpc.prod.uss.technology

~

~

~

~

-- INSERT --



본인의 경우 Application 서버는 VPC안의 Private Subnet 영역에 있는데 Private IP를 설정해주는 것만으로도 해결이 되었다.


다음 익셉션트래이스 메시지이다.

javax.mail.MessagingException: 501 Syntax: HELO <hostname>

at com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1634)

at com.sun.mail.smtp.SMTPTransport.helo(SMTPTransport.java:1070)

at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:458)

at javax.mail.Service.connect(Service.java:313)

at javax.mail.Service.connect(Service.java:172)

at javax.mail.Service.connect(Service.java:121)

at javax.mail.Transport.send0(Transport.java:190)

at javax.mail.Transport.send(Transport.java:120)

at uss.framework.email.EmailServices.sendEmail(EmailServices.java:221)

at uss.framework.email.EmailServices.sendEmailForAttchements(EmailServices.java:265)

at uss.common.controller.CommonController.emailSend(CommonController.java:687)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

      생략....

'DevOps' 카테고리의 다른 글

리눅스의 종류와 특징  (0) 2016.01.05
Atom 에디터 단축키 정리  (1) 2015.11.16
아마존 클라우딩(VPC) 도입 후기  (0) 2015.10.21
Usage of TCPDUMP  (0) 2015.09.21
NAT 서버를 통한 SQL 쿼리 Forwarding 설정 On AWS  (0) 2015.08.11
Posted by Steven J.S Min
,






처음에 아마존 클라우딩을 접했을 때 만만하게 생각했었는데 결코 호락호락하지 않았다. 적어도  개발 위주의 프로젝트를 하는 나에게는 쉽지만은 않다는 것을 알수 있었다.(저는 주로 Java 어플리케이션 설계나 개발을 하는 입장이라 아래 내용이 좀 다른 경우에서는 맞지 않을수 있습니다.) 그럼에도 불구하고 클라우딩 인프라스트럭처나 컴퓨팅은 거스를수 없는 커다란 흐름이고, 다른 많은 기회를 찾을수 있을 것 같은 강한 Feel을 준 경험이었다.


많은 도큐먼트들이 존재하기에 나는 내가 느끼고 또 시행착오를 통해 얻는 몇가지 Fact를 어쩌면 클라우딩 컴퓨팅의 핵심 서비스가 될수있는 EC2와 네트웍에대한 내용을 정리하고자 한다.



    최고의사 결정자 또는 비용 집행자와의 충분한 이해와 소통 선행

부분은 나의 경우에만 해당될 수도 있는데, 주로 처음으로 클아우딩 컴퓨팅을 도입하는 경우 새로운 기술이고 많은 스타트업 기업들이 선호한다는 정도는 누구나 알고 있지만, 실제로 완료된 경우 청구된 비용에 대해서 첫번째로 실효성에 대하여 문제를 제기하게된다.

 

따라서 스타트기업이나 컴퓨팅 인프라를 효율적으로 바꾸고자 하는경우 클라우딩이 어떠한 점에서 장점을 갖는지 그리고 차후에 이러한 인프라가 기업에 어떠한 Added valuation 가저다 것인지에 대한 설득을 미리 하고 들어가는 것이 좋겠다는 생각을 해본다.


 

    클라우딩 디자인에 대한 마인드.

필요한 경우 서버를 뚝딱 만들고 없애고 복제하고 하는 일들은 클라우딩 환경에서는 일도 아닌 처럼 보였다.

 

하지만 레거시 네트웍 시스템처럼 견고한 인프라를 만들기 위해서는 프로그래밍 패턴처럼 분야에서도 필요한 네트워킹 패턴이 있다는 것을 발견 있었다. 나는 이러한 것을 깨닫기 까지 너무 많은 길을 돌아온 같다. 수없이 네트웍을 생성했다 지우고, EC2인스턴스를 생성하고 지우고, 여러가지 방법으로 VPC환경을 만들고 서브넷을 구성하고……

 

나의 회사에 맞는 미리 정리된 네트워크 디자인 패턴에 대한 개념을 알고 접근했다면 훨씬 쉽게 구성이 가능했을 거란 생각을 한다. 또한 비로소 네트워크 엔지니어가 필요한지 수도 있었다.


 

    명확한 데이터 Flow에대한 이해와 콘트롤 능력

견고한 네트웍 구성을 위해서는 어떻게 네트웍데이터를 콘트롤 것인지 이해를 하고, 데이터  Flow 에대한 설계가 선행되어야 한다.

 

아무리 정리된 네트워크을 하는 템플릿 이용하여 구성한다고 하더라도 원하는 네트웍환경을 구축하기는 어렵다. 모든 경우의 트래픽을End to End  별로 확인하고 변경해야 하는데 네트워킹에대한 이해가 없거나 트래픽을 서버에 직접들어가 콘트롤할수 없는 능력이 없는 경우 문제를 해결하기위하여 너무 많은 시간을 보내야한다.

 

 

     각자 상황에 맞는 베스트한 솔루션 디자인

아마존 클라우딩에는 많은 서비스를 제공한다. (사용하기 쉽다고 하기보다는)  우선 해당 서비스에 대해서 사용할 있는 Approach 용이하다 보니까 생각없이 사용하는 경우가 있는데, 지나고 나서 생각해보니까 그거보다는 너무 Amazon 의존하지 않고도 좋은 솔루션이 있는데 사용했을까 하는 경우가 있다.

 

나는 서비스의 경우 처음에 아마존 서비스를 이용했지만 커스터마이징이 용이한 오픈소스를 사용하고 있으며, 프로덕션이 아닌경우 아마존 RDS 보다는 그냥 EC2인스턴스에 직접 설치해서 사용하고소스 레파지토리도 S3 처음에 사용하다 다시 Sonatype Nexus 사용한다던가하는 이러한 예를 수가있다.

 

아마존 도큐먼트를 읽다보면 첫번째로 솔루션을 아마존에서만 찾게되는데 그럴 필요는 없다는 생각을 하게된다.

 

 

아직도 개선해야할 점이 많지만 우선 회사에서 사용하는 인프라가 문제없을 정도로 만들어 보았다. 그리고 아래 네트웍이 보통 일반적인 네트웍이라고 가정하고 CloudFormation 스크립을 만들었다. 또다른 VPC 구성하고자 하는 경우 스크립스 실행시 입력 파라미터만 변경하면 된다.(로드 벨런스 기본 소프트웨서 설정이 포함되어있습니다. 자바어플리케이션이라는 가정하에…)


마스터 스크립트 


master.json


 사설네트웍 구성 스크립트

 

vpc.json


  어플리케이션 구성 스크립트

 

application.json


  데이터베이스 생성 스립트

 

database.json







 


 

단연 아마존에서 제공하는 도큐먼트가 퀄리티 면에서 좋은 정보를 제공합니다. 그리고 많은 국내 자료들이 있지만  그들 중에서는 다음 링크에서 개념을 잡는데 도움이 되었습니다.(진심 감사)

 

 

 

 

 

 

Posted by Steven J.S Min
,