RedPlug's Tory

Redplug 입니다.

PM관련 툴을 최근에 이리저리 좀 알아보고 있는 중입니다.

개인적으로도 좀 계획 세울 일도 있고 여러가지로 쓸려고^^;

해서 현재 Jira, Asana, Redmine, OpenProject .. 등등 여러가지 깔아서 테스트 해보는 중인데

SaaS형태로 제공되는 제품들은 오! 괜찮다! 하는건 대부분 유료로 구매를 해야되더라구요.

대상이 대부분 팀단위 이다 보니 개인이 월별로 결재하기에는 사실 좀 부담되는 부분이 있습니다.

그러던 와중에 요런 영상을 하나 보게됬는데요.

https://youtu.be/eoQpEGUNYp0

https://www.focalboard.com/

 

Focalboard: Open source alternative to Trello, Asana, and Notion

Focalboard: Project Tracking for Software Development Teams Focalboard helps your software development team stay aligned to complete tasks, reach milestones, and achieve goals. Plan every project and hit every milestone with this open source alternative to

www.focalboard.com

 

focalboard라고 Notion이랑 비슷한 놈을 발견을 해서 도커에 설치 해봤습니다.

현재 Mattermost라는 회사에서 소유하고 있는 걸로 보이는데요.

예전에 인터넷이 불가한 환경에서 Slack을 사용해야 하는데 여러가지 이슈사항이 있었어서

Mattermost를 테스트 용으로 구축 해본적이 있었는데 꽤 괜찮았던걸로 기억을 합니다.

개인이 사용할 경우 굳이 도커나 서버 버젼이 아닌 데스크탑 버젼을 사용해서 설치 진행하셔도될것 같습니다.

https://www.focalboard.com/download/personal-edition/

 

Personal Edition

Edit on GitHub Personal Edition If you are new to Focalboard, Personal Desktop is the fastest way to try it out. To use it with your team, use Mattermost Boards. You can import boards from Personal Desktop to Mattermost Boards. You can also set up the stan

www.focalboard.com

도커 설치 방법은 아래와 같이 진행하였습니다.

우선 시놀로지 도커에서 focalboard로 검색해서 amttermost/focalboard를 받습니다. (lastest)

 

이미지 크기는 생각보다 크지 않습니다.

https://docs.mattermost.com/boards/focalboard/installing-boards.html

 

Installing the Focalboard App — Mattermost documentation

× We've updated this site to make content easier to find. Use the feedback option at the bottom of any page to share your feedback with us.

docs.mattermost.com

https://registry.hub.docker.com/r/mattermost/focalboard/

 

Docker Hub

 

registry.hub.docker.com

mattermost쪽이나 도커 허브쪽에서 확인 시에 설치 관련해서 특별하게 셋팅하는 부분은 없었습니다.

컨테이너 이름 정해주고 고급 설정에서

포트만 설정해주었습니다. 실제 사용은 공유기에서 포트포워딩 해서 사용 예정

9092 : 프로메테우스 모니터링 관련 포트(안쓸경우 필요없음)

8000 : 실제 웹 접속 포트

로그인 테스트, 최초 로그인시 계정이 없어서 계정을 생성합니다.

로그인 확인, 정말 노션이랑 비슷하게 생겼네요

현재 한국어는 지원하지 않습니다.

 

도커로 구성하는거라 구성자체는 어렵지 않습니다.

테스트로 잠시 또 굴려봐야겠네요.

안녕~

 

잠깐 사용해본 후기

github상에 최초 릴리즈가 작년 3월이고 현재 기준 버젼(v0.14.0-rc1)입니다.

아마 지속적으로 개선이 되지 않을까 싶습니다.

- 노션을 작년 7월 경부터 사용 중이고, 어느정도 사용 패턴이 정해진 상태

- 할일 캘린더에서 데일리로 루틴 돌리는 일들이 몇가지 있어서 영역을 복사해서 자주 쓰는 편인데 드래그 해서 영역 선택이 되지 않습니다. 캘린더 뿐만 아니라 다른 영역도 안되는 것으로 확인하였습니다.. (아래스크린샷은 노션에서 영역선택하는 화면)

- Add board 하여 템플릿을 새로 생성한 경우 간혹 하얀화면에서 넘어가지 않는 증상 발생, 새로고침하면 정상적으로 노출은 됩니다. (아마도 버그?)

- Settings 누른 후에 language, theme가 둘다 노출되고 없어지지 않음.

노션에 익숙 해진 상태이고 영역 선택을 자주 쓰고 있어서 아마도 현재 버젼에서는 저는 테스트가 더 필요치 않아보였습니다.

나중에 정식 버젼이 나오면 그 때 테스트 해봐야 겠습니다.

1. Github 에서 Access Token 생성

Github Login > Settings

 

Developer settings

Personal access tokens > Generate new token

 

Note > repo Check > admin:repo_hook Check > 최하단 Generate token 선택

생성된 토큰 복사

2. Github Jenkins에 추가
설치 시에 GitHub Plugin이 설치되있어서 별도로 설치 하지 않았으나, 혹시 미설치되어있으면 설치 필요.

(Jenkins 관리 > 플러그인 관리 > 설치 가능 > Filter에서 Github Plugin 검색하여 설치

Jenkins > Jenkins 관리

시스템 설정

Github > Add GitHub Server > GiHub Server

Name : Https://github.com/ID/

API URL : https://api.github.com

Add > Kind Secret text > Secret GitHub Token > ID 구분할 수 있는 값으로 변경 > Test Connection 해서 통과 확인 > 저장
* Github ID와 동일할 경우 등록되지 않으니 다른 값으로 저장

3. Project 생성

새로운 Item

프로젝트이름 > Freestyle project > OK

 

GitHub project 체크 >  Project Url GitHub 프로젝트

소스 코드 관리 > Git > Repository URL 레파지토리주소 > Credentials > ADD > github id/pw 입력 > 저장

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

확인

환경 : WSL2 ubuntu 20.04.1. LTS

 

JAVA 설치

## JRE 설치
sudo apt-get install openjdk-8-jre
 
## JDK 설치
sudo apt-get install openjdk-8-jdk
 

 

JAVA 버젼확인

java -version

openjdk version "1.8.0_265"
OpenJDK Runtime Environment (build 1.8.0_265-8u265-b01-0ubuntu2~20.04-b01)
OpenJDK 64-Bit Server VM (build 25.265-b01, mixed mode)
 

 

JAVA 패스 설정

## javac 위치 확인
which javac
/usr/bin/javac
 
## 실제 위치 확인
readlink -/usr/bin/javac
/usr/lib/jvm/java-8-openjdk-amd64/bin/javac
 
## PATH설정 /etc/profile 수정 
sudo vi /etc/profile
 
## /etc/profile 촤하단 추가내용
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$JAVA_HOME/bin/:$PATH
export CLASS_PATH=$JAVA_HOME/lib:$CLASS_PATH
 
## PATH 적용
source /etc/profile
 
## PATH 확인
echo $JAVA_HOME
/usr/lib/jvm/java-8-openjdk-amd64
 

 

 

젠킨스 설치

링크 : pkg.jenkins.io/debian-stable/

## 키 추가
wget --- https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
 
## 젠킨스 설치 패키지 설정
sudo vi /etc/apt/sources.list
 
## source.list 최하단에 내용 추가
deb https://pkg.jenkins.io/debian-stable binary/
 
## apt update
sudo apt-get update
 
## 젠킨스 설치
sudo apt-get install jenkins
 

 

젠킨스 시작

## 젠킨스 시작
sudo /etc/init.d/jenkins start
Correct java version found
* Starting Jenkins Automation Server jenkins       [ OK ]
 

 

젠킨스 접속

기본포트 8080

http://IP주소:8080 or http://localhost:8080

패스워드 확인(하기는 임의값)

## Administrator password 확인 후 상기 페이지 입력
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
abcdefghijklmn
 

 

 

추천 선택

 

설치화면

 

관리자 계정생성

 

URL 설정

 

준비

 

설치완료

 

자동실행등록

sudo chmod +/etc/init.d/jenkins
sudo update-rc.d jenkins defaults
 

 

m.2 sata nvme 속도 비교

ETC2019. 12. 4. 10:05

집PC의 SSD를 교체하여서 대략적인 속도 확인을 해보려고 한 비교입니다.


테스트 환경

M/B : GigaByte B150M-DS3H-CF

CPU : INTEL CORE i7-6700

RAM : 16GB

OS : Windows 10


1. GALAX GAMER Heat Sink M.2 2280 240GB (SATA 방식)


2. TEAMGROUP NVMe PCIe M.2 2280 1TB (NVMe)


육안상 갤럭시 모델이 NVMe가 아닌거 같은데 NVMe로 소개하는 글들도 있네요. 

(홈이 2개일 경우 SATA방식)


Redplug입니다.

 

Elasticsearch 사용 시 LDAP연동을 통한 권한 관리를 하기 위한 LDAP 연동 테스트 진행

 

Open Distro for Elasticsearch는 하기 4가지 케이스에 사용된다고 합니다.

- Log analytics

- Real-time application monitoring

- Clickstream analytics

- Search backend

 

설치 참고한 가이드

https://opendistro.github.io/for-elasticsearch-docs/docs/install/rpm/

 

OS는 CentOS7입니다.

 

 

 

1. repository 추가

cd /etc/yum.repos.d/

sudo curl https://d3g5vo6xdbdb9a.cloudfront.net/yum/opendistroforelasticsearch-artifacts.repo -o opendistroforelasticsearch-artifacts.repo

 

 

2 JAVA 설치 (1.8설치)

sudo yum install java-1.8.0-openjdk-devel

 

3. 사용 가능한 Open Distro for Elasticsearch 버젼 확인

sudo yum list opendistroforelasticsearch --showduplicates

 

4. Open Distro for Elasticsearch 설치 진행

   설치 시점엔 1.1.0-1로 해당 버젼 설치

   Elasticsearch + Open Distor for Elasticsearch 같이 설치 됩니다. (..이걸 몰라서 좀 삽질했습니다.)
   이미 Elasticsearch가 설치 되있을 경우 Standalone Elasticsearch Plugin Install 사용하여 설치 진행

sudo yum install opendistroforelasticsearch-1.1.0-1

 

5. 심볼릭 링크 생성 (JAVA 8일경우)

sudo ln -s /usr/lib/jvm/java-1.8.0/lib/tools.jar /usr/share/elasticsearch/lib/

 

6. Elasticsearch 서비스 시작

sudo systemctl start elasticsearch.service

 

7. Elasticsearch 테스트

curl -XGET https://localhost:9200 -u admin:admin --insecure
curl -XGET https://localhost:9200/_cat/nodes?v -u admin:admin --insecure
curl -XGET https://localhost:9200/_cat/plugins?v -u admin:admin --insecure

하기와 같이 노출되면 Running중
[redplug@localhost ~]$ curl -XGET https://localhost:9200 -u admin:admin --insecure
{
  "name" : "localhost.localdomain",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "52rlltm7QPyrLkj0vjfhMQ",
  "version" : {
    "number" : "7.1.1",
    "build_flavor" : "oss",
    "build_type" : "rpm",
    "build_hash" : "7a013de",
    "build_date" : "2019-05-23T14:04:00.380842Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

 

8. LDAP 연동

https://opendistro.github.io/for-elasticsearch-docs/docs/security-configuration/ldap/

plugins/opendistro_security/securityconfig/config.yml 파일 수정

기본주소

/usr/share/elasticsearch/plugins/opendistro_security/securityconfig/config.yml

 

config 파일은 authc부분과 authz로 부분으로 이루어져 있으며,

authc는 인증, authz는 권한 관련된 사항을 정의 합니다.

인증 테스트 이기 때문에 authc 부분만 설정합니다.

 

샘플파일

authc:
      ldap:
        description: "Authenticate via LDAP or Active Directory"
        http_enabled: true 
        transport_enabled: true
        order: 5
        http_authenticator:
          type: "basic"
          challenge: true
        authentication_backend:
          # LDAP authentication backend (authenticate users against a LDAP or Active Directory)
          type: "ldap"
          config:
            # enable ldaps
            enable_ssl: false
            # enable start tls, enable_ssl should be false
            enable_start_tls: false
            # send client certificate
            enable_ssl_client_auth: false
            # verify ldap hostname
            verify_hostnames: true
            hosts:
            - "ad01.tmoncorp.com:389"
            bind_dn: CN=redplug,OU=REDPLUG,DC=REDPLUG,DC=com
            password: "패스워드"
            userbase: "OU=Users,OU=REDPLUG,DC=REDPLUG,DC=com"
            # Filter to search for users (currently in the whole subtree beneath userbase)
            # {0} is substituted with the username
            usersearch: "(sAMAccountName={0})"
            # Use this attribute from the user as username (if not set then DN is used)
            username_attribute: "cn"

설정 후 Security 적용

https://opendistro.github.io/for-elasticsearch-docs/docs/security-configuration/security-admin/

sudo /usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh -cacert /etc/elasticsearch/root-ca.pem -cert /etc/elasticsearch/kirk.pem -key /etc/elasticsearch/kirk-key.pem -cd /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/

 

로그인 시도 화면

로그인 성공 확인

Elasticsearch Install

ETC2019. 8. 13. 20:05

LDAP 연동 테스트용으로 설치 진행

 

1. CentOS 7 설치
- Hyper-V 로 구성

- 2세대, 설정에서 보안부팅 사용 X

- Root 계정 외 별도 계정사용(root로 Elasticsearch 실행불가)

 

2. 네트워크 설정 (고정IP)

- 계정 로그인 후 이더넷 장치 확인

[redplug@localhost ~]$ nmcli d
DEVICE  TYPE      STATE      CONNECTION
eth0    ethernet  disconnected  eth0
lo      loopback  unmanaged  --

- 고정IP 설정

[redplug@localhost ~]$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=cbcd721a-ea1b-4a62-8719-902db2585700
DEVICE=eth0
ONBOOT=yes
IPADDR=10.1.1.100 
NETMASK=255.255.255.0
GATEWAY=10.1.1.1
DNS1=10.1.1.110
DNS2=10.1.1.210

# 네트워크 재시작

systemctl restart network

 

3. Elasticsearch 설치

- Import the Elasticsearch PGP Key

[redplug@localhost ~]$ sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
[redplug@localhost ~]$

- Installing from the RPM repository
레파지토리 추가

[redplug@localhost /]$ sudo vi /etc/yum.repos.d/elasticsearch.repo

[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

 

 

- Elasticsearch 설치

sudo yum install elasticsearch[redplug@localhost /]$ sudo yum install elasticsearch
Loaded plugins: fastestmirror
base                                                                                    | 3.6 kB  00:00:00
esticsearch-7.x                                                                         | 1.3 kB  00:00:00
extras                                                                                  | 3.4 kB  00:00:00
updates                                                                                 | 3.4 kB  00:00:00
(1/5): extras/7/x86_64/primary_db                                                       | 215 kB  00:00:00
(2/5): base/7/x86_64/group_gz                                                           | 166 kB  00:00:00
(3/5): base/7/x86_64/primary_db                                                         | 6.0 MB  00:00:00
(4/5): updates/7/x86_64/primary_db                                                      | 7.4 MB  00:00:00
(5/5): esticsearch-7.x/primary                                                          |  43 kB  00:00:01
Determining fastest mirrors
 * base: mirror.navercorp.com
 * extras: mirror.navercorp.com
 * updates: mirror.navercorp.com
esticsearch-7.x                                                                                        119/119
Resolving Dependencies
--> Running transaction check
---> Package elasticsearch.x86_64 0:7.3.0-1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================
 Package                     Arch                 Version                  Repository                     Size
===============================================================================================================
Installing:
 elasticsearch               x86_64               7.3.0-1                  esticsearch-7.x               271 M

Transaction Summary
===============================================================================================================
Install  1 Package

Total download size: 271 M
Installed size: 457 M
Is this ok [y/d/N]: y
Downloading packages:
elasticsearch-7.3.0-x86_64.rpm                                                          | 271 MB  00:01:14
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Creating elasticsearch group... OK
Creating elasticsearch user... OK
  Installing : elasticsearch-7.3.0-1.x86_64                                                                1/1
### NOT starting on installation, please execute the following statements to configure elasticsearch service to start automatically using systemd
 sudo systemctl daemon-reload
 sudo systemctl enable elasticsearch.service
### You can start elasticsearch service by executing
 sudo systemctl start elasticsearch.service
Created elasticsearch keystore in /etc/elasticsearch
  Verifying  : elasticsearch-7.3.0-1.x86_64                                                                1/1

Installed:
  elasticsearch.x86_64 0:7.3.0-1

Complete!

- Elasticsearch 실행

[redplug@localhost /]$ sudo systemctl enable elasticsearch.service
Created symlink from /etc/systemd/system/multi-user.target.wants/elasticsearch.service to /usr/lib/systemd/system/elasticsearch.service.
[redplug@localhost /]$
[redplug@localhost /]$ sudo service elasticsearch start
Starting elasticsearch (via systemctl):                    [  OK  ]

- 실행 확인
하기와 같이 화면이 노출되면 정상적으로 실행

[redplug@localhost /]$ curl -XGET 127.0.0.1:9200
{
  "name" : "localhost.localdomain",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "KR5xkBUJRwqrBdETyAJoqg",
  "version" : {
    "number" : "7.3.0",
    "build_flavor" : "default",
    "build_type" : "rpm",
    "build_hash" : "de777fa",
    "build_date" : "2019-07-24T18:30:11.767338Z",
    "build_snapshot" : false,
    "lucene_version" : "8.1.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}
[redplug@localhost /]$

4. 외부 접근 허용

elasticsearch.yml 파일 수정 후 서비스 재시작

[redplug@localhost /]$ sudo vi /etc/elasticsearch/elasticsearch.yml

# ---------------------------------- Network -----------------------------------
#
# Set the bind address to a specific IP (IPv4 or IPv6):
#
network.host: 0.0.0.0
#
# Set a custom port for HTTP:
#
#http.port: 9200
#
# For more information, consult the network module documentation.

 

 

 

[redplug@localhost /]$ sudo service elasticsearch restart
Restarting elasticsearch (via systemctl):                  [  OK  ]

 

 

 

무료 이미지 사이트

ETC2018. 1. 7. 12:55

https://unsplash.com