728x90

Load Balance Setting in NginX

 

로드밸런서 셋팅

  1. NginX install check

Setting in Ubuntu

# Debian and Ubuntu sudo apt-get update # Then install the Nginx Open Source edition sudo apt-get install nginx

 

Setting in CentOS

# CentOS # Install the extra packages repository sudo yum install epel-release # Update the repositories and install Nginx sudo yum update sudo yum install nginx

yum install epel-release 로 repository 를 최신 상태로 업데이트한다. 일반적으로 repo 의 경우는 초기상태에서는 최신 버전을 가르키진 않기 때문에, 해당 방식으로 업데이트 해준다.

[ Remi 와 Epel 은 Dependency Library 관계를 가지고 있다.]

 

CentOS 사용자의 경우 host 설정 파일 (/etc/nginx/conf.d/) 아래에 있는 .conf 파일들이 virtual host 상태로 로드된다.

 

2. 데몬을 재시작한다.

sudo systemctl restart nginx

 

 

3. 기본적으로 로딩 페이지에서 에러 발생시, 방화벽에 의해서 연결이 차단된 상태일 가능성이 있다. CentOS 7 의 기본 방화벽 설정은 HTTP 트래픽을 허용하지 않으므로 허용시킨다.

sudo firewall-cmd --add-service=http --permanent sudo firewall-cmd --reload

 

4. 브라우저 리로드

 

nano 명령어로 해당 conf 파일을 생성시킨다. nano 가 익숙하지 않다면 vi 로 해결할 것

. For example with nano:

sudo nano /etc/nginx/conf.d/load-balancer.conf

 

해당 파일 안에서 2개의 segment 로 구분하게 되는데, upstream 이 로드밸런서에 해당하고, server 에 관한 설정이 nginx 에서 설정하는 가상호스트의 설정을 따르게 된다.

In the load-balancer.conf you’ll need to define the following two segments, upstream and server, see the examples below.

# Define which servers to include in the load balancing scheme. # It's best to use the servers' private IPs for better performance and security. # You can find the private IPs at yourUpCloud control panel Network section. http { upstream backend { server 10.1.0.101; server 10.1.0.102; server 10.1.0.103; } # This server accepts all traffic to port 80 and passes it to the upstream. # Notice that the upstream name and the proxy_pass need to match. server { listen 80; location / { proxy_pass http://backend; } } }

Then save the file and exit the editor.

 

CentOS 에서는 같은 이름의 파일으로 심볼릭 링킹 처리가 안된다. 따라서 아래처럼 default.conf 파일을 다른 이름으로 바꿔서 처리해준다.

sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.disabled sudo systemctl restart nginx # nginx daemon 재시작

 

로드 밸런싱 유형 (심화버전)

 

최소 활성화 연결방식 (내부 Threading 사용)

라운드 로빈 방식이 완료하는데에 비교적 오래걸리는 반면에 쓰레드를 사용하여 자원적으로 공평하게 처리한다.

최소 연결 로드밸런싱 방식을 사용하려면, least_conn 을 upstream 영역에 아래와 같이 추가하면 된다.

To enable least connections balancing method, add the parameter least_conn to your upstream section as shown in the example below.

upstream backend { least_conn; server 10.1.0.101; server 10.1.0.102; server 10.1.0.103; }

 

라운드로빈과 최소연결 밸런싱 방식은 평등함을 추구하는 방식이지만 세션을 지속적으로 제공하지는 않는다.

 

ip hashing 방식을 사용하는 경우에 사요자의 IP 주소는 키로 사용된다. 또한 이전 연결에 대하여 같은 서버의 처리시간을 유도한다.

upstream backend { ip_hash; server 10.1.0.101; server 10.1.0.102; server 10.1.0.103; }

 

로드밸런싱 방식에서 가중치를 두어서 로드밸런싱 방식을 처리하고 싶다면 weight 인자를 주어서 처리하면 된다.

upstream backend { server 10.1.0.101 weight=4; server 10.1.0.102 weight=2; server 10.1.0.103; }

 

 

Health Check [ Advanced Method ]

max_fails 와 fail_timeout 을 사용하여 relay 를 유도하는 방식이다.

upstream backend { server 10.1.0.101 weight=5; server 10.1.0.102 max_fails=3 fail_timeout=30s; server 10.1.0.103; }

 

 

 

https://upcloud.com/community/tutorials/configure-load-balancing-nginx/

 

How to configure load balancing using Nginx

Load balancing is an excellent way to scale out your application to increase its performance and redundancy. Here's how to set up load balancing with Nginx.

upcloud.com

 

 

 

728x90

:1,$ /[a-z0-9]/p

이렇게 하면 원하는 문자열을 찾습니다. 노란색인가? 음영으로 되구요.

저 노란색으로(찾아진 문자열)된것만 따로 문서화일로 보내거나

노란색이 안된(원치않는 문자열등)것은 vi 자체내에서 삭제를 하고 싶습니다.

치환,찾기,삭제는 알겠는데, 도저히 머리를 써도 꽁수가 없네요 ㅠㅠ

가르침을 주세요 ㅠㅠ

Forums: 

 

 

특정 패턴이 [b]있는[/b] 줄을 모두 지우려면..[code:1]&

글쓴이: cdpark / 작성시간: 목, 2005/02/24 - 6:03오후

특정 패턴이 있는 줄을 모두 지우려면..
:g/pattern/d

특정 패턴이 없는 줄을 모두 지우려면..
:v/pattern/d

혹은 grep, sed 등의 프로그램을 사용해서도 원하는 걸 할 수도 있습니다.

자세한 옵션은 언제나 그렇듯이 RTFM!

 

:%s/[^0-9a-z]//g

글쓴이: impactbar / 작성시간: 금, 2005/02/25 - 12:10오전

:%s/[^0-9a-z]//g

 

 

특정패턴만 추출하고 싶은데..

글쓴이: 익명 사용자 / 작성시간: 목, 2012/02/09 - 3:50오후

찾고자 하는 특정 패턴이 [0-9a-z] 같은 경우가 아니라
[p]\+[a]\+[th]\+[="]\+[a-zA-Z0-9/"]\+ <--- 이것처럼 복잡한 경우에는 어떻게 해야하나요 ?

찾고자 하는 문자열(highlight된 영역)을 제외하고 나머지 부분을 모두 삭제,
또는 찾고자 하는 문자열만 화면에 띄우고 싶은데
사용할일은 엄청 많을것 같은데 방법을 모르겠네요.

 

 

제가 쓰는 방법입니다

글쓴이: garam111 / 작성시간: 금, 2012/02/10 - 7:33오전

한 줄에 한번만 나온다면
:%s/\(.*\)\(pattern\)\(.*\)/g

여러번 나올 수 있다면
:%s/pattern/\r&\r/g
:v/pattern/d

===================================
행동할 때 열정은 자라난다.

 

 

제가 쓰는 방법입니다

글쓴이: garam111 / 작성시간: 금, 2012/02/10 - 7:33오전

한 줄에 한번만 나온다면
:%s/\(.*\)\(pattern\)\(.*\)/g

여러번 나올 수 있다면
:%s/pattern/\r&\r/g
:v/pattern/d

===================================
행동할 때 열정은 자라난다.

 

오타 정정합니다

글쓴이: garam111 / 작성시간: 금, 2012/02/10 - 7:36오전

한 줄에 한번만 나온다면
:%s/\(.*\)\(pattern\)\(.*\)/\2/g

===================================
행동할 때 열정은 자라난다.

 

 

:%s/.*\(pattern\).*/\1/g

글쓴이: Prentice / 작성시간: 토, 2012/02/11 - 12:01오후

:%s/.*\(pattern\).*/\1/g

728x90

Environment

  • Red Hat Enterprise Linux
  • 네트워크 서비스

Issue

  • 갑자기 특정 포트에 바인딩되는 일부 프로그램들이 포트예약 충돌때문에 시작할 수가 없습니다.
  • 해당 포트에 대한 telnet 명령은 소켓이 열려있는 것을 보여 주지만 프로세스는 특정되지 않습니다.
  • 다음과 같이 "PID / Program Name"열에 대시 (-)가 표시됩니다.

Resolution

  • 'root'사용자로 'netstat'명령을 실행하십시오.

  • 일반적으로 사용자가 옵션 'e'에서 netstat를 사용하면 프로세스의 UID 및 Inode가 표시됩니다.

728x90

I can’t SSH out on my Kali Linux machine

Ask Question

Asked 1 year ago

Active 9 months ago

Viewed 2k times

1

I have 2 VPS in DigitalOcean. I was able to SSH into them with password before today. But now, when I try to SSH with my machine which is Kali Linux, after type the password, I get this response:

packet_write_wait: Connection to X.X.X.X port 22: Broken pipe

I tried to add SSH key of my machine (I am not sure did it right) but no success. I know the problem is in Kali because I can SSH into with my other machine which is Windows.

What can be the problem?

linux ssh kali-linux

share

 

 

 

improve this question

edited Nov 28 '18 at 16:25

JakeGould

35.1k1010 gold badges112112 silver badges152152 bronze badges

asked Sep 6 '18 at 13:14

Eren Koçak

1433 bronze badges

  • 1

    I'm having the same problem when trying to push code to Gitlab over SSH. It only started happening a couple of days ago. I fixed it by using Git over HTTPS, but I don't know what the cause of the problem is. Hopefully, someone will be able to figure it out. For the record, I'm using Manjaro Linux with all the latest updates installed. – Cromulent Sep 6 '18 at 13:30

  •  

    I suspected from some configuration or environment variables on my machine after checking ssh logs. The connection is actually opening but closed immediately after. So I thought give it a change to connect using something differentthan regular terminal. I tried yakuake but no succes. Then I tried Putty and that worked. However I have still no idea of the main cause of the problem – Eren Koçak Sep 7 '18 at 20:26 

add a comment

1 Answer

activeoldestvotes

2

I had the exact same problem in Kali and Parrot distros and have been looking for a solution for quit some time.

I was able to fix it by adding this to my ssh_config or ~/.ssh/config file:

IPQoS reliability

I hope this helps for you also...

+ Recent posts