-
Angular(9/10/11)에서 구글맵 사용하기
Angular에서 구글맵 사용하기 앵귤러에 구글 맵을 사용해야할 일이 잇어서 작업해보았다. 구글 검색을 하면 Angular Google Maps (AGM) 이라는게 제일 먼저 검색되서 그걸로 작업을 다 하다가 마지막에 angular 9에서 앵귤러가 googlemap 컴포넌트를 냈다는것을 알수 있엇다. 기존걸 다 지우고 이제 다시 해보았다. https://github.com/angular/components/tree/master/src/google-maps#readme youtube와 clipboard관련 컴포넌트도 추가되있다고하니 필요하신분은 확인해보면 좋을듯 싶다. Install Angular Google Maps component npm install @angular/google-maps change index.html index.html에 다음 코드를 추가한다. <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY"></script> 사용하는 모듈에 설정 나는 user.module.ts파일을 사용하는데 이걸 수정하자. @NgModule({ declarations:...
-
Restaurant Open Hour
openhour business logic 현재 식당 주문관리앱을 하나만들고있는데 openhour관련 내용을 만들어야해서 정리를 한번 해봣다. 문제 openhour를 1주일 단위로 보여줘라. opehhour는 입력시 am pm 과 시간을 이용해라. timezone을 고려해라. day light saving을 고려해라. 현재 시간을 기준으로 오픈인지 아닌지를 보여줘라. 위 문제를 모두 고려해서 처리를 해야했다. 해결 방법 문제는 3가지로 압축될수 있었다. 오픈시간 입력 식당 오픈 시간을 보여주기 현재 시간을 기준으로 오픈인지 확인하기 식당 오픈 입력 입력할때 am/pm을 사용하여 입력하는 조건이여서 현지 시간을 기준으로 오픈시간을 입력한다. 그리고 dayofweek를...
-
aws rds public access
aws rds public access aws rds 서비스를 외부에서 엑세스가 가능하게 만들기 db instance가 외부 접속 가능하게 설정 aws console > rds > db instance > 원하는 db instance 선택후 modify connectivity > Additional connectivity configuration save vpc에서 라우팅을 internet gateway로 설정 aws console > rds > db instance > 원하는 db instance 선택후 > vpc 선택 click routing table edit routes 0.0.0.0/0 internet gateway 추가 security group 수정 aws console > rds > db instance...
-
aws eks
aws eks (kubernetes) aws cli 설치 curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg" sudo installer -pkg AWSCLIV2.pkg -target / AWS 액세스 키 생성 setup command line aws configure 생성한 키와 내용을 넣는다. ~/.aws/에 파일이 생성된다 확인 aws ec2 run-instances eksctl 설치 brew install aws-iam-authenticator brew tap weaveworks/tap brew install weaveworks/tap/eksctl kubernetes cluster 생성 eksctl create cluster \ --name cluster-1 \ --version 1.18 \ --region us-west-2 \ --nodegroup-name c1-nodes \ --node-type t3.medium \ --nodes 2 type t3.nano t3.micro t3.small...
-
ProxySQL
proxy sql sql 서버 3대를 가지고 있는데 1대가 죽어도 서비스에 영향이 없게 하기 위해서 작업한 내용. install registry 설치 cat <<EOF | tee /etc/yum.repos.d/proxysql.repo [proxysql_repo] name= ProxySQL YUM repository baseurl=https://repo.proxysql.com/ProxySQL/proxysql-2.0.x/centos/\$releasever gpgcheck=1 gpgkey=https://repo.proxysql.com/ProxySQL/repo_pub_key EOF proxysql 설치 및 설정 yum install proxysql -y systemctl start proxysql-initial systemctl stop proxysql-initial # 상태 확인 systemctl enable proxysql systemctl status proxysql systemctl start proxysql # systemctl stop proxysql # systemctl restart proxysql 접속해서 설정 포트번호 주의 mysql -u admin -padmin...
-
Http 302 redirect
HTTP 302 redirect 브라우저 자동 재시도 얼마전 oauth를 공부하다 잘 이해가 안되는 부분이 있었다. 아주 기본적인것인데 정확히 머리속에 정리가 되지 않고 있었던걸 몇일 연구해보고 정리한다. 웹페이지에 요청을 보내면 무조건 결과가 돌아온다. 그 결과값중 302가 있다. https://developer.mozilla.org/ko/docs/Web/HTTP/Status/302 여기를 읽어보면 다음과 같다. 하이퍼텍스트 전송 프로토콜 (HTTP)의 302 Found 리다이렉트 상태 응답 코드는 클라이언트가 요청한 리소스가 Location 헤더에 주어진 URL에 일시적으로 이동되었음을 가리킨다. 브라우저는 사용자를 이 URL의 페이지로 리다이렉트시키지만 검색 엔진은 그 리소스가 일시적으로 이동되었다고 해서 그에 대한...
-
Percona Monitoring and Management
Percona Monitoring and Management Percona XtraDb Cluster를 사용하려면 모니터링을 붙여야한다. 이걸 해주는 녀석이다. 여러가지 오픈소스를 가지고 잘 역어서 사용하기 편하게 해주었다. 이같은 화면을 볼수 있다 뿐만아니라 잘만 사용하면 엄청나게 많은 정보를 얻을수 있다. 서버 클라이언트 구조로 되잇고 서버를 설치후 클라이언트는 각 pxc 노드에 설치해주면된다. server docker pull percona/pmm-server:2 # persistent data container docker create --volume /srv \ --name pmm-data percona/pmm-server:2 /bin/true docker run --detach --restart always \ --publish 80:80 --publish 443:443 \ --volumes-from pmm-data --name...
-
Percona XtraDB Cluster 8.0 without SSL
Percona XtraDB Cluster mysql의 MMM과 같은 것이다 올리자마자 리플리케이션이랑 모든게 준비된 패키지. 8부터 ssl이 들어와서 조금 고생하고 해결하지 못햇으나 내부 망이고 하니 ssl을 빼고 진행하는것으로 했다. node 3개를 준비했다. node 1 : 192.168.0.101 node 2 : 192.168.0.102 node 3 : 192.168.0.103 전체노드 selinux를 꺼두고 방화벽도 다꺼두고 작업하자. centos 7을 기본 설치했다. 이후부터 진행해보자. 참고 https://www.percona.com/doc/percona-repo-config/percona-release.html#example-all-steps-for-installing-a-specific-percona-product node1 yum update -y yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm -y yum update -y percona-release enable-only pxc-80 release percona-release enable tools release yum...
-
kubernetes backup - velero
이어지는 글 입니다. https://teamsmiley.github.io/2020/09/30/kubespray-01-vagrant/ https://teamsmiley.github.io/2020/10/01/kubespray-02-install-kube-local-internal-loadbalancer/ https://teamsmiley.github.io/2020/10/02/kubespray-03-kube-with-haproxy/ https://teamsmiley.github.io/2020/10/04/kubernetes-multi-cluster/ https://teamsmiley.github.io/2020/10/05/kubernetes-cert-manager/ https://teamsmiley.github.io/2020/10/06/kubernetes-metallb-ingress-nginx/ https://teamsmiley.github.io/2020/10/06/kubernetes-helm/ https://teamsmiley.github.io/2020/10/08/kubernetes-prometheus-grafana/ https://teamsmiley.github.io/2020/10/08/kubernetes-log/ https://teamsmiley.github.io/2020/10/10/kubernetes-backup-velero/ 쿠버네티스 백업 - velero https://velero.io/ 구성도 minio에 백업 데이터를 저장한다. velero client는 랩탑에 설치하고 이걸 이용해서 kube에 pod를 디플로이하면 이 pod가 백업을 받아서 minio로 올려주는 역할을 한다. minio 백업 데이터를 minio에 직접 보낸다. 알아서 설치해두도록 하고 aws_access_key_id/aws_secret_access_key 를 알고 있어야한다. minio에서 bucket을 velero라는 이름으로 만들어 줬다. install velero client brew install velero install velero server (on kube cluster) credentials-velero cat <<EOF >...
-
kubernetes - 로그 분석 elasticserach/kibana/fluentbit
연속된 글입니다. https://teamsmiley.github.io/2020/09/30/kubespray-01-vagrant/ https://teamsmiley.github.io/2020/10/01/kubespray-02-install-kube-local-internal-loadbalancer/ https://teamsmiley.github.io/2020/10/02/kubespray-03-kube-with-haproxy/ https://teamsmiley.github.io/2020/10/04/kubernetes-multi-cluster/ https://teamsmiley.github.io/2020/10/05/kubernetes-cert-manager/ https://teamsmiley.github.io/2020/10/06/kubernetes-metallb-ingress-nginx/ https://teamsmiley.github.io/2020/10/06/kubernetes-helm/ https://teamsmiley.github.io/2020/10/08/kubernetes-prometheus-grafana/ https://teamsmiley.github.io/2020/10/08/kubernetes-log/ https://teamsmiley.github.io/2020/10/10/kubernetes-backup-velero/ kubernetes - Log를 분석해보자. fluentd가 로그를 수집해서 elasticsearch에 보내면 elastic search는 로그를 저장하고 kibana가 elastic search를 디비로 해서 화면에 로그를 뿌려줌 create namespace k create namespace logging kcn logging 꼭 logging을쓰기 바란다. 설치파일중에 namespace 가 고정된 부분이 있다.(fluent bit 관련해서) elastic search install helm repo add elastic https://helm.elastic.co 일단 persistence가 없는걸로 해서 진행해본다. helm install elasticsearch elastic/elasticsearch \ --set persistence.enabled=false --namespace logging kubectl...