StoryCode

VMWare.Docker.Centos.Airflow 직접 설치

Apache AirFlow
반응형

# 참조 : medium.com/@santosh.dadisetti/installing-the-docker-centos-apache-airflow-with-mysql-backend-1c99544d6692

 

Installing Docker + Centos + Apache Airflow with Mysql Backend

Pulling latest Centos OS from Docker hub
docker pull centos:latest
docker run -it — net=host — name airflow_server -p 8080:8080 -p 5555:5555 centos
upgrade centos OS on Docker
yum install epel-release -y
yum install gcc-c++ -y
yum install -y mysql-devel python-devel python-setuptools
install Python3.6
yum -y install https://centos7.iuscommunity.org/ius-release.rpm
yum -y install python36u
Install PIP for Python 3.6
yum -y install python36u-pip
Update Python development tools
yum -y install python36u-devel
Upgrade setuptools if needed.
pip3.6 install — upgrade pip
pip install — upgrade setuptools
Basics python packages for Apache Airflow
pip install -U pip setuptools wheel
pip install pytz
pip install pyOpenSSL
pip install ndg-httpsclient

One of the dependencies of Apache Airflow by default pulls in a GPL library (‘unidecode’). In case this is a concern you can force a non GPL library by issuing export SLUGIFY_USES_TEXT_UNIDECODE=yes and then proceed with the normal installation
https://airflow.apache.org/installation.html
export SLUGIFY_USES_TEXT_UNIDECODE=yes
install Apache Airflow
pip install apache-airflow
Intiating Airflow DB , by default Apache airflow use Sqllite
airflow initdb
Export Airflow_home to /root/airflow
export AIRFLOW_HOME=/root/airflow
Start Apache Airflow webserver
airflow webserver -p 8080
Set up Mysql as backend/Metadata DB for Apache Airflow
yum install mariadb-devel — skip-broken
pip install Apache-airflow[mysql]
on Mysql server
SET explicit_defaults_for_timestamp=1
Edit airflow.cfg on /root/airflow/airflow.cfg
# The SqlAlchemy connection string to the metadata database.
# SqlAlchemy supports many different database engine, more information
# their website
#sql_alchemy_conn = sqlite:////root/airflow/airflow.db
sql_alchemy_conn = mysql://<username>:<password>@<mysql-server>:3306/airflow
Reset/ initiate DB on airlfow
airflow initdb
and start Airflow Server
airflow webserver -p 8080

 

반응형

'Apache AirFlow' 카테고리의 다른 글

Airflow.초기화.강제 매뉴얼  (0) 2021.06.24
설치.maria db for airflow  (0) 2020.10.19
VMWare.Docker.Airflow Official Image 에 설치  (0) 2020.10.11

설치.maria db for airflow

Apache AirFlow
반응형

참조 : velog.io/@hongji3354/Docker%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%B4%EC%84%9C-MariaDB-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0

 

1) docker pull mariadb

 

2) docker run --name mariadb -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mariadb mariadb

 

3) docker exec -it mariadb /bin/bash

 

4) mysql -u root -p

Enter password : mariadb

 

5) mysql > status

Latin1 으로 뜨는 데 utf8 로 변경

 

6) vi 가 없으므로 vi 부터 설치후, my.cnf 수정

apt-get update

apt-get install apt-file

apt-file update

apt list --upgradable

apt-get install vim

 

/etc/mysql/my.cnf 내에 아래 2줄 !includedir 이 있으면,
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mariadb.conf.d/

cd /etc/mysql/mariadb.conf.d/
vi 50-client.cnf 50-mysql-clients.cnf 50-server.cnf

# 50-client.conf 에서
[client]
default-character-set = utf8mb4

# 50-mysql-cient.cnf 에서
[mysql]
default-character-set = utf8mb4

# 50-server.cnf 에서
[mysqld]
...
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
추가


/etc/mysql/my.cnf 내에 아래 2줄 !includedir 이 없으면 my.cnf 에 직접 추가

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

 

7) docker restart [CONTAINER ID]

docker exec -it mariadb /bin/bash

 

8) 

반응형

VMWare.Docker.Airflow Official Image 에 설치

Apache AirFlow
반응형

* AWS 에 설치하는 건 잘 안된다.

* mysql plugin 을 설치하려는데 오류가 나서 설치가 안된다. 그냥 직접 설치해봐야 할 듯 하다.

 

참조 : cofs.tistory.com/407

 

# 1. docker 설치
yum -y install docker docker-registry
systemctl enable docker.service
systemctl start docker.service


# 2. airflow officall Image download
docker pull puckel/docker-airflow

docker images

 

# 참고. save as tar

docker save ...

 

# 3. run airflow

docker run -d -p 8080:8080 --name airflow_v1 docker.io/puckel/docker-airflow 
docker ps

# 4. open firewall

console > vi /etc/firewalld/zones/public.xml 
<zone>
...
  <port protocol="tcp" port="8080"/>
  <port protocol="tcp" port="80"/>
</zone>

console > firewall-cmd --reload

# 참고 )
console > systemctl start firewalld
console > systemctl enable firewalld
console > systemctl stop firewalld
console > systemctl disable firewalld
console > firewall-cmd --state # 상태 확인
console > firewall-cmd --get-active-zones # 활성화 존 목록
console > firewall-cmd --get-service # 서비스 리스트
console > firewall-cmd --zone=public --list-services # public 존 서비스 리스트

 

# 5. login airflow

http://localhost:8080

 

#

반응형

'Apache AirFlow' 카테고리의 다른 글

Airflow.초기화.강제 매뉴얼  (0) 2021.06.24
VMWare.Docker.Centos.Airflow 직접 설치  (0) 2020.10.28
설치.maria db for airflow  (0) 2020.10.19

ECR 에 AWS.EC2.Docker 이미지를 ECR 에 올리기

AWS, 아마존
반응형

* AWS.EC2 에서 작업해야 하므로, WIndows Client 에서 gitbash 로 접속한다. ( putty 로는 TTY 가 아니라고 하면서 오류 )

 

방법 1) EC2 에 ECR Role 을 추가한다.

 

방법 2)

1. AWS.EC2 에 AWS-CLI Ver 2 를 설치.

 

2. docker 가 sudo 에서 실행되다 보니, sudo docker 라고 해줘야 한다.

/usr/local/bin/aws ecr get-login-password --region ap-northeast-2 | sudo docker login --username AWS --password-stdin 2803665.dkr.ecr.ap-northeast-2.amazonaws.com

만약, 로그인 Securety 키가 필요하다고 하면, IAM 에 가서 새로 발급해야 한다.
로그인 오류가 난다면, get-login 만 호출해서 로그인만 하는 방법을 구글링해서 docs.aws.amazon.com/ 꺼를 참조한다.

 

3. 무엇을 밀어넣을지, 밀어넣을때 Tag 를 정한다.

sudo docker tag tomcat:latest 2803665.dkr.ecr.ap-northeast-2.amazonaws.com/keibi-sysae-tomcat:latest

tomcat:lastest            = docker images 했을 때 이름이다.
keibi-sysae-tomcat:latest = ECR 에 생성한 Repository 이름이다.

4. 실제 밀어 넣는다.

sudo docker push 2803665.dkr.ecr.ap-northeast-2.amazonaws.com/keibi-sysae-tomcat:latest

 

반응형

'AWS, 아마존' 카테고리의 다른 글

Docker, Docker-compose 올리기  (0) 2021.02.23
EFS 를 onpremise.NFS 에 연결하기  (0) 2021.02.01
ERROR.Permissions 0455 for 'apache-bench.pem' are too open.  (0) 2020.05.28
EC2 에 EFS 연결하기  (0) 2020.05.27
Powershell.window  (0) 2020.05.26

문법 기본

JavaScript, ECMAScript
반응형

'use strict'

 

BABEL 

 

JavaScript let varname = 123;

var 는 쓰지 말 것. Hoisting 이라고 변수를 먼저 사용후 선언해도 되는 방식.

const bigint = 1234....n
TypeScript let varname:integer = 123;

MS 개발.
Javascript + Type ( Data )
ES5 + ES6 포함.

BABEL 로 Javascript 로 변환

 

String 합치기

Console.log ("Answer ${varname}");

 

class Student
{
  constructor(name, age, enrolled, score)
  {
    this.name = name;
    this.age = age;
    this.enrolled = enrolled;
    this.score = scorre;
  }
}

const students = [
  new Student('A', 29, true,  45),
  new Student('B', 28, false, 85),
  new Student('C', 30, true,  95)
];

{
  const result = students.find(function(student, index) {
    return student.score === 90;
  };

  // 조건에 맞는 1 개의 Row 만 리턴. find
  const result = students.find(student => student.score === 90);

  // 조건에 맞는 여러개의 Row 을 Array 로 리턴 - filter
  const result = students.filter((student) => student.enrolled);

  // 45, 85, 95. 특정 컬럼을 리턴 - map
  const result = students.map((student) => student.score);

  // 조건에 맞는 경우가 있으면 True 리턴. some
  const result = students.some(student => student.score < 90);

  // 모두 조건에 맞으면 True 리턴. every
  const result = students.every(student => student.score < 90);

  // 배열 하나씩 처리할 때 쓴다. 배열의 값을 누적할 때 쓴다. - reduce
  const result = students.reduce((prev, curr) => prev + curr.score, 0);
  // 0 을 안 넣으면, 처음에는 prev = 배얼[0], curr = 배열[1] 이 넘어간다. 두번째에는 prev = 리턴값, curr = 배열[2]
  // 0 을 넣으면,    처음에는 prev = 0,       curr = 배열[0] 이 넘어간다. 리턴은 누적을 한다.

  // 응용. 50 점 넘는 점수를 join 하기.
  const result = students.map((student) => student.score)
                         .filter((score) => score >= 50)
                         .join();

  const result = students.map((student) => student.score)
                         .sort((a, b) => a-b) // Plus / Minus 에 따라서 정렬순서 정의
                         .join();

  console.log(result);
}

AJAX - XMLHttpRequest Object : Request & Respone - (new) fetch() API

 

반응형

'JavaScript, ECMAScript' 카테고리의 다른 글

import, export  (0) 2021.09.28
CORS.ajax.fetch.어떻게 해도 CORS 가 발생할 경우  (0) 2021.08.31
자바스크립트 역사.  (0) 2020.09.21
Count, 카운트  (0) 2020.03.09
실수를 정수로 바꾸는 방법  (0) 2020.03.04

자바스크립트 역사.

JavaScript, ECMAScript
반응형
1993 Netscape MOSAIC Web Browser 정적 HTML + CSS
1994 Netscape Navigator Scriping 언어추가 시도. Java + Scheme 스크립트
1994.09 Scheme 스크립트 = Mocha = LiveScript Interpreter
1995 LiveSript + Java 유명세 = Javascript
1996 MS 가 Netscape 사 Reverse Engineering. Javascript 를 JScript 롤 이름만 바꿈.
1996.11 Netscape 가 ECMA 와 협업해 표준 시도.
1997 ECMAScript 1 출시
1999 ECMAScript 3 출시. Error Handling. === 연산자 추가
2000 ECMAScript 4. 본격 언어화
2000 MS IE 표준화 선언. ECMAScript 4 개발 무시. ECMAScript 발전 중단
2004 FireFox 출시 + "ECMAScript4 를 ActionScript3 Tamarin 표준 제안했으나 거부". 3사 경쟁=개발자 표준달라 고생.
2004 Jesse James Garrett Ajax 도입.
2005 개발자 커뮤니티. jquery vs dojo vs mootools. = 표준 상관안해도 되게 해줌.
2008 Chrome 출시. Just In Time 컴파일 방식
2008.07 브라우저 협의회출시
2009 ( 매우 중요 ) ECMAScript 5
2015 ( 매우 중요 ) ECMAScript 6. default parameter, class, arrow function, const, let
2019 ECMAScript 10. jquery 등 불필요.


브라우저별 ECMAScript 엔진
CHROME - V8. NodeJS 와 ELETRON 에서도 활용
FireFox   - SpiderMonkey
Safari     - JSCore
MSEdge - CHakra
Opera    - Carakan
Adobe Flash - Tamarin

ECMAScript 최신버전을 Javascript 로 Transcompiler 로 ECMASccript  5 나 6로 변환 = BABEL
SPA - Single Page Application. React, Angular, Vue.

V8 Engine 
  NODE.js - V8 Javascript 기반 back-end 서비스 구현.
  Mobile 
  ELECRON - Desktop App 개발

Web Assembly - C, CPP 동작
반응형

'JavaScript, ECMAScript' 카테고리의 다른 글

CORS.ajax.fetch.어떻게 해도 CORS 가 발생할 경우  (0) 2021.08.31
문법 기본  (0) 2020.10.07
Count, 카운트  (0) 2020.03.09
실수를 정수로 바꾸는 방법  (0) 2020.03.04
Hoisting.호이스팅  (0) 2020.02.12

Software.Architect.AA, TA, DA, QA, BA

IT 용어, 인터넷 활용 등등
반응형

- EA (Enterprise Architect) : BA 를 포함한 모든 아키텍처 설계

 

- BA (business architect) : 비즈니스 관점 프로세스 설계

 

- SA (Solution Architect) : 특정 솔루션에 대한 아키텍처 설계

 

- AA (Application Architect) : 공통 로직/ 개발표준/ 프레임워크 업무 설계

 

- DA (Data Architect) : 데이터 표준/ 구조/ 품질/ 마이그레이션/ DB 설계

 

- TA (Technical Architect) : OS/ WEB/ WAS/ DB 하드웨어와 네트워크 구축

 

- QA (Quality Assurance) : 산출물/ 소스코드 품질 보증

 

좋은 아키텍트의 기준은 무엇일까요? (필자의 주관적 생각임)
1. 사람을 통솔할 수 있는 리더십을 갖춘 사람 (기술적 가이드 능력)
2. 단순히 실력뿐만이 아닌 고객을 상대하는 언변과 협상 능력을 갖춘 사람
3. 추상적인 논리를 구조화하여 형상화 시킬 수 있는 사람
4. 문서 작성 능력을 갖춘 사람 (문서를 배포하고 가이드라인을 제시할 수 있는 사람)
5.  빠르게 변하는 기술 트렌드에 적응하기 위한 학습을 좋아하는 사람
6. 10년 이상의 노하우(코딩 등)를 보유하여 기술적 리딩이 가능한 사람

 

참고) 

https://bcho.tistory.com/667?category=69087

반응형

'IT 용어, 인터넷 활용 등등' 카테고리의 다른 글

Template Meta Programming  (0) 2021.11.14
JWT ( JSON Web Token )  (0) 2021.08.19
CI, DI  (0) 2020.04.20
ab (apache bench) 테스트  (0) 2020.03.26
Javascript.Hoisting  (0) 2020.02.08

쓸만한 테마 설치하기.astra

WordPress, 워드프레스
반응형

1) Appearance > Themes > Add New

 

2) Search themes "astra" > Install > Activate

 

3) Appearance > 새로생긴 Astra Options > 우측에 Install importaer Plugin

 

4) Start Templates > Elementor 선택.

 

5) Start Templates > 상단 Search Bar 에서 All 을 Free 선택

 

*) 상단메뉴와 배경이미지 합치기

기본적으로 테마설정은 "Appearance > Themes > Custmize" 에 접속하여야 한다.

Header > Transparent Header > [ X ] Enable on Complete Website

 

*) 상단에 Quota 버튼없애기

Primary Menu > Last Item in Menu > None 선택

반응형

'WordPress, 워드프레스' 카테고리의 다른 글

AWS.WordPress.FirstSetting  (0) 2020.07.27
테마구성도(2019-A08)  (0) 2019.11.04
Theme.Template.hierachy  (0) 2019.10.24
기타 참고 사항  (0) 2019.10.22
워드 프레스 설치시 고려사항, 주의점  (0) 2019.10.17

AWS.WordPress.FirstSetting

WordPress, 워드프레스
반응형

인스턴스 설치 ) EC2 > MarketPlace 에서 WordPress 선택해서 진행

접속 ) http://ec2 주소/admin

아이디 ) user

비번 확인 ) EC2 에서 R Mouse Click > 인스턴스설정 > System Log 에서 하단에 Password 확인 가능

  

참조 ) https://brunch.co.kr/@poin2lab/6

반응형

'WordPress, 워드프레스' 카테고리의 다른 글

쓸만한 테마 설치하기.astra  (0) 2020.07.28
테마구성도(2019-A08)  (0) 2019.11.04
Theme.Template.hierachy  (0) 2019.10.24
기타 참고 사항  (0) 2019.10.22
워드 프레스 설치시 고려사항, 주의점  (0) 2019.10.17

도커 명령 모음

Docker, 도커
반응형
docker.image.목록 docker image list
docker.image.실행 docker run -v[source]:[target] -p 8081:8080 --rm -t [image]
docker.image.삭제 docker rmi [image]
docker.image.전체삭제 docker system prune -a
docker.container.실행목록 docker ps
docker.container.삭제 docker rm [container]
docker.container.bash 접속 docker exec -it [id] /bin/bash
반응형