분류 전체보기(93)
-
[Kubernetes] 0. 쿠버네티스와 도커
쿠버네티스란 쿠버네티스는 컨테이너 배포, 확장, 관리의 자동화에 특화된 오픈 소스 시스템입니다. 이를 오케스트레이션(orcheestration)이라고 합니다. Production-Grade Container Orchestration Production-Grade Container Orchestration kubernetes.io 정의만 보고 몇몇은 도커의 대체재다 하는 데 이는 틀린 말입니다. 쿠버네티스를 구동하기 위해선 실질적으로 컨테이너를 만들고 운용할 수 있는 인프라가 필요합니다. 즉, 쿠버네티스 자체로는 컨테이너를 생성해주지 않고, 쉽고 효율적으로 관리하는 도구 정도로 이해하면 됩니다. 컨테이닝 시스템으로는 대표적으로 도커가 있습니다. 때문에 쿠버네티스 + 도커를 거의 대부분 운용하는 데, 필자도..
2023.05.31 -
HTTPS란?
HTTPS 정의 HTTPS는 데이터 암호화를 통해 안전하게 네트워크 상에서 데이터 교환을 할 수 있도록 해주는 프로토콜입니다. 여기서 프로토콜(protocol)은 규약, 규범으로 표현하는데 쉽게 말해서 데이터 교환 시 소통하는 문법이라고 생각하면 좋습니다. 예를 들어 ip는 어디에 위치해야 하고, 헤더는 어디에 위치해야 하는 등 인데 만약 위치를 뒤죽박죽으로 보내면 데이터를 받는 입장에서는 해석하기가 난감하기 때문에 서로 약속을 만들어 놓은 것이죠. 사실 HTTPS는 기존 HTTP에 암호화 통신 방식을 살포시 얹은 것 뿐입니다. 데이터를 받는 입장에서 HTTPS를 인지하면 HTTPS에 쓰여진 문법대로 데이터를 해석하면 될 일입니다. Hypertext Transfer Protocol Secure (HTTP..
2023.05.30 -
METHOD. 사용자 생성 및 권한 추가하기
Create Role use 데이터베이스 db.createRole( { role: "이름", privileges: [ { resource: { db: "데이터베이스 이름", collection: "" }, actions: [ "find", "update", "insert", "remove" ] } ], roles: [] } ) 아래 참조의 createRole() 을 보면 각 필드가 어떤 의미인지 상세하게 알 수 있다. 몇 가지 주요한 사항을 말해보면, collection에 빈 값을 주면 해당 데이터베이스의 모든 컬렉션에 적용하겠다라는 의미가 되고, roles에는 이전에 만든 role을 상속 받거나 할 수 있다. Create User db.createUser({ user: "사용자 이름", pwd: "패스..
2023.04.30 -
QUERY. 사용자 생성 및 권한 추가하기
Create User CREATE USER '사용자' IDENTIFIED BY '패스워드' COMMENT '설명'; 사용자는 '이름'@'주소'처럼 한정할 수도 있다. Grant User 그냥 지정해서 줘도 되지만, 직접 role을 만들어 지정해주는 것이 좋다. CREATE ROLE 이름; GRANT ALL PRIVILEGES ON 데이터베이스.테이블 TO 사용자(또는 롤); 만든 role을 사용자에게 부여하고 싶다면 GRANT '롤 이름' TO '사용자'; SET DEFAULT ROLE ALL TO '사용자'; 확인은 해당 사용자로 접속하여 아래 쿼리를 실행하면 된다. SELECT CURRENT_ROLE(); 표현식 GRANT priv_type [(column_list)] [, priv_type [(co..
2023.04.30 -
QUERY. 데이터베이스 생성
Create Database CREATE DATABASE 이름; 표현식 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_option] ... create_option: [DEFAULT] { CHARACTER SET [=] charset_name | COLLATE [=] collation_name | ENCRYPTION [=] {'Y' | 'N'} } References MySQL :: MySQL 8.0 Reference Manual :: 13.1.12 CREATE DATABASE Statement 13.1.12 CREATE DATABASE Statement CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name ..
2023.04.30 -
1. A Taste of Kotlin
본 장은 Kotlin in Action 책을 기반으로 작성되었습니다. 코틀린은 Java를 사용하는 모든 프로그램에서 사용할 수 있습니다. 단지 Java보다 더 정교하고, 생산적이며 안전한 대체 수단을 제공할 목적으로 만들어졌을 뿐입니다. Philosophy 1. Pragmatic 코틀린은 실제 프로그래밍을 하면서 겪었던 여러 불편한 점들을 개선하기 위해 고안된 '실용적인 언어'입니다. 수 년간, 각지의 산업체 또는 개발자로부터 제공되는 피드백들은 코틀린을 형성하고 그 문제를 해결하는 데 많은 도움을 주었습니다. 따라서 코틀린을 통한 개발은, 어떤 패턴과 패러다임에 국한되어 가기보다는 본인이 가지는 친숙한 프로그래밍 경험과 함께 더 파워풀한 요소들로 발전해나가는 것입니다. 2. Tooling 코틀린은 다양..
2022.02.03